DevOps 管道範例 - AWS CodePipeline

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

DevOps 管道範例

作為 DevOps 管道的範例,兩階段管道可能具有名為 Source 的來源階段,以及名為 Prod 的第二階段。在此範例中,管道會以最新的變更來更新應用程式,並持續部署最新的結果。在部署最新的應用程式之前,管道會建置並測試 Web 應用程式。在此範例中,一組開發人員已在名為 的 GitHub 儲存庫中為 Web 應用程式設定基礎設施範本和原始程式碼 MyRepository。

具有範例階段和動作的管道。

例如,開發人員將修正程式推送到 Web 應用程式的索引頁,並發生下列情況:

  1. 應用程式原始碼會維護在管道中設定為 GitHub 原始碼動作的儲存庫中。當開發人員將遞交至儲存庫時, 會 CodePipeline 偵測推送的變更,而管道執行會從來源階段 開始。

  2. GitHub 來源動作已成功完成 (也就是說,最新的變更已下載並儲存至該執行特有的成品儲存貯體)。 GitHub 來源動作產生的輸出成品,即來自儲存庫的應用程式檔案,接著會用作下一階段動作要處理的輸入成品

  3. 管道執行從來源階段轉換到生產階段Prod Stage 中的第一個動作會執行在 中建立的建置專案, CodeBuild 並在管道中設定為建置動作。建置任務提取建置環境映像,並在虛擬容器中建置 Web 應用程式。

  4. Prod Stage 中的下一個動作是在 中建立的單元測試專案, CodeBuild 並在管道中設定為測試動作。

  5. 經過單元測試的程式碼接下來由生產階段中的部署動作處理,該動作會將應用程式部署到生產環境。部署動作成功完成後,階段中的最終動作是在 中建立的整合測試專案, CodeBuild 並在管道中設定為測試動作。測試動作呼叫 Shell 指令碼,在 Web 應用程式上安裝並執行測試工具 (例如連結檢查程式)。成功完成後,輸出是一個已建置的 Web 應用程式和一組測試結果。

開發人員可以將動作新增至管道,以部署或進一步測試已建置並測試過每一項變更的應用程式。

如需詳細資訊,請參閱管道執行的運作方式