Code Stream 提供 Jenkins 外掛程式,此外掛程式可觸發建置和測試原始程式碼的 Jenkins 工作。Jenkins 外掛程式可執行測試案例,並且可以使用自訂指令碼。

若要在管線中執行 Jenkins 工作,您可以使用 Jenkins 伺服器,並且在 Code Stream 中新增 Jenkins 端點。然後,您可以建立管線並向其新增 Jenkins 工作。

使用 Code Stream 中的 Jenkins 工作和 Jenkins 端點時,可以在 Jenkins 中建立支援多分支工作的管線。多分支工作包括 Git 存放庫之每個分支中的個別工作。在支援多分支工作的 Code Stream 中建立管線時:

  • Jenkins 工作可以執行位於 Jenkins 伺服器上多個資料夾中的 Jenkins 工作。
  • 您可以覆寫 Jenkins 工作組態中的資料夾路徑,以便其使用不同的資料夾路徑,這將覆寫在 Code Stream 的 Jenkins 端點中定義的預設路徑。
  • Code Stream 中的多分支管線會在 Git 存放庫或 GitHub 存放庫中偵測類型為 .groovy 的 Jenkins 工作檔案,然後開始為存放庫中掃描的每個分支建立工作。
  • 您可以使用 Jenkins 工作組態中提供的路徑來取代 Jenkins 端點中定義的預設路徑,然後執行與主要 Jenkins 工作內的任何分支相關聯的工作與管線。

必要條件

  • 設定執行 1.561 版或更新版本的 Jenkins 伺服器。
  • 確認您是 Code Stream 中的專案的成員。如果您不是成員,請要求 Code Stream 管理員將您新增為專案成員。請參閱如何在 Code Stream 中新增專案
  • 確認 Jenkins 伺服器上存在某個工作,以便管線工作能夠執行此工作。

程序

  1. 新增並驗證 Jenkins 端點。
    1. 按一下端點 > 新增端點
    2. 選取專案,針對端點類型選取 Jenkins。然後,輸入名稱與說明。
    3. 如果此端點是您基礎結構中的業務關鍵元件,請啟用標記為受限制
    4. 輸入 Jenkins 伺服器的 URL。
    5. 輸入用於登入 Jenkins 伺服器的使用者名稱和密碼。然後輸入其餘資訊。
      表 1. Jenkins 端點的其餘資訊
      端點項目 說明
      資料夾路徑 將工作進行分組的資料夾的路徑。Jenkins 可以執行資料夾中的所有工作。您可以建立子資料夾。例如:
      • folder_1 可包含 job_1
      • folder_1 可包含 folder_2 (其中可能包含 job_2)

      針對 folder_1 建立端點時,資料夾路徑為 job/folder_1,且端點僅列出 job_1

      若要取得名為 folder_2 之子資料夾中的工作清單,您必須建立另一個使用資料夾路徑 /job/folder_1/job/folder_2/ 的端點。

      多分支 Jenkins 工作的資料夾路徑 若要支援多分支 Jenkins 工作,請在 Jenkins 工作中輸入包括 Jenkins 伺服器 URL 的完整路徑和完整工作路徑。在 Jenkins 工作中包含資料夾路徑時,該路徑會覆寫 Jenkins 端點中顯示的路徑。透過 Jenkins 工作中的自訂資料夾路徑, Code Stream 僅顯示存在於該資料夾中的工作。
      • 例如:https://server.yourcompany.com/job/project
      • 如果管線還必須觸發主要 Jenkins 工作,則使用 https://server.yourcompany.com/job/project/job/main
      URL Jenkins 伺服器的主機 URL。輸入 protocol://host:port 格式的 URL。例如:http://192.10.121.13:8080
      輪詢間隔 Code Stream 輪詢 Jenkins 伺服器以進行更新的間隔持續時間。
      請求重試計數 針對 Jenkins 伺服器重試已排程的建置請求的次數。
      重試等待時間 針對 Jenkins 伺服器重試建置請求前等待的秒數。
    6. 按一下驗證,並確認端點會連線至 Code Stream。如果無法連線,請更正任何錯誤,然後按一下儲存
      用於建置和測試程式碼的 Jenkins 端點需要 URL,並允許您建立用於儲存使用者密碼的變數。
  2. 若要建置程式碼,請建立管線,並新增使用 Jenkins 端點的工作。
    1. 按一下管線 > 新增管線 > 空白畫布
    2. 按一下預設階段。
    3. 在 [工作] 區域中,輸入工作的名稱。
    4. 選取工作類型為 Jenkins
    5. 選取您建立的 Jenkins 端點。
    6. 從下拉式功能表中,從管線將執行的 Jenkins 伺服器中選取工作。
    7. 輸入工作的參數。
    8. 輸入 Jenkins 工作的驗證 Token。
    設定使用 Jenkins 端點的 Jenkins 工作時,選取 Jenkins 工作,新增值,然後可以輸入 Token。
  3. 啟用和執行管線,並檢視管線執行。
    Jenkins 工作的管線執行會顯示 Jenkins 工作詳細資料,包括工作識別碼、工作 URL 以及工作結果中的索引鍵和值。
  4. 在管線儀表板上查看執行詳細資料和狀態。
    您可以識別任何失敗及失敗原因。您還可以查看有關管線執行持續時間、完成和失敗的趨勢。
    管線儀表板顯示有關管線執行的詳細資料,例如管線執行次數及其持續時間,以及每次執行的狀態。

結果

恭喜您!透過新增端點、建立管線,並設定建置程式碼的 Jenkins 工作,以整合 Code Stream 與 Jenkins。

範例: Jenkins 建置工作的範例 YAML

對於此範例中使用的 Jenkins 建置工作類型,YAML 類似於下列程式碼,其中通知已開啟:

test:
  type: Jenkins
  endpoints:
    jenkinsServer: jenkins
  input:
    job: Add two numbers
    parameters:
      Num1: '23'
      Num2: '23'

下一步

檢閱其他區段以瞭解更多資訊。請參閱將 Code Stream 連線至端點