継続は力なり

タイトル通り定期的な更新を心掛けるブログです。

AWS CDK アプリケーションの継続的デプロイメントを実装する『CDK Pipeline』を実践した

タダです.

現在プレビュー版ではありますが,AWS CDK アプリケーションの継続的デプロイメントを行う「CDK Pipeline」の記事が出ていたので記事を参考にこの機能を試してみました.記事を通してどんな実装を試せるのか,試してみての所感をまとめていきます.

日本語のアナウンスブログ aws.amazon.com

英語のアナウンスブログ aws.amazon.com

ドキュメント docs.aws.amazon.com

記事を試す上での諸注意

記事のハンズオンを試していく上で諸注意として次の点があります.始める前に確認しておきましょう.

  • AWS CDK CLI のバージョンが1.51.0以降である必要があります.
  • GitHub アカウントが必要です.
  • GitHubリポジトリを CodePipeline からアクセスできるようにアクセストークンを Secret Manager に登録しておきます.
    • こちらのドキュメントを参考に登録しましょう.

どんな実装を試せるのか

アプリケーションとしては API Gateway と Lambda を組み合わせて簡単なレスポンスを返すものですが,継続的デプロイメントのパイプラインとして以下の実装を試せます.

  • GitHub からソースコードをとってきてビルドし,そのコードをデプロイする
    • GitHub にコードを push したら動作するパイプライン
  • 別のアカウントとリージョンにデプロイする
  • 検証として API Gateway と Lambda のエンドポイントにリクエストを投げるテスト
  • 開発期間中には何度も繰り返しデプロイするための開発用アカウントへのデプオリ

所感

記事のパイプラインをコード化して継続的デプロイメントを行っていくわけですが,取り組んでみて「CDK Pipeline」のおかげでコードの記述数が少ない印象を持ちました.CloudFormation を使った場合,足回りのサービスを作り上げるまでに時間を要するところが短縮されます.

また,プレビュー版なのでまだ実戦投入とはいかないとは思いますが,CodePipeline を CI/CD を使っているところでは「CDK Pipeline」と組み合わせて環境用途ごとにパイプラインを分けたり,本番利用などの普段のオペレーションに当てはめてプレビューの段階から適用できるかを検討してみてるのはいかがでしょうか.何度もパイプラインを構成したり,別環境に横展開する際にコード化されているのはメリットだし,スピーディーな展開が可能だと思います.

まとめ

プレビュー中の「CDK Pipeline」を試してみたので記事を通してどんなパイプラインを作れるか,所感を簡単にまとめました.CodePipeline を使っていたり,使うことを検討している人たちにとって検討価値のある機能追加だと思うので,気になる方は試してみてください!