Mungkin dukungan GitHub untuk kunci penerapan adalah yang Anda cari? Mengutip halaman itu:
Kapan saya harus menggunakan kunci penerapan?
Sederhana, jika Anda memiliki server yang membutuhkan akses tarik ke satu repo pribadi. Kunci ini dilampirkan langsung ke repositori, bukan ke akun pengguna pribadi.
Jika itu yang sudah Anda coba dan itu tidak berhasil, Anda mungkin ingin memperbarui pertanyaan Anda dengan lebih detail tentang URL yang digunakan, nama dan lokasi file kunci, dll.
Sekarang untuk bagian teknis: Bagaimana cara menggunakan kunci SSH Anda dengan Jenkins?
Jika Anda memiliki, katakanlah, jenkins
pengguna unix, Anda dapat menyimpan kunci penerapan Anda di ~/.ssh/id_rsa
. Ketika Jenkins mencoba untuk mengkloning repo melalui ssh, ia akan mencoba menggunakan kunci itu.
Dalam beberapa penyiapan, Anda tidak dapat menjalankan Jenkins sebagai akun pengguna sendiri, dan mungkin juga tidak dapat menggunakan lokasi kunci ssh default ~/.ssh/id_rsa
. Dalam kasus seperti itu, Anda dapat membuat kunci di lokasi berbeda, misalnya ~/.ssh/deploy_key
, dan mengonfigurasi ssh
untuk menggunakannya dengan entri di ~/.ssh/config
:
Host github-deploy-myproject
HostName github.com
User git
IdentityFile ~/.ssh/deploy_key
IdentitiesOnly yes
Karena semua yang Anda autentikasi ke semua repositori Github menggunakan git@github.com
dan Anda tidak ingin kunci di atas digunakan untuk semua koneksi Anda ke Github, kami membuat alias host github-deploy-myproject . URL klon Anda sekarang menjadi
git clone github-deploy-myproject:myuser/myproject
dan itu juga yang Anda masukkan sebagai URL repositori ke Jenkins.
(Perhatikan bahwa Anda tidak boleh meletakkan ssh: // di depan agar ini berfungsi.)