บางทีการสนับสนุน GitHub สำหรับการปรับใช้คีย์คือสิ่งที่คุณกำลังมองหา? ในการอ้างอิงหน้านั้น:
ฉันควรใช้คีย์การปรับใช้เมื่อใด
ง่ายเมื่อคุณมีเซิร์ฟเวอร์ที่ต้องการดึงการเข้าถึงไปยัง repo ส่วนตัวเดียว คีย์นี้แนบโดยตรงกับที่เก็บแทนที่จะเป็นบัญชีผู้ใช้ส่วนบุคคล
หากนั่นคือสิ่งที่คุณพยายามแล้ว แต่ไม่ได้ผลคุณอาจต้องการอัปเดตคำถามของคุณด้วยรายละเอียดเพิ่มเติมเกี่ยวกับ URL ที่ใช้ชื่อและตำแหน่งของไฟล์สำคัญ ฯลฯ
ตอนนี้สำหรับส่วนทางเทคนิค: จะใช้คีย์ SSH กับ Jenkins ได้อย่างไร?
หากคุณมีการพูดการใช้ยูนิกซ์คุณสามารถเก็บกุญแจสำคัญในการปรับใช้ในjenkins
~/.ssh/id_rsa
เมื่อ Jenkins พยายามโคลน repo ผ่าน ssh ก็จะพยายามใช้คีย์นั้น
ในการตั้งค่าบางอย่างคุณไม่สามารถเรียกใช้ Jenkins เป็นบัญชีผู้ใช้ของตัวเองและอาจไม่สามารถใช้ตำแหน่งคีย์ ssh เริ่มต้น~/.ssh/id_rsa
ได้ ในกรณีเช่นนี้คุณสามารถสร้างคีย์ในตำแหน่งที่ตั้งอื่นเช่น~/.ssh/deploy_key
และกำหนดค่าssh
เพื่อใช้กับรายการใน~/.ssh/config
:
Host github-deploy-myproject
HostName github.com
User git
IdentityFile ~/.ssh/deploy_key
IdentitiesOnly yes
เพราะสิ่งที่คุณรับรองความถูกต้องทั้งหมดที่เก็บ Github ใช้git@github.com
และคุณไม่ต้องการที่สำคัญดังกล่าวข้างต้นที่จะใช้สำหรับการเชื่อมต่อทั้งหมดของคุณไป Github เราได้สร้างโฮสต์นามแฝงGitHub ปรับใช้-MyProject URL โคลนของคุณกลายเป็น
git clone github-deploy-myproject:myuser/myproject
และนั่นคือสิ่งที่คุณใส่เป็นURL ที่เก็บไว้ใน Jenkins
(โปรดทราบว่าคุณต้องไม่ใส่ssh: //ข้างหน้าเพื่อให้สิ่งนี้ทำงานได้)