透過 Code Stream,可以在 Gerrit 專案中進行代碼檢閱時觸發管線。適用於 Gerrit 的觸發器定義包括 Gerrit 專案和必須針對不同事件類型執行的管線。
適用於 Gerrit 的觸發器在將要監控的 Gerrit 伺服器上使用 Gerrit 接聽程式。若要在 Code Stream 中定義 Gerrit 端點,您可以選取專案,並輸入 Gerrit 伺服器的 URL。然後,在該伺服器上建立 Gerrit 接聽程式時指定端點。
如果在已啟用 FIPS 的 vRealize Automation 執行個體中將 Gerrit 伺服器用作 Code Stream 端點,則必須確認您的 Gerrit 組態檔是否包含正確的訊息驗證金鑰。如果 Gerrit 伺服器組態檔不包含正確的訊息驗證金鑰,則伺服器無法正確啟動,並顯示此訊息:PrivateKey/PassPhrase is incorrect
以下程序說明如何定義可在 Gerrit 接聽程式定義中使用的 Gerrit 端點。如果需要編輯端點,程序結束時會有一個可選步驟說明如何以及何時執行更新。
必要條件
- 確認您可以存取打算連線的 Gerrit 伺服器。
- 確認您是 Code Stream 中的專案的成員。如果您不是成員,請要求 Code Stream 管理員將您新增為專案成員。請參閱如何在 Code Stream 中新增專案。
程序
- 定義 Gerrit 端點。
- 按一下,然後按一下新增端點。
- 選取專案,針對端點類型選取 Gerrit。然後,輸入名稱與說明。
- 如果此端點是您基礎結構中的業務關鍵元件,請啟用標記為受限制。
- 輸入 Gerrit 伺服器的 URL。
若要使用預設連接埠,您可以提供帶有 URL 的連接埠號碼或將該值留空。
- 輸入 Gerrit 伺服器的使用者名稱和密碼。
如果必須加密密碼,請按一下
建立變數,然後選取類型:
- 密碼。當具有任何角色的使用者執行管線時,密碼即會解析。
- 受限制。當具有管理員角色的使用者執行管線時,密碼即會解析。
對於值,請輸入必須是安全的密碼,例如 Jenkins 伺服器的密碼。
- 對於私密金鑰,輸入用於安全存取 Gerrit 伺服器的 SSH 金鑰。
此金鑰是位於
.ssh 目錄中的 RSA 私密金鑰。
- (選擇性) 如果複雜密碼與私密金鑰相關聯,請輸入複雜密碼。
若要加密複雜密碼,請按一下
建立變數並選取類型:
- 密碼。當具有任何角色的使用者執行管線時,密碼即會解析。
- 受限制。當具有管理員角色的使用者執行管線時,密碼即會解析。
對於值,請輸入必須是安全的複雜密碼,例如 SSH 伺服器的複雜密碼。
- 按一下驗證,然後確認 Code Stream 中的 Gerrit 端點是否連線至 Gerrit 伺服器。
如果無法連線,請更正任何錯誤,然後再次按一下
驗證。
- 按一下建立。
- 確認 vRealize Automation 環境是否已啟用 FIPS,或者是否透過 Jenkins 工作使用 Jenkins URL 建立已啟用 FIPS 的環境。
- 若要從命令列執行命令,請透過 SSH 連線至 vRealize Automation 8.x 應用裝置,並以 root 使用者身分登入。例如,透過連接埠 22、5480 或 443 連線至完整網域名稱 URL,例如 https://cava-1-234-567.yourcompanyFQDN.com。
- 若要檢查 vRealize Automation 上的 FIPS,請執行命令 vracli security fips。
- 確認命令是否傳回
FIPS mode: strict
。
- 如果您的 Gerrit 伺服器是已啟用 FIPS 的 vRealize Automation 執行個體中的端點,請確保您的 Gerrit 組態檔包含正確的訊息驗證 (MAC) 金鑰。
- 開啟 Gerrit 並建立 SSH 金鑰配對。
- 在 '$site_path'/etc/gerrit.config 中找到 Gerrit 伺服器組態檔。
- 確認 Gerrit 伺服器組態檔是否包含一或多個訊息驗證碼 (MAC) 金鑰 (
hmac-MD5
除外)。
備註: 在 FIPS 模式中,
hmac-MD5
不是支援的 MAC 演算法。若要確保 Gerrit 伺服器正確啟動,Gerrit 伺服器組態檔必須排除此演算法。如果 Gerrit 伺服器未正確啟動,會顯示此訊息:
PrivateKey/PassPhrase is incorrect
啟用了以加號 (+) 開頭的受支援訊息驗證碼 (MAC) 金鑰名稱。從預設 MAC 清單中移除了以連字號 (-) 開頭的 MAC 金鑰名稱。依預設,在
Code Stream 中針對 Gerrit 伺服器提供了以下支援的 MAC:
hmac-md5-96
hmac-sha1
hmac-sha1-96
hmac-sha2-256
hmac-sha2-512
- (選擇性) 更新 Gerrit 端點 (例如變更 URL 或私密金鑰) 之前,請檢查該端點是否已連線到 Gerrit 接聽程式。