【DOP-C02】AWS CodePipelineの概要についてまとめる

2026/10/18追記

  • 試験対策を進めていく中で、より詳細なactionsやaction groupについても理解を行う必要があったため、リライトしました。

はじめに

試験対策の一環として、AWS CodePipelineの概要についてまとめました。
WIPです。

【ざっくりと理解】AWS CodePipelineとは?

AWS CodePipelineは、ビルド、デプロイ、テストなどの一連の流れを自動化するためのCI/CDサービスです。

CI/CD: 継続的インテグレーション、継続的デプロイ

基本的な概念

利用にあたって押さえておくべき主要な概念は以下の通り

  • ステージ(Stage): プロセスを論理的なフェーズ(段階)ごとに区切るための構成単位。
  • トランジション(Transition): ステージとステージの間に存在する接続リンク。
  • アクショングループ(Action group): 非同期で実行されるアクションの単位です。
  • アクション(Action): 具体的な処理内容です。

概念の詳細な説明

それぞれの概念について深堀りをしていきます。

ステージについて

ステージは、CodePiplelineを定義するうえで最も大きな単位になります。

あるステージ内のアクションがすべて成功すると、成果物(リビジョン)が次のステージへ引き渡されて処理が進行します。

  • Source ステージ: ソースコードやコンテナイメージの取得
  • Build ステージ: コンパイル、静的解析、Docker イメージのビルド
  • Test ステージ: 自動テストの実行
  • Deploy ステージ: ターゲット環境(Staging / Production 等)へのデプロイ

トランジションについて

各ステージが完了した際に、デフォルトだと次のステージに移行します。
これが「トランジション」です。
トランジションを「無効化」することで、次のステージへの移行を止めることができます。

手動による承認が必要な場合には、「手動承認アクション」を使用することでより詳細にPipelineを管理することができます。

アクショングループ

アクショングループとは、後述のactionのグループです。
runOrderが同一のactionが同一action groupと見なされます。

並列化稼働が必要なactionは同一action groupで定義しましょう。

アクション

具体的な処理内容です。下記の項目で構成されます。

actions:
  - name: RunUnitTest               # アクション名
    actionTypeId:                   # アクション種別識別子
      category: Test                # カテゴリ
      owner: AWS                    # オーナー
      provider: CodeBuild           # プロバイダー
      version: '1'                  # バージョン
    runOrder: 1                     # 実行順序(アクショングループ)(前述)
    inputArtifacts:                 # 入力アーティファクト 
      - name: SourceArtifact
    outputArtifacts:                # 出力アーティファクト 
      - name: TestOutputArtifact
    configuration:                  # プロバイダー固有設定 
      ProjectName: MyUnitTestProject
    region: ap-northeast-1          # リージョン 
    roleArn: arn:aws:iam::123456789012:role/MyActionRole # ロールARN 
    namespace: TestVariables        # 変数用名前空間 

むすび

今回、試験対策として、AWS CodePipelineに関する基本的な概念をまとめてみました。

実際に使用してみることでイメージが付くと思うので早速、今やっているデプロイ案件で使用してみようかと思います。