jenkins從gitlab拉取代碼


前置條件

1.jenkins安裝了憑證插件Credentials Binding插件Git插件(Git相關的插件都可以裝上,省事)
2.linux服務器安裝了git

憑據類型

根據安裝的插件,會有更多的憑據類型
但常用的憑證類型有:Username with password(用戶密碼)和SSH Username with private key(SSH
密鑰),還有token也很好用

用戶密碼類型(http方式)

新建一個test項目,在源碼管理中選擇Git,從gitlab中將項目的http克隆連接填上

點擊添加jenkins憑據,也可以在系統管理--憑據中添加好了之后直接選擇
選擇"Username with password",輸入Gitlab的用戶名和密碼,點擊"確定"。

選擇剛剛添加的憑據,報錯消失,可以正常使用,應用並保存

測試一下,回到項目中,點擊立即構建,查看構建情況,確認到嗎是否克隆到了jenkins的工作空間

#代碼默認放在/var/lib/jenkins/workspace/下面,可以在jenkins上更改工作空間的位置
[root@jenkins ~]# cd /var/lib/jenkins/workspace/test
[root@jenkins test]# ls
404.html              deviceManager.html       form-validation.html  login.html               readme.md
alerts.html           dianfei.html             images-icons.html     media                    real-time.html
assets                efficiencyAnalysis.html  img                   media.html               sa.html
buttons.html          energy_consumption.html  index.html            messages.html            tables.html
calendar.html         file-manager.html        js                    mstp_105_SuperAdmin.iml  typography.html
charts.html           fonts                    keyInfo.html          mstp_map.html            userMng.html
components.html       form-components.html     labels.html           other-components.html
content-widgets.html  form-elements.html       LICENSE               profile-page.html
css                   form-examples.html       list-view.html        QHME.iml

ssh秘鑰的方式

1.不使用jenkins憑據

在jenkins服務器上生成秘鑰(公鑰和私鑰)
[root@jenkins ~]# ssh-keygen
......

[root@jenkins ~]# ls .ssh/
id_rsa  id_rsa.pub  known_hosts

[root@jenkins ~]# cat .ssh/id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC78Uo/60/2D/vqWoKG6U7+uTlhzmWlu5alOMzT4UwR6z2rPh5HYLKn5LWVovZ4LyCcCo6KkukPYDTIv+WHCTyu6UM+BZqxUt3SJ8cpUN316L69dH6M7awFdGsHWKlISdqdlDNzIf/e8t6ILBK292nb5iqmR7A+HgINAWLdXa0DGO60gSp/jkPrjEKEv7nq7plz8pxhaFaZFyym/xtL7ysESMqDUb0bgVGkvLx6wfnHdG2lJjHs24a2h0z2mpCFUqGztOZkmYELE4qZYHqZHqDe00ShIR+7wb76UV0Bfuo2d+wUbv1Ggm+2jBYIuxFNPe/1XKoYgxuFEXjSjhRuGJ8n root@jenkins

將公鑰中的內容拷貝到gitlab中

jenkins中不使用憑據,直接用ssh,正常構建成功

2.使用jenkins憑據的ssh

#生成秘鑰
[root@jenkins ~]# ssh-keygen

把生成的公鑰放在Gitlab中 以root賬戶登錄->點擊頭像->Settings->SSH Keys
復制剛才id_rsa.pub文件的內容到這里,跟之前一樣

唯一的區別是指jenkins中配置ssh憑證

#將私鑰中的內容復制到jenkins
[root@jenkins ~]# cat .ssh/id_rsa
-----BEGIN RSA PRIVATE KEY-----
MIIEogIBAAKCAQEAu/FKP+tP9g/76lqChulO/rk5Yc5lpbuWpTjM0+FMEes9qz4e
R2Cyp+S1laL2eC8gnAqOipLpD2A0yL/lhwk8rulDPgWasVLd0ifHKVDd9ei+vXR+
jO2sBXRrB1ipSEnanZQzcyH/3vLeiCwStvdp2+YqpkewPh4CDQFi3V2tAxjutIEq
f45D64xChL+56u6Zc/KcYWhWmRcspv8bS+8rBEjKg1G9G4FRpLy8esH5x3RtpSYx
7NuGtodM9pqQhVKhs7TmZJmBCxOKmWB6mR6g3tNEoSEfu8G++lFdAX7qNnfsFG79
RoJvtowWCLsRTT3v9VyqGIMbhRF40o4UbhifJwIDAQABAoIBAG5Rmzjb4mrYRRHy
IO4aIxFoHiOoKIhZDXtcVPcGJ0XZZLCQ3Ose+p+Mo337U1uGpkiR9cunooAxA6rW
4V8bb/Bn4d2VIpF1x9klGkXJPxCqltPUfrgwhqoJBQ4h3/QbzeRzaqPpUC1JOJCL
9kxJ/GxktaI3MF+185Q4vRSdeQH4bWkVPesLMgcrFJ6o6qTInrb8aVIIRbvsBY7l
eoK4OZM9/w96tGakEpWq+Uej1DQtNIQlvWjc1oZoxJmTbPEtsptzXSs25+tpG19S
jFeDM0GPP667zcOZm3Ty0hS5BcZCwMlb32+S3qX34Zy9hhobRWITlWzeIGD92QSf
yR3HrTECgYEA7BNkWRzujQaMEdADsvvoY+dk7/Q0gI41VTuRHjXLQhG0VDOonGXX
OT8232TY0gxjsrXJ5PxgMhYqMZNyOfSdvKNq+daO1WZ5x8nCn3muld7G5Ds4slBK
eqYBvovqmWVgbrEUPrtz1jKgBxYkxy2jKAvuOIjuPAL00wwKRqKOMQkCgYEAy83w
5ZZInEepqRWyWV/Mwy1bYcH+Kty08GAW+3RrVvJiFYCASeL8i686C/9IthF5Wdcn
2eAdvilsEROv1n9+R/A05BsuT+z4bPgT6agCNxbYEaV4cExwbO0PtPtbuIIwpO+w
9RooaWw9uk8SxFU+6M3C6JIX5WB9pYNFNGuUyq8CgYAeZSjIaHc2ZR9ns7amNtTm
+AYA9xpDawvm23KFxztSWGE1bilJabtaPY9dF+jqsnmrqshB2VSxXjU0iN1uJNai
URAW9s8RHs6TMKEEU3BtD2/gNtfH7ZqJTBJxbCZadbkCx33pzczOSVpdTzaRBok5
QL/9O3Qg+eh3u9ce3RMdsQKBgEfwKJERrA2l6ggqBWswuplGQFRQYoQEpcWXVWVq
4ZyuL9sBIcdy3Mv9jRLBCIxjvJ7uqD1qs3T1MBUTCuU+2XdRHYpK4d0Ke2ITawv1
5tpFMP2Bl/KjuKdqQjoS43xMUBlYFfFeS1dzApLp6Gju4ibQwnTPZKntlkw++sWX
F803AoGAGxhzfDbyN+VfGRaFzPad7wcMsV4DlcMfFqY+He9sZUWYDx7kKR0afLlX
I2F6Tss00TeEJWKQKWovCtOaIs+1QjtT7AhwcLPuYjSTvaQTdNYqvc1zG3hHo7tX
lnFs+QferzqHIGCkmmfPWsAuF0EdMhmi7sN9dCZ6SpFWxtKCmYA=
-----END RSA PRIVATE KEY-----



免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM