管道可定義您的發行程序工作流程,並說明新程式碼變更在發行程序中的進度。管道由一系列的階段 (例如,建置、測試和部署) 組成,在您的工作流程中扮演邏輯部門的角色。每個階段由一系列的動作組成,像是建置程式碼或部署測試環境等工作。AWS CodePipeline 提供可建立、設定和管理管道及其各個階段與動作的圖形使用者界面,讓您能夠輕鬆以視覺化的方式查看並建立發行程序工作流程模型。
平行執行
您可以使用 CodePipeline 建立模型,讓建置、測試和部署動作平行執行,以便加快工作流程的速度。
AWS CodePipeline 可以從 AWS CodeCommit 或 Amazon S3 直接提取管道的原始程式碼。它可在 AWS CodeBuild 中執行組建和單元測試。CodePipeline 可使用 AWS CodeDeploy、AWS Elastic Beanstalk 或 AWS OpsWorks 來部署您的變更。
您也可以將佈建、更新或刪除 AWS 資源等 AWS CloudFormation 動作製作成模型,作為發行程序的一部分。這也可讓您持續交付使用 AWS Lambda、Amazon API Gateway 和 Amazon DynamoDB 搭配 AWS 無伺服器應用程式模型所建置的無伺服器應用程式。
您也可以使用 CodePipeline 與 AWS Lambda 的整合,在管道任何階段觸發由程式碼定義的自訂函數。例如,您可以觸發用來測試 Web 應用程式是否成功部署的 Lambda 函數。
CodePipeline 讓您可以設定管道,將這些服務及第三方開發人員工具和自訂系統結合在一起。
AWS CodePipeline 讓您能夠按一下即可將第三方開發人員工具 (像是 GitHub 或 Jenkins) 整合至發行程序的任何階段中。您可以使用第三方工具進行原始程式碼控制、建置、測試或部署。在此處進一步了解我們的整合。
AWS CodePipeline 可讓您整合自己的自訂系統。您可以將 CodePipeline 開放原始碼代理器與您的伺服器整合,以註冊自訂動作讓您將伺服器掛入管道。您還能使用 CodePipeline Jenkins 外掛程式輕鬆將現有的建置伺服器註冊為自訂動作。
AWS CodePipeline 可讓您透過指定發行工作流程及其階段和動作的宣告式 JSON 文件定義管道結構。這些文件能夠更新您現有的管道及提供建立新管道的起始範本。
AWS CodePipeline 使用 AWS IAM 管理可變更及可控制您發行工作流程的人員。您可以透過 IAM 使用者、IAM 角色和 SAML 整合目錄授與使用者存取權。