

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

# 使用 AWS DevOps Pipeline Accelerator 標準化 IaC 管道
<a name="introduction"></a>

*Amazon Web Services* [（貢獻者](contributors.md))

*2024 年 1 月* ([文件歷史記錄](doc-history.md))

組織通常會使用各種技術堆疊，例如： 
+ **基礎設施即程式碼 (IaC)** – HashiCorp Terraform AWS CloudFormation，以及 AWS Cloud Development Kit (AWS CDK)
+ **應用程式開發** – npm、Gradle、Apache Maven 和 TypeScript
+ **應用程式部署** – Amazon Simple Storage Service (Amazon S3)、Amazon Elastic Container Service (Amazon ECS)、Amazon Elastic Kubernetes Service (Amazon EKS) 和 AWS Lambda

透過這些多樣化的技術堆疊，每個團隊都會建立自己的管道來建置和部署應用程式或基礎設施。這種方法缺乏標準化、** **增加生產時間，** **並引入程式碼備援。每個產品都遵循自己的程序，將應用程式或基礎設施交付到各種環境。它還增加了合規團隊的複雜性，使他們更難以** **強制執行控制和品質閘道。

## 什麼是 DPA？
<a name="what-is-dpa"></a>

[DevOps Pipeline Accelerator](https://github.com/aws-samples/aws-devops-pipeline-accelerator) (DPA) 是一種由 範本組成的解決方案，可協助您建構應用程式或基礎設施部署的完整[持續整合和持續交付 (CI/CD)](apg-gloss.md#glossary-cicd) 管道。此解決方案會建置集中式範本做為加速器。產品團隊可以使用這些加速器來協助將其應用程式加入 CI/CD，讓團隊專注於開發其業務功能。

加速器是可設定的。您可以設定建置工具、部署平台、品質閘道規則等。使用 IaC 工具，您可以根據這些組態建構整個管道。這些管道加速器目前支援下列常見的持續整合和持續交付 (CI/CD) 服務和工具：
+ [AWS CodePipeline](https://docs.aws.amazon.com/codepipeline/latest/userguide/welcome.html)
+ [GitLab CI/CD](https://docs.gitlab.com/ee/ci/index.html)
+ [GitHub 動作](https://docs.github.com/en/actions)
+ [Jenkins](https://www.jenkins.io/doc/book/)

此解決方案以 [AWS 部署管道參考架構 (DPRA)](https://pipelines.devops.aws.dev/) 中定義的最佳實務為基礎。

## 使用 DPA 的優點
<a name="benefits"></a>

以下是 DPA 提供的高階優勢：
+ **標準化和一致性** – 標準化應用程式管道可提高 CI/CD 和應用程式部署的一致性。
+ **可重複使用** – DPA 可重複使用且可擴展。應用程式會使用加速器來協調管道。
+ **速度** – 應用程式團隊更專注於開發，而不是管道建構，從而改善整體開發速度。
+ **安全性** – 內建品質閘道可遵循 DevSecOps 最佳實務，在部署期間協助保護應用程式。
+ **可擴展性** – DPA 範本可設定且具有高度可擴展性。它們可輕鬆與透過支援的 CI/CD 服務或工具部署的任何類型的應用程式整合。