0

これは基本的な質問です: 私は次のように設定し、基本的なcodepipelineパイプラインを持っている:さまざまなElastic Beanstalk環境に異なるブランチを展開するコードパイプラインをセットアップする "正しい"方法は何ですか?

  1. ソースはgithubのブランチElastic Beanstalkでの(マスター)
  2. AWS Codebuildとビルド
  3. 展開です - > appname-prod環境にデプロイします

すべて意味があり、簡単です。

ステージングブランチを持ち、コミット時にCodebuildをビルドし、appnameステージング環境にデプロイします。

これは正しい方法はありますか?

2つの異なるパイプライン(プロード用とステージング用の2つのパイプライン)を用意してください。

また、同じパイプライン内で両方の動作(および潜在的に3番目の動作)を使用する良い方法がありますか?

ありがとうございます!

答えて

2

私の経験から、ブランチごとにパイプラインが必要です。各環境のパイプライン構造が異なるか、または同じ場合があります。

CI/CDセットアップを選択すると、非生産パイプラインにはテストなどのステージが含まれ、各ステージが通過すると仮定すると、展開は非プロダクト弾性ビッグストーク環境に自動的になります。

プロダクション環境では、手動承認ステージを含めることで、継続的な配信パイプラインを持つことができます。または、自動配備を実行しても問題ない場合は、非プロードのパイプライン形式を使用できます。

手動で作成したパイプラインを何度も何度も繰り返し使用したい場合は、素晴らしいトリックです。それはcliを介してその雲のテンプレートを抽出することです。

aws codepipeline getpipeline --name <name> 

これは、コードパイプラインリソースのためのクラウドフォーメーションテンプレートを提供します。少し編集する必要がありますが、リポジトリとブランチを参照する場合は調整できます。同様の構造を持つ多くのパイプラインを簡単に作成できるようにパラメータ化することもできます。

幸運を祈る!

関連する問題