身為 Code Stream 管理員,您可以共用管線,以便組織內的使用者可以在任何其他專案上執行這些管線,或將這些管線新增為其他專案的管線中的巢狀工作。

為什麼共用管線非常有用

共用管線時,無需為組織內的不同專案建立相同的管線。此外,如果您更新共用管線,所有管線使用者都將具有相同的更新。

另外,還可以在 Service Broker 中使用共用管線。Service Broker 管理員可以將共用管線新增為目錄項目,以供使用者在多個專案上請求並執行。

只有 Code Stream 管理員才能共用或停止共用管線。

如何共用管線

若要共用管線,請按一下管線,然後選取要共用的管線。

  1. 按一下動作 > 在專案之間共用
  2. 如果管線處於停用狀態,則按一下動作 > 啟用
  3. (選擇性) 若要使共用管線在 Service Broker 中可用,請按一下動作 > 發佈

    發佈管線後,Service Broker 管理員可以將其新增到 Service Broker。請參閱〈將 Code Stream 管線新增至 Service Broker 目錄〉

如何執行共用管線

若要執行共用管線,請選取管線並選取專案。

管線在您選取的專案內容中執行,並且僅共用管線模型。不會共用管線中使用的任何基礎結構,例如端點或變數。如果使用端點或變數的共用管線在其他專案上執行,則這些端點和變數必須在該專案上可用。

例如,假設 jenkinsPipeline 使用 projectA 且包含一個端點名為 jenkinsEndpoint 的工作。

執行共用管線之前,檢查管線是否包含在其他專案中執行管線所需的內容。

如果共用 jenkinsPipeline 並希望在 projectB 環境中執行該管線,則 projectB 上必須具有 jenkinsEndpoint。如果沒有 jenkinsEndpoint,請在執行共用管線之前在 projectB 上建立該端點。

以下程序說明了如何在其他專案上複製端點。對於變數,可以執行類似的步驟。

  1. 按一下端點。在要複製的端點 (例如 jenkinsEndpoint) 上,按一下動作 > 匯出
  2. 按一下匯入按鈕,然後選取 jenkinsEndpoint 的 YAML 檔案。
  3. 編輯該檔案以變更專案,例如,在以下範例 YAML 代碼中變更為 projectB
    ---
    project: projectB
    kind: ENDPOINT
    name: jenkinsEndpoint
    ...
  4. 按一下匯入

若要在 projectB 上執行 jenkinsPipeline,請按一下管線卡上的執行,然後選取 projectB 作為專案。

備註: 若要在 projectB 中執行共用管線,您必須具有 Code Stream 管理員、開發人員或執行者角色。如果您是 Code Stream 檢視者或使用者,則無法執行管線,除非 Code Stream 管理員將您指定為 projectB 的專案管理員或專案成員。如需有關 Code Stream 中角色的詳細資訊,請參閱 如何在 Code Stream 中管理使用者存取和核准

如何將共用管線新增到其他管線

透過將共用管線用作其他管線中的巢狀工作,可以將管線功能延伸到一個專案中包含的管線之外。共用管線可以位於彼此不同的專案中,也可以位於與作為巢狀工作包含的管線不同的專案上。

以下範例顯示了名為 master-shared-pipeline-demo 的管線,它包含兩個巢狀管線工作。

建立包含巢狀共用管線的管線時,選取共用管線,如果有兩個具有相同名稱的管線,則使用專案名稱選取所需的管線。

若要為 Task0 指定管線,請從共用管線清單中進行選取。每個管線名稱都包含專案名稱。如果多個共用管線具有相同的名稱,您可以使用專案名稱選取所需的專案名稱。

備註: 若要執行包含巢狀管線的管線,管線必須能夠存取巢狀管線中使用的任何端點或變數。如果無法存取,則必須在專案上為管線建立內容。

如何使用共用管線進行復原

若要使用共用管線進行復原,請在為工作設定復原時從管線清單中選取該管線。Code Stream 將篩選清單,僅顯示同一專案上的管線或不同專案上的共用管線。

新增共用管線以進行復原時,選取共用管線,如果有兩個具有相同名稱的管線,則使用專案名稱選取所需的管線。

如何在共用管線中使用共用 VMware 雲端範本

可以使用共用 VMware 雲端範本作為共用管線中工作的雲端範本來源。但是,在 Code Stream 中定義工作之前,請先開啟 Cloud Assembly 以確認雲端範本已共用並且您瞭解雲端範本的名稱和版本。共用雲端範本時,在 Cloud Assembly 的 [雲端範本] 清單中,專案名稱旁邊會顯示一個圖示。

在管線中將共用雲端範本新增為來源之前,請在 Cloud Assembly 中確認 VMware 雲端範本已共用。

在共用管線中使用 VMware 雲端範本:
  • 對於 [工作類型],選取 VMware 雲端範本
  • 對於 [動作],選取建立部署更新部署
  • 如果要更新部署,請選取部署名稱。
  • 對於 [雲端範本來源],選取 VMware 雲端範本
  • 對於 [雲端範本名稱],輸入在 Cloud Assembly 中確認為共用的雲端範本的名稱。
    備註:
    • 如果未列出雲端範本,這是因為雲端範本與管線位於不同的專案中,而 Code Stream 僅列出目前專案中的雲端範本。
    • 如果指定的 VMware 雲端範本未共用,則嘗試在不同專案上的管線中使用該雲端範本時,此管線將無法執行,並顯示一條訊息,指示所選雲端範本未共用。
  • 對於 [雲端範本版本],輸入雲端範本的版本。

如何刪除或停止共用管線

如果將共用管線新增為巢狀工作或用於復原工作,則使用該管線的管線將對其進行參考。如果要刪除或停止共用管線,必須將其從參考該管線的任何管線中移除。

例如,如果 master-shared-pipeline-demo 包含 Shared-Pipeline 作為巢狀工作,則會引用 Shared-Pipeline。將 Shared-Pipelinemaster-shared-pipeline-demo 移除後,才能刪除或停止共用此管線。

或者,如果 TestRollback 使用 Shared-Pipeline 復原工作,則參考 Shared-Pipeline。在 TestRollback 中從復原工作中移除 Shared-Pipeline 後,才可以刪除或停止共用此管線。

以下程序說明了如何在刪除或停止共用管線之前,檢查管線的參考並將其從參考該管線的管線中移除。

  1. 檢查參考,如果找到,則更新管線參考。
    1. 按一下管線。在要檢查的共用管線上,按一下動作 > 檢視參考
    2. 記下任何參考管線的名稱。移除共用管線之前,檢查該管線是否用作其他管線的巢狀管線或用於復原。
    3. 開啟參考共用管線的管線。移除用作巢狀工作或用於復原工作的共用管線,然後儲存管線。
  2. 刪除或停止共用管線。
    • 在要刪除的管線上,按一下動作 > 刪除
    • 在要停止共用的管線上,按一下動作 > 停止共用