GNU/Linux >> Belajar Linux >  >> Linux

Cara Mengkloning Repositori Git dengan Ansible

Saat mengonfigurasi server jarak jauh dengan Ansible, Anda mungkin menemukan contoh di mana Anda perlu mendapatkan file dari repositori Git. Ini bisa berupa paket perangkat lunak dari repositori publik atau file konfigurasi di repositori pribadi.

Untuk mengkloning git repo dari jarak jauh menggunakan Ansible, Anda dapat menambahkan entri seperti ini ke Playbook Anda.

---
 - hosts: all
   tasks:
   - name: Clone a github repository
     git:
       repo: https://github.com/sqlite/sqlite.git
       dest: /home/debian/repos/
       clone: yes
       update: yes

Jangan khawatir. Saya akan menjelaskan apa arti parameter tersebut dan bagaimana melakukannya dengan contoh tutorial.

Mengkloning repositori Git dengan Ansible

Saya kira Anda sudah terbiasa dengan dasar-dasar Ansible seperti inventaris, buku pedoman, dll. Jika belum, Anda dapat mengikuti seri tutorial Ansible kami.

Prasyarat

Anda harus menginstal Ansible di mesin lokal Anda. Instance Ansible ini bertindak sebagai node kontrol untuk semua host jarak jauh. Dengan menggunakan node kontrol, Anda dapat membuat buku pedoman dan tugas untuk dijalankan pada mesin jarak jauh yang ditentukan.

Jika Anda memilih untuk mengikuti tutorial ini, pastikan Anda memiliki:

  1. Satu node kontrol dan satu host jarak jauh.
  2. Pasangan kunci SSH. Kunci publik dari simpul kontrol harus tersedia dalam file otor_keys di host jarak jauh.
  3. Pengguna non-root dengan sudo hak istimewa pada host jarak jauh.
  4. Akses tulis ke direktori pada host jarak jauh untuk menyimpan konten repo kloning.

Menyiapkan Inventaris yang Mungkin

Sebelum melangkah lebih jauh, Anda perlu menyiapkan inventaris Ansible. Inventaris Ansible adalah file yang berisi informasi tentang server jarak jauh yang ingin Anda kelola dengan Ansible.

Secara default, file terletak di /etc/ansible/hosts . Buat file ini secara manual jika tidak keluar.

Tambahkan alamat IP dari remote host di file ini:

vim /etc/ansible/hosts

Ini bisa terlihat seperti ini:

Simpan file.

Mengkloning Repositori Git dengan playbook Ansible

Sekarang setelah Anda memiliki file inventaris yang dikonfigurasi dan kunci SSH untuk mengakses host jarak jauh dari node kontrol, Anda dapat membuat Ansible Playbook.

Menggunakan editor teks seperti Vim dan membuat file YAML.

vim clone.yaml

Edit file dan tambahkan entri berikut.

---
 - hosts: all
   tasks:
   - name: Clone a github repository
     git:
       repo: https://github.com/sqlite/sqlite.git
       dest: /home/debian/repos/
       clone: yes
       update: yes

Dalam buku pedoman di atas, Anda memulai dengan mendefinisikan tugas baru dan memberinya nama “Kloning repositori GitHub".

Selanjutnya, Anda menggunakan git modul untuk menentukan tautan ke repositori SQLite GitHub.

Anda kemudian melanjutkan untuk menentukan tujuan untuk repositori kloning. Ini adalah direktori lokal di mesin jarak jauh.

Anda menyetel klon atribut ke yes untuk mengkloning repositori dan memperbaruinya menggunakan atribut update.

Untuk menjalankan playbook, gunakan perintah:

ansible-playbook clone.yaml

Jika playbook gagal karena otentikasi SSH, Anda dapat menentukan nama pengguna menggunakan flag -u sebagai:

ansible-playbook -u debian clone.yaml

Setelah tugas dijalankan, Anda harus memiliki repositori yang dikloning di direktori yang ditentukan.

Anda dapat masuk ke host jarak jauh untuk memverifikasi bahwa repositori telah dikloning dengan benar:

Ini akan memberi Anda ide yang layak tentang mengkloning repositori Git dengan Ansible. Dengan informasi ini, Anda seharusnya dapat menggunakan repo Git dengan Ansible berdasarkan kebutuhan Anda.

Jika Anda memiliki beberapa pertanyaan atau saran, silakan tinggalkan komentar di bawah.


Linux
  1. Cara:Memulai dengan Ansible

  2. Cara Mengganti Nama Cabang Git Lokal dan Jarak Jauh

  3. Cara mengambil banyak file dari mesin jarak jauh ke lokal dengan Ansible

  1. Cara menginstal paket perangkat lunak dengan playbook Ansible

  2. Cara Menginstal Ansible di Debian 9 Stretch

  3. Bagaimana mengelola repositori dengan Git

  1. Cara Menginstal Git di CentOS 7 Dengan Yum atau Repositori Terbaru

  2. Cara Mengkloning Repositori Git Ke Folder Tertentu

  3. Bagaimana Cara Cd Otomatis Setelah Git Clone?