継続的デプロイメントとパイプラインの確認

作業手順

リポジトリの更新

  1. 継続的デプロイメントの動作確認のために、アプリケーションを更新します。

    • Cloud9 の画面を再度開き、フロントエンドの View を適当に(例えばタイトルなどを)書き変えてください。

    • 以下の例では Vim を使用していますが、好きなエディタでかまいません。Cloud9の エディタを利用することもできます。

    vim ~/environment/{ユーザー名}-ecsdemo-frontend/app/views/application/index.html.erb
    • 例えば、以下のように h2 タグの上に <h1>CI/CD Test!</h1> というタグを追加します。

    1

  2. 以下のコマンドで、リモートリポジトリへ変更を push します。

    cd ~/environment/${USER_NAME}-ecsdemo-frontend/
    git add -A
    git commit -m "pipeline test"
    git push origin master

継続的デプロイメントの動作確認

  1. CodePipeline コンソールにて、「パイプライン」、「{ユーザー名}-ecsdemo-pipeline」と順に選択し、CodePipeline のパイプラインが自動的に開始され、正常に完了することを確認します。

    2

  2. 次に、CodeDeploy で Green 環境が立ち上がったら、ALB のエンドポイントの 9000 ポートにアクセスして、Green 環境が閲覧できることを確認します。

    • ここで、Green 環境に先ほどの更新がデプロイされていることを確認しましょう。
  3. さらに ECS コンソールから、新しいタスク定義でサービス更新が行われていることを確認します。

  4. 最後に、CodeDeploy で「トラフィックの再ルーティング」を選択し、Green 環境が本番用の 80 ポートにルーティングされていることを確認します。

    • 余裕のある方は、ALB のリスナーからターゲットグループが入れ替わっていることを確認しましょう。
  5. また、元のタスクセットの終了の待機期間(今回は 10 分)が経過すると、もともと残っていたタスクセットが削除され、デプロイメントが完全に終了します。

    • つまり、この期間が終了するまではロールバックを実施できます。