若要在 Code Stream 中建立持續整合和持續交付 (CICD) 管線,您可以使用 CICD 智慧管線範本。若要規劃 CICD 原生建置,您將收集填寫智慧管線範本所需的資訊,然後在此範例計劃中使用智慧管線範本來建立管線。

在智慧管線範本中輸入資訊並將其儲存後,它會建立包含階段和工作的管線。它還指示您將根據所選環境類型 (例如 Dev 和 Prod) 在何處部署映像。管線會發佈 Docker 映像,並執行運行所需的動作。執行管線後,您可以監控管線執行中的趨勢。

若要建立 CICD 管線,您必須規劃管線的持續整合 (CI) 和持續交付 (CD) 階段。

當管線包含來自 Docker Hub 的映像時,您必須在執行管線之前確保該映像已內嵌 cURL。當管線執行時,vRealize Automation Code Stream 將下載使用 cURL 執行命令的二進位檔案。

規劃持續整合 (CI) 階段

若要規劃管線的 CI 階段,您將設定外部和內部需求,並確定要在智慧管線範本的 CI 部分中輸入的資訊。以下是摘要。

您將需要以下雲端式或遠端內部部署端點和存放庫:

  • 您的開發人員簽入程式碼的 Git 原始程式碼存放庫。當開發人員認可變更時, Code Stream會將最新程式碼提取到管線。
  • 開發人員原始程式碼所在的存放庫的 Git 端點。
  • 用於 Docker 建置主機的 Docker 端點,將在容器內執行建置命令。
  • Kubernetes 端點,可讓 Code Stream將您的映像部署到 Kubernetes 叢集。
  • 產生器映像,用於建立執行持續整合測試的容器。
  • 映像登錄端點,可讓 Docker 建置主機從中提取產生器映像。

您將需要專案的存取權。專案會對所有工作進行分組,包括您的管線、端點和儀表板。確認您是 Code Stream中的專案的成員。如果您不是管理員,請要求 Code Stream管理員將您新增為專案成員。請參閱如何在 VMware Code Stream中新增專案

您將需要可讓 Code Stream使用 Git 觸發器的 Git webhook,當開發人員 commit 程式碼變更時,會觸發管線。請參閱如何在 Code Stream 中使用 Git 觸發器執行管線

您的建置工具集:

  • 您的建置類型,例如 Maven。
  • 您使用的所有後續處理建置工具,例如 JUnit、JaCoCo、Checkstyle 和 FindBugs。

您的發佈工具:

  • 將部署建置容器的工具,例如 Docker。
  • 映像標籤,即認可識別碼或組建編號。

您的建置工作區:

  • Docker 建置主機,即 Docker 端點。
  • 映像登錄。管線的 CI 部分會從選取的登錄端點提取映像。容器會執行 CI 工作並部署映像。如果登錄需要認證,您必須先建立映像登錄端點,然後在此處選取該端點,以便主機可以從登錄提取映像。
  • 產生器映像的 URL,用於建立執行持續整合工作的容器。

規劃持續交付 (CD) 階段

若要規劃管線的 CD 階段,您將設定外部和內部需求,並確定要在智慧管線範本的 CD 部分中輸入的資訊。

您將需要以下雲端式或遠端內部部署端點:

  • Kubernetes 端點,可讓 Code Stream將您的映像部署到 Kubernetes 叢集。

環境類型和檔案:

  • Code Stream將在其中部署應用程式的所有環境類型,例如 Dev 和 Prod。智慧管線範本會根據您選取的環境類型建立管線中的階段和工作。
    表 1. CICD 智慧管線範本建立的管線階段
    管線內容 執行的作業
    建置 - 發佈階段 建置並測試您的程式碼、建立產生器映像,以及將映像發佈到 Docker 主機。
    開發階段 使用開發Amazon Web Services(AWS) 叢集來建立並部署您的映像。在此階段中,您可以在叢集上建立命名空間,並建立秘密金鑰。
    生產階段 使用 VMware Tanzu Kubernetes Grid Integrated Edition (先前稱為 VMware Enterprise PKS) 的生產版本,將映像部署到生產 Kubernetes 叢集。
  • 在 CICD 智慧管線範本的 CD 區段中選取的 Kubernetes YAML 檔案。

    若要套用該檔案,您可以按一下選取,選取 Kubernetes YAML 檔案,然後按一下處理。智慧管線範本會顯示可用的服務和部署環境。選取服務、叢集端點和部署策略。例如,若要使用 Canary 部署模型,請選取Canary,並輸入部署階段的百分比:

    處理 Canary CICD 部署。

若要查看使用智慧管線範本為藍綠部署建立管線的範例,請參閱如何在 VMware Code Stream 中將應用程式部署至藍綠部署

如何使用智慧管線範本建立 CICD 管線

收集所有資訊並設定所需內容後,您可以從 CICD 智慧管線範本建立管線。

在管線中,您將選取新增管線 > 智慧範本

選取智慧範本。

將選取 CICD 智慧管線範本。

從 CICD 智慧管線範本建立持續整合和交付管線。

您將填寫範本,然後儲存管線及其建立的階段。如果需要進行任何最終變更,您可以編輯管線並將其儲存。

從 CICD 智慧管線範本建立的新 CICD 管線階段。

然後,您將啟用管線並加以執行。執行後,您可以查看以下內容:

  • 確認您的管線已成功。按一下執行,並搜尋您的管線。如果失敗,請更正任何錯誤並再執行一次。
  • 確認 Git webhook 運作正常。Git 活動索引標籤隨即顯示事件。按一下觸發器 > Git > 活動
  • 查看管線儀表板,並檢查趨勢。按一下儀表板,並搜尋管線儀表板。您也可以建立自訂儀表板對其他 KPI 進行報告。

如需詳細範例,請參閱如何在 VMware Code Stream 中將 GitHub 或 GitLab 存放庫中的程式碼持續整合到管線