Jenkins Integrasi GitHub: Bagaimana Cara Menginstal Plugin Git?

⚡ Ringkasan Cerdas

Jenkins Integrasi GitHub menghubungkan server otomatisasi ke repositori sumber sehingga setiap commit dapat dibangun dan diverifikasi secara otomatis. Menginstal plugin Git, membuat job Freestyle, melakukan autentikasi dengan token, dan mendaftarkan webhook melengkapi koneksi tersebut.

  • 🔌 Plugin Foundation: Jenkins Perangkat lunak ini hadir dengan fitur minimal, sehingga dukungan pihak ketiga tersedia melalui plugin yang diinstal dari menu Kelola. Jenkins Halaman plugin.
  • 🌿 Plugin Git vs GitHub: Plugin Git menyediakan Kode Sumber. Code Opsi manajemen yang mengkloning repositori; plugin GitHub menambahkan penanganan webhook dan pelaporan status commit.
  • ???? Git lokal diperlukan: Jenkins mendelegasikan proses kloning ke executable Git di host, sehingga instalasi lokal yang hilang akan menghasilkan repositori. URL Kesalahan validasi.
  • 🔑 Autentikasi Token: GitHub berhenti menerima kata sandi akun untuk operasi Git pada Agustus 2021, sehingga repositori pribadi memerlukan token akses pribadi atau kunci SSH.
  • 🪝 Pemicu Otomatis: Webhook repositori yang mengarah ke Jenkins Endpoint github-webhook memulai proses build setiap kali ada push, bukan menjalankannya secara manual.
  • 🧾 Verifikasi: Menjalankan git –version memastikan bahwa file yang dapat dieksekusi berhasil diakses, dan Manage Jenkins Alat tersebut mencatat jalurnya.
  • ️ Pemulihan Kegagalan: Sumber yang Hilang Code Opsi manajemen, kredensial yang ditolak, dan webhook senyap menyebabkan sebagian besar kegagalan integrasi.

Jenkins Integrasi GitHub

Anda sudah mempelajari apa Jenkins adalah dan bagaimana caranya pasang di Windows sistemDengan asumsi langkah-langkah dasar tersebut telah selesai, kita sekarang akan beralih ke manajemen plugin.

Jenkins memiliki dukungan plugin yang luar biasa. Lebih dari seribu plugin aplikasi pihak ketiga tersedia. Untuk memeriksa apakah Jenkins Untuk mendukung aplikasi pihak ketiga yang Anda inginkan, cari di direktori plugin di https://plugins.jenkins.io/.

Jenkins Integrasi GitHub

Instalasi Plugin di Jenkins

Jenkins hadir dengan pengaturan yang cukup mendasar, jadi Anda perlu menginstal plugin yang diperlukan untuk mengaktifkan dukungan untuk setiap aplikasi pihak ketiga.

GitHub adalah repositori kode berbasis web yang memainkan peran utama dalam DevOps. Platform ini menyediakan wadah bersama bagi banyak pengembang yang mengerjakan kode atau proyek yang sama untuk mengunggah dan mengambil kode yang diperbarui, sehingga memfasilitasi integrasi berkelanjutan.

Jenkins Plugin Git perlu diinstal sebelum dapat mengambil kode dari repositori GitHub. Kedua nama plugin ini sering membingungkan, jadi tabel di bawah ini memisahkannya:

Plugin Apa yang ditawarkannya Apa yang dibutuhkan untuk panduan ini?
Plugin Git The pergi opsi di bawah Sumber Code Manajemen, kloning repositori, dan pemilihan cabang Ya — ini yang paling penting
Plugin GitHub Penanganan webhook, Pemicu hook GitHub opsi, dan status build dilaporkan kembali ke commit Hanya untuk pemicuan otomatis

Anda tidak perlu menginstal plugin ini jika Anda sudah menerima plugin yang disarankan sebelumnya. Jenkins Pengaturan instalasi, karena plugin Git merupakan bagian dari pengaturan tersebut. Jika tidak, berikut cara menginstalnya dan mengambil kode dari repositori GitHub.

Cara Menginstal Plugin Git di Jenkins

Berikut adalah proses langkah demi langkah tentang cara menginstal plugin Git di Jenkins:

Langkah 1: Buka dasbor Anda.
Klik pada Mengelola Jenkins tombol pada Anda Jenkins dasbor:

Instal Plugin Git di Jenkins

Langkah 2: Cari opsi plugin.
Klik pluginSaat ini Jenkins rilis entri ini diberi label sederhana plugin; rilis lama diberi label layar yang sama Kelola Plugin.

Instal Plugin Git di Jenkins

Langkah 3: Di halaman Plugin, buka Plugin yang tersedia tekan tab lalu:

  1. Pilih pergi Plugin
  2. Klik Instal tanpa memulai ulangPlugin ini membutuhkan beberapa saat untuk diunduh, tergantung pada koneksi internet Anda, dan akan diinstal secara otomatis.
  3. Anda dapat memilih alternatif lain. Unduh sekarang dan instal setelah restart., dalam hal ini plugin diterapkan ketika Jenkins selanjutnya dimulai.
  4. Jika plugin sudah terpasang, maka plugin tersebut akan muncul di Dipasang tab tersebut dan tidak ada pembaruan yang ditawarkan.

Instal Plugin Git di Jenkins

Langkah 4: Setelah plugin terpasang, buka Mengelola Jenkins > Plugin > TerinstalPlugin baru Anda akan tercantum di antara plugin lainnya.

Instal Plugin Git di Jenkins

Setelah plugin terpasang, Jenkins Sekarang dapat diarahkan ke repositori yang sebenarnya.

Bagaimana Mengintegrasikan Jenkins Dengan GitHub

Sekarang kita akan membahas proses integrasi. Jenkins dan GitHub pada sebuah Windows sistem:

Langkah 1) Buat pekerjaan baru di Jenkins. Buka Jenkins dasbor Anda Jenkins URL, sebagai contoh http://localhost:8080/, Dan klik New Item:

Mengintegrasikan Jenkins Dengan GitHub

Langkah 2) Masukkan nama item, pilih jenis pekerjaan, dan klik. OK. Kami akan membuat proyek Freestyle sebagai contoh.

Mengintegrasikan Jenkins Dengan GitHub

Langkah 3) Setelah Anda mengklik OKHalaman akan dialihkan ke formulir konfigurasi proyek. Masukkan informasi proyek di sini:

Mengintegrasikan Jenkins Dengan GitHub

Langkah 4) Anda akan melihat pergi pilihan di bawah sumber Code Pengelolaan jika plugin Git telah diinstal di Jenkins:

Mengintegrasikan Jenkins Dengan GitHub

Catatan: Jika pergi Opsi tidak muncul, instal ulang plugin, mulai ulang. Jenkins, dan masuk kembali ke dasbor. Itu pergi Opsi tersebut kemudian akan terlihat seperti yang ditunjukkan di atas.

Langkah 5) Masuk ke repositori Git URL untuk mengambil kode dari GitHub.

Mengintegrasikan Jenkins Dengan GitHub

Langkah 6) Anda mungkin mendapatkan pesan kesalahan saat pertama kali mengakses repositori. URL. Sebagai contoh:

Mengintegrasikan Jenkins Dengan GitHub

Hal ini terjadi ketika Git tidak terinstal pada mesin yang sedang berjalan. Jenkins. Jenkins Plugin ini tidak menyertakan binary Git sendiri; plugin memanggil executable Git pada host. Untuk menginstal Git secara lokal, buka https://git-scm.com/downloads.

Mengintegrasikan Jenkins Dengan GitHub

Unduh penginstal Git yang sesuai untuk Anda. OperaSistem ting — dalam kasus ini Windows — dan menginstalnya pada mesin yang sedang berjalan JenkinsIkuti petunjuk di layar untuk menyelesaikan instalasi.

Mengintegrasikan Jenkins Dengan GitHub

Langkah 7) Jenkins Anda dapat menjalankan repositori Git setelah Git terinstal di mesin. Untuk memastikan instalasi, buka sebuah file. command prompt, Jenis git, lalu tekan Enter. Daftar opsi Git akan muncul:

Mengintegrasikan Jenkins Dengan GitHub

:: Confirm the Git executable resolves and report its version
git --version

:: Expected output
git version 2.51.0.windows.1

:: Show the full path Jenkins should record in Global Tool Configuration
where git

Ini memastikan bahwa Git telah terpasang di sistem Anda.

Catatan: Jika Git sudah terinstal, tambahkan git.exe jalan di bawah Mengelola Jenkins > Alat (berlabel) Konfigurasi Alat Global (pada rilis yang lebih lama).

Langkah 8) Setelah semuanya siap, tambahkan Git. URL ke Jenkins lagi. Tidak ada pesan kesalahan yang muncul, yang menegaskan hal tersebut. Jenkins Integrasi Git:

Mengintegrasikan Jenkins Dengan GitHub

Git kini telah dikonfigurasi dengan benar di sistem Anda. Repositori publik akan dikloning pada tahap ini, tetapi repositori pribadi masih memerlukan kredensial, yang merupakan langkah selanjutnya.

Cara Otentikasi Jenkins Dengan Token Akses Pribadi GitHub

GitHub berhenti menerima kata sandi akun untuk operasi Git pada Agustus 2021. Memberikan nama pengguna dan kata sandi di Jenkins Oleh karena itu, akan gagal terhadap repositori pribadi mana pun yang mengalami kesalahan autentikasi, bahkan ketika kredensial yang sama digunakan untuk masuk ke situs web GitHub. Token akses pribadi menggantikan kata sandi, dan Jenkins menyimpan informasi tersebut di penyimpanan kredensialnya sendiri, bukan di konfigurasi pekerjaan.

Buat token di GitHub terlebih dahulu:

  1. Di GitHub, buka Pengaturan > Pengaturan pengembang > Token akses pribadi.
  2. Pilih berbutir halus Gunakan token jika memungkinkan, karena token tersebut dapat dibatasi pada satu repositori, atau klasik token jika organisasi Anda masih membutuhkannya.
  3. Berikan akses baca ke isi repositori. Tambahkan akses tulis status commit hanya jika Anda menginginkannya. Jenkins untuk melaporkan hasil build kembali ke commit.
  4. Tetapkan tanggal kedaluwarsa dan salin tokennya segera — GitHub menampilkannya tepat satu kali.

Kemudian daftarkan token di dalam Jenkins:

  1. Pergi ke Mengelola Jenkins > Kredensial > Sistem > Kredensial Global dan klik Tambahkan Kredensial.
  2. Pilih Nama pengguna beserta kata sandi sebagai jenisnya. Masukkan nama pengguna GitHub Anda, dan tempelkan token ke dalam kolom kata sandi.
  3. Berikan ID yang jelas pada entri tersebut, misalnya... github-pat sehingga dapat dikenali di layar konfigurasi pekerjaan.
  4. Kembali bekerja, buka sumber Code Manajemen > Git, dan pilih kredensial baru dari Surat kepercayaan dropdown.

Kesalahan validasi berwarna merah di bawah repositori. URL menghilang sekali Jenkins dapat melakukan autentikasi. Dua catatan praktis perlu diingat. Pertama, token kedaluwarsa; pekerjaan yang telah berjalan dengan andal selama berbulan-bulan dan tiba-tiba gagal saat checkout hampir selalu disebabkan oleh token yang kedaluwarsa, bukan karena repositori yang rusak. Kedua, kunci SSH adalah alternatif yang valid — tambahkan kunci pribadi sebagai Nama pengguna SSH beserta kunci pribadi. kredensial dan gunakan git@github.com:owner/repo.git URL formulir alih-alih formulir HTTPS.

Cara Memicu Jenkins Membangun Secara Otomatis dengan Webhook GitHub

Job yang dibuat di atas masih harus dijalankan secara manual, yang menggagalkan tujuan integrasi berkelanjutan. Webhook menutup celah tersebut: GitHub mengirimkan permintaan HTTP ke Jenkins pada setiap dorongan, dan Jenkins Memulai pembangunan segera.

Jenkins Harus dapat diakses dari GitHub agar ini berfungsi. Pada laptop yang menjalankan localhost:8080 bukan, jadi salah satu host Jenkins di depan umum URL atau mengeksposnya sementara melalui layanan tunneling selama pengujian.

  1. Instal plugin GitHub. Kembali ke Mengelola Jenkins > Plugin > Plugin yang tersedia dan instal GitHubIni menambahkan opsi pemicu yang tidak disediakan oleh plugin Git saja.
  2. Aktifkan pemicu pada pekerjaan tersebut. Buka konfigurasi pekerjaan, gulir ke bawah Bangun Pemicu, dan centang Pemicu kait GitHub untuk polling GITScm.
  3. Tambahkan webhook di GitHub. Di repositori, buka Pengaturan > Webhook > Tambah webhook.
  4. Tetapkan muatan URL untuk Anda Jenkins alamat diikuti oleh /github-webhook/Garis miring di akhir kalimat itu penting.
  5. Tetapkan tipe konten untuk application/json Dan pilihlah Hanya peristiwa dorongan.
  6. Simpan dan uji. GitHub mengirimkan ping Segera. Tanda centang hijau di bawah Pengiriman Terbaru cara Jenkins menerimanya.
# Payload URL format for the GitHub webhook
https://jenkins.example.com/github-webhook/

# Content type
application/json

# Verify from the Jenkins host that the endpoint answers
curl -I https://jenkins.example.com/github-webhook/

Lakukan commit untuk memastikan siklus tertutup. Job tersebut akan muncul di antrian build dalam beberapa detik tanpa tindakan manual apa pun. Jika tidak terjadi apa-apa, buka webhook di GitHub dan baca informasinya. Pengiriman Terbaru Kode respons: 403 biasanya mengarah ke Jenkins Pengaturan keamanan memblokir akses anonim ke titik akhir, sementara waktu habis (timeout) berarti GitHub tidak dapat menjangkau titik akhir tersebut. Jenkins URL sama sekali.

Setelah proses build berjalan secara otomatis, hambatan yang tersisa biasanya hanya berupa beberapa kesalahan yang berulang.

Umum Jenkins Kesalahan dan Solusi Integrasi GitHub

Hampir setiap integrasi yang gagal termasuk dalam salah satu kategori di bawah ini, dan masing-masing memiliki gejala khas yang mengarah langsung pada penyebabnya.

  • Tidak ada opsi Git di bawah Source. Code Pengelolaan: Plugin Git belum terpasang atau belum dimuat. Instal ulang dari Mengelola Jenkins > Plugin, mengulang kembali Jenkins, lalu muat ulang halaman konfigurasi pekerjaan.
  • “Gagal terhubung ke repositori” pada repositori publik URL: Git tidak ada di dalamnya Jenkins Instal Git, lalu konfirmasikan dengan host. git --version dan catat jalurnya di bawah Mengelola Jenkins > Alat.
  • Autentikasi gagal pada repositori pribadi: Kata sandi akun sedang digunakan. Ganti dengan token akses pribadi seperti yang dijelaskan di atas, atau beralih ke kunci SSH.
  • Proses build tidak pernah dimulai setelah push: baik Pemicu hook GitHub Kotak centang tidak dicentang, atau GitHub tidak dapat terhubung. Jenkins URLPeriksa log pengiriman webhook di pengaturan repositori.
  • Cabang yang salah telah dibuat: itu Penentu Cabang masih mempertahankan pengaturan default */master sementara repositori menggunakan mainPerbarui penentu agar sesuai.
  • Proses pembayaran berhasil kemarin, tetapi gagal hari ini: Token akses pribadi telah mencapai tanggal kedaluwarsa. Buat token pengganti dan perbarui kredensial yang tersimpan.

Juga Periksa: Terbaik Jenkins Alternatif (Sumber Terbuka & Berbayar) dan Pipa CI/CD panduan langkah demi langkah, yang dibangun berdasarkan hubungan yang telah terjalin di sini.

Pertanyaan Umum Demo Slot

Ya. Plugin Git melakukan kloning dari host Git mana pun, jadi Source Code Langkah-langkah pengelolaannya identik. Hanya konfigurasi webhook yang berbeda, dan GitLab atau Bitbucket Plugin menyediakan pemicu khusus host dan pelaporan status.

Untuk hal-hal di luar demonstrasi, ya. A Jenkinsfile menyimpan pipa saluran definisi di dalam repositori itu sendiri, sehingga langkah-langkah pembuatan diatur versinya dan ditinjau bersama dengan kode, bukan hanya berada di dalam repositori. Jenkins UI.

AI Para asisten merangkum log build yang gagal, mengusulkan commit yang kemungkinan menjadi penyebab masalah, dan menyusun langkah-langkah pipeline dari struktur repositori. RevTinjau setiap saran sebelum menerapkannya, terutama yang berkaitan dengan kredensial.

Tidak. AI mempercepat diagnosis dan pembuatan konfigurasi, tetapi orkestrasi, penjadwalan, dan jejak audit masih memerlukan server pembangunan. Anggap AI sebagai asisten yang ditambahkan di atas Jenkins, bukan penggantinya.

Ya. Polling SCM Di bawah Build Triggers, repositori diperiksa sesuai jadwal menggunakan sintaks cron. Ini berfungsi di balik firewall tetapi membuang-buang permintaan dan menunda proses build, jadi lebih baik gunakan webhook jika diperlukan. Jenkins dapat dijangkau.

Ringkaslah postingan ini dengan: