系列目錄html
前面講自由式任務的時候,咱們能夠看到經過自由式job裏提供的圖形界面配置git拉取很是方便的,實際上使用PipeLine也並不複雜.這一節咱們展現一下如何在PipeLine任務中拉取git倉庫代碼.node
node{ stage("check out"){ git credentialsId: '3c210def-c000-4e2a-9b2d-838986a6b172', url: 'https://github.com/mrtylerzhou/gitShow.git' } }
以上代碼很是簡單,經過使用git關鍵字,配置credentialsId
和url
後Jenkins就能夠拉取遠程git倉庫代碼了.Url很好理解,即爲遠程倉庫的地址.這裏比較費解的是credentialsId
是什麼,如何設置它?其實也很是簡單,前面講自由式任務的時候咱們講過如何在jenkins裏添加添加一個git用戶名和密碼,這裏的credentialsId
即爲咱們建立的包含用戶名和密碼的用戶信息的id(這個id是jenkins自動生成的)這裏經過這個id,Jenkins即可以找到這個用戶名和密碼.git
要建立一個用戶名和密碼也不是很是複雜,咱們在Jenkins主面板左側導航面板裏找到Credentials
,點擊進入,即可以看到如下一個面板github
這裏左側Credentials
下面有一個System
咱們點擊一下,此時面板中央位置以下圖ssh
咱們點擊這個連接進入,此時左側會出現一個添加Credentials
按鈕函數
點擊便會出現一個能夠設置用戶名和密碼的界面url
如上圖示,Kind
使用默認的,添加一個用戶名和密碼.而後添加用戶名和密碼,此時id能夠手輸入,若是留空則Jenkins會自動生成一個.Description爲一個簡短描述,用戶名和密碼不少時方便區分.spa
添加成功後咱們想要看到這條記錄的id,點擊板右側的搬手螺絲刀圖標就能夠看到id了.咱們把這個id複製到 PipeLine裏credentialsId
3d
使用用戶名和密碼容易泄密,實際工做中經常使用ssh方式登錄,這裏對如何生成ssh key,如何在遠程倉庫中添加公鑰再也不贅述,不熟悉的童鞋能夠參考前面章節或者官方幫助文檔以及在互聯網上搜索相關材料.這裏介紹下如何把ssh 私鑰添加到Jenkins裏,以便Jenkins使用ssh鏈接遠程倉庫.code
添加私鑰相似以上添加用戶名密碼,只是添加用戶名密碼時Kind
選項使用的是默認的選擇,這裏Kind
下拉一下,選擇SSH username with private key
,用戶名即爲你的git帳戶用戶名,private key
勾選Enter directly
把咱們本機的私鑰添複製到框裏面.
須要注意的是ssh和http地址是不同的,必定要注意.
Jenkins默認會的把項目拉到Jenkins安裝目錄下Workspace+項目名
的目錄下面,不少時候因爲一些緣由咱們可能但願改變這一行爲,把項目拉到自定義的一個目錄下面,這時候可使用dir
函數,而後把要執行的代碼寫在dir
函數代碼塊內.示例代碼以下
node{ stage("check out"){ dir("projdir"){ git credentialsId: '3c210def-c000-4e2a-9b2d-838986a6b172', url: 'https://github.com/mrtylerzhou/gitShow.git' } } }
以上語句執行後,能夠看到jenkins會把代碼拉到Workspace+項目名+projdir
的目錄下,固然也能夠指定絕對路徑.