CDK Toolkit Library を使用してプログラムによるアクションを実行する - AWS Cloud Development Kit (AWS CDK) v2

これは AWS CDK v2 開発者ガイドです。旧版の CDK v1 は 2022 年 6 月 1 日にメンテナンスを開始し、2023 年 6 月 1 日にサポートを終了しました。

CDK Toolkit Library を使用してプログラムによるアクションを実行する

CDK Toolkit Library を理解する

CDK Toolkit Library を使用すると、CLI コマンドを使用する代わりに、コードを使用して CDK のプログラムによるアクションを実行できます。このライブラリを使用して、カスタムツールの作成、特殊な CLI アプリケーションの構築、開発ワークフローへの CDK 機能の統合を行うことができます。

プログラムによる制御でインフラストラクチャのライフサイクルを管理する

CDK Toolkit Library には、次の CDK アクション用のプログラムによるインターフェイスが用意されています。

  • 合成 - AWS CloudFormation テンプレートとデプロイアーティファクトを生成します。

  • デプロイ - CloudFormation テンプレートを使用してインフラストラクチャをプロビジョニングまたは更新します。

  • リファクタリング - コンストラクトの名前変更やスタック間の移動など、CDK コードのリファクタリング時にデプロイされたリソースを保持します。

  • リスト - スタックとその依存関係に関する情報を表示します。

  • ウォッチ - CDK アプリのローカルの変更をモニタリングします。

  • ロールバック - スタックを最後の安定状態に戻します。

  • 破棄 - CDK スタックと関連付けられたリソースを削除します。

インフラストラクチャ管理を強化およびカスタマイズする
  • コードによって制御する - インフラストラクチャ管理をアプリケーションに直接統合し、レスポンシブデプロイパイプラインを構築します。

  • クラウドアセンブリを管理する - デプロイ前にインフラストラクチャ定義を作成、検査、変換します。

  • デプロイをカスタマイズする - 要件に合わせてパラメータ、ロールバック動作、モニタリングを設定します。

  • リファクタリング中にリソースを保持する - CDK コードをリファクタリングするときにリソースを自動的に検出して保持します。

  • エラーを正確に処理する - 詳細な診断情報を使用して構造化されたエラー処理を実装します。

  • 通信をカスタマイズする - カスタム進行状況インジケータを設定し、IoHost 実装を通じてログを記録します。

  • AWS と接続する - プロファイル、リージョン、認証フローをプログラムで設定します。

CDK Toolkit Library を使用するタイミングの選択

CDK Toolkit Library は、以下を行う必要がある場合に特に役立ちます。

  • CI/CD パイプラインの一部としてインフラストラクチャのデプロイを自動化します。

  • 組織のニーズに合わせたカスタムデプロイツールを構築します。

  • CDK アクションを既存のアプリケーションまたはプラットフォームに統合します。

  • カスタム検証または承認ステップを使用して、特殊なデプロイワークフローを作成します。

  • 複数の環境全体で高度なインフラストラクチャ管理パターンを実装します。

  • リファクタリングオペレーションを自動化して、CDK コードをリファクタリングするときにリソースを保持します。

CDK Toolkit Library の使用

次の例は、CDK Toolkit Library を使用してシンプルな S3 バケットを作成してデプロイする方法を示しています。

// Import required packages import { Toolkit } from '@aws-cdk/toolkit-lib'; import { App, Stack } from 'aws-cdk-lib'; import * as s3 from 'aws-cdk-lib/aws-s3'; // Create and configure the CDK Toolkit const toolkit = new Toolkit(); // Create a cloud assembly source with an inline app const cloudAssemblySource = await toolkit.fromAssemblyBuilder(async () => { const app = new App(); const stack = new Stack(app, 'SimpleStorageStack'); // Create an S3 bucket in the stack new s3.Bucket(stack, 'MyFirstBucket', { versioned: true }); return app.synth(); }); // Deploy the stack await toolkit.deploy(cloudAssemblySource);
次のステップ
  • デプロイを自動化する - デプロイをプログラムによってトリガーし、デプロイ前後のステップを追加します。

  • システムと統合する - CI/CD ワークフロー、カスタムツール、モニタリングソリューションに接続します。

  • デプロイの詳細を制御する - スタック選択とマルチ環境デプロイのきめ細かなオプションを設定します。

  • 信頼性を強化する - 本番環境対応のエラー処理とデプロイの進行状況の追跡を実装します。

  • リファクタリングを自動化する - CDK コードのリファクタリング時にリソースを検出して保存します。

次のステップ

CDK Toolkit Library の使用を開始するには、「CDK Toolkit Library の使用を開始する」を参照してください。

詳細

Toolkit Library の詳細については、次の内容を参照してください。