簡體   English   中英

Git 使用用戶和密碼在 jenkins 管道中檢出外部項目

[英]Git checking out external project in jenkins pipeline using user and password

閱讀此答案從 jenkins 管道檢出外部項目的方式如下:

git branch: 'master',
    credentialsId: '12345-1234-4696-af25-123455',
    url: 'ssh://git@bitbucket.org:company/repo.git'

該帖子的作者還說:

如果您使用的是 ssh url 那么您的憑據必須是用戶名 + 私鑰。 如果您使用的是 https 克隆 url 而不是 ssh,那么您的憑據應該是用戶名 + 密碼。

但是,不完全清楚第二種情況是如何工作的(https URL 和用戶名 + 密碼)......在這種情況下creadentialsId使用哪種語法? 或者該字段未使用而其他字段用於指定用戶名和密碼? 有人可以提供一個例子嗎?

謝謝!

通過以下方式將用戶名和密碼存儲在 Jenkins 上:

https://www.jenkins.io/doc/book/using/using-credentials/

添加新的全局憑證要將新的全局憑證添加到您的 Jenkins 實例:

如果需要,請確保您已登錄到 Jenkins(作為具有憑據 > 創建權限的用戶)。 從 Jenkins 主頁(即 Jenkins 經典 UI 的儀表板),單擊管理 Jenkins > 管理憑證。 圖像

在右側范圍為 Jenkins 的商店下,單擊 Jenkins。圖片

在系統下,單擊全局憑據(無限制)鏈接以訪問此默認域。 圖像

單擊左側的添加憑據。 注意:如果此默認域中沒有憑據,您還可以單擊添加一些憑據鏈接(與單擊添加憑據鏈接相同)。 從種類字段中,選擇要添加的憑據類型。 從 Scope 字段中選擇: 全局 - 如果要添加的憑證是用於管道項目/項目的。 選擇此選項會將憑證的 scope 應用於管道項目/項目“對象”及其所有后代對象。 系統 - 如果要添加的憑證是用於 Jenkins 實例本身與系統管理功能交互,例如 email 身份驗證、代理連接等。選擇此選項會將憑證的 scope 應用於單個 object僅有的。 將憑據本身添加到您選擇的憑據類型的相應字段中: Secret text - 復制機密文本並將其粘貼到 Secret 字段中。 用戶名和密碼 - 在各自的字段中指定憑據的用戶名和密碼。 秘密文件 - 單擊文件字段旁邊的選擇文件按鈕,將 select 秘密文件上傳到 Jenkins。 SSH 帶私鑰的用戶名 - 在各自的字段中指定憑證用戶名、私鑰和可選密碼。 注意:直接選擇 Enter 允許您復制私鑰的文本並將其粘貼到生成的密鑰文本框中。 證書 - 指定證書和可選的密碼。 選擇上傳 PKCS#12 證書允許您通過生成的上傳證書按鈕將證書作為文件上傳。 Docker 主機證書身份驗證 - 將適當的詳細信息復制並粘貼到客戶端密鑰、客戶端證書和服務器 CA 證書字段中。 在 ID 字段中,指定一個有意義的憑證 ID 值 - 例如,jenkins-user-for-xyz-artifact-repository。 內置(默認)憑證提供程序可以使用大寫或小寫字母作為憑證 ID,以及任何有效的分隔符,其他憑證提供程序可能會對允許的字符或長度應用進一步的限制。 但是,為了您 Jenkins 實例上所有用戶的利益,最好使用單一且一致的約定來指定憑據 ID。 注意:此字段是可選的。 如果不指定其值,Jenkins 會為憑據 ID 分配一個全局唯一 ID (GUID) 值。 請記住,一旦設置了憑據 ID,就無法再更改。 為憑證指定一個可選的描述。 單擊確定以保存憑據

然后,使用上面代碼中 credentialsId 字段中的 ID。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM