CodePipelineのトリガーをCodeCommitのmasterから作業ブランチ(developmentとか)変更する

CodePipelineのトリガーをCodeCommitのmasterから作業ブランチ(developmentとか)変更する

CodePipelineでmasterにプッシュされたらビルドが実行されたりする設定が多いと思いますが、masterではなく作業ブランチ(例えばdevelopment)へのプッシュをトリガーにCodePipelineを実行させたいといった場合、CodePipelineの変更が必要になります。

CodePipelineの設定変更が必要になります。

CodePipelineの編集

「編集」ー「ステージを編集」をクリックします。

ブランチ名をmasterから作業ブランチ(今回で言うdevelopment)に変更します。これで「保存」します。

CodePipelineのトリガーをCodeCommitのmasterから作業ブランチ(developmentとか)変更する

この設定を変更すればEventBridgeのmasterは勝手にdevelopmentに変更されますので、「EventBridgeのイベントパターン」自体は変更する必要はありません。

参考ですが、以下のように変更されるはずです。

EventBridgeのイベントパターン(変更前)
{
  "source": ["aws.codecommit"],
  "detail-type": ["CodeCommit Repository State Change"],
  "resources": ["arn:aws:codecommit:ap-northeast-1:xxxxxxxxxxxx:test"],
  "detail": {
    "event": ["referenceCreated", "referenceUpdated"],
    "referenceType": ["branch"],
    "referenceName": ["master"]
  }
}
EventBridgeのイベントパターン(変更後)
{
  "source": ["aws.codecommit"],
  "detail-type": ["CodeCommit Repository State Change"],
  "resources": ["arn:aws:codecommit:ap-northeast-1:336537773372:test"],
  "detail": {
    "event": ["referenceCreated", "referenceUpdated"],
    "referenceType": ["branch"],
    "referenceName": ["development"]
  }
}

これでgit push origin developmentとすればCodePipelineが実行されます。

CodeBuildのソースバージョン

CodeBuildのソースバージョンがmasterになっていると、ビルド自体はmasterのbuildspec.ymlを参照します。

その為、CodeBuildのソースバージョンも作業ブランチ(development)に変更する必要があります。

CodePipelineのトリガーをCodeCommitのmasterから作業ブランチ(developmentとか)変更する

これで、deployにpushすればCodePipelineが実行されるようになります。

コメント

株式会社CONFRAGE ITソリューション事業部をもっと見る

今すぐ購読し、続きを読んで、すべてのアーカイブにアクセスしましょう。

続きを読む

タイトルとURLをコピーしました