cdk migrate - AWS Cloud Development Kit (AWS CDK) v2

これは AWS CDK v2 デベロッパーガイドです。古い CDK v1 は 2022 年 6 月 1 日にメンテナンスを開始し、2023 年 6 月 1 日にサポートを終了しました。

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

cdk migrate

デプロイされた AWS リソース、 AWS CloudFormation スタック、 CloudFormation テンプレートを新しい AWS CDK プロジェクトに移行します。

このコマンドは、 を使用して指定した値で という名前の単一のスタックを含む新しい CDK アプリケーションを作成します--stack-name。移行ソースは、--from-scan、、--from-stackまたは を使用して設定できます--from-path

の使用の詳細については、cdk migrate「」を参照してください既存のリソースと AWS CloudFormation テンプレートを に移行する AWS CDK

注記

cdk migrate コマンドは実験的であり、将来的に重大な変更が生じる可能性があります。

使用方法

$ cdk migrate <options>

オプション

すべての CDK CLI コマンドで動作するグローバルオプションのリストについては、「」を参照してくださいグローバルオプション

必要なオプション

--stack-name STRING

移行後に CDK アプリ内で作成される AWS CloudFormation スタックの名前。

必須: はい

条件オプション

--from-path PATH

移行する AWS CloudFormation テンプレートへのパス。ローカルテンプレートを指定するには、このオプションを指定します。

必須: 条件的。ローカル AWS CloudFormation テンプレートから移行する場合は必須です。

--from-scan STRING

デプロイされたリソースを AWS 環境から移行する場合、このオプションを使用して、新しいスキャンを開始するか、最後に成功したスキャンを AWS CDK CLIで使用するかを指定します。

必須: 条件的。デプロイされた AWS リソースから移行する場合に必要です。

使用できる値: most-recentnew

--from-stack BOOLEAN

デプロイされた AWS CloudFormation スタックから移行するには、このオプションを指定します。--stack-name を使用して、デプロイされた AWS CloudFormation スタックの名前を指定します。

必須: 条件的。デプロイされた AWS CloudFormation スタックから移行する場合に必要です。

オプション

--account STRING

AWS CloudFormation スタックテンプレートを取得するアカウント。

必須: いいえ

デフォルト : AWS CDK CLIはデフォルトのソースからアカウント情報を取得します。

--compress BOOLEAN

生成された CDK プロジェクトをZIPファイルに圧縮するには、このオプションを指定します。

必須: いいえ

--filter ARRAY

AWS アカウントと からデプロイされたリソースを移行するときに を使用します AWS リージョン。このオプションは、移行するデプロイされたリソースを決定するフィルターを指定します。

このオプションは、キーと値のペアの配列を受け入れます。ここで、キーはフィルタータイプを表し、値はフィルターする値を表します。

使用できるキーは次のとおりです。

  • resource-identifier – リソースの識別子。値は、リソースの論理 ID または物理 ID にすることができます。例えば resource-identifier="ClusterName" です。

  • resource-type-prefix – AWS CloudFormation リソースタイプのプレフィックス。例えば、 を指定resource-type-prefix="AWS::DynamoDB::"して、すべての Amazon DynamoDB リソースをフィルタリングします。

  • tag-key – リソースタグのキー。例えば tag-key="myTagKey" です。

  • tag-value – リソースタグの値。例えば tag-value="myTagValue" です。

AND 条件付きロジックに複数のキーと値のペアを指定します。次の例では、タグキーmyTagKeyとして でタグ付けされている DynamoDB リソースをフィルタリングします: --filter resource-type-prefix="AWS::DynamoDB::", tag-key="myTagKey"

OR 条件付きロジックの オプションを 1 つのコマンドで--filter複数回指定します。次の例では、DynamoDB リソースであるか、タグキー myTagKey として でタグ付けされているリソースをフィルタリングします--filter resource-type-prefix="AWS::DynamoDB::" --filter tag-key="myTagKey"

必須: いいえ

--help, -h BOOLEAN

コマンドのcdk migrateコマンドリファレンス情報を表示します。

--language STRING

移行中に作成された CDK プロジェクトに使用するプログラミング言語。

必須: いいえ

有効な値: typescriptpythonjavacsharpgo

デフォルト: typescript

--output-path PATH

移行された CDK プロジェクトの出力パス。

必須: いいえ

デフォルト: デフォルトでは、 は AWS CDK CLI現在の作業ディレクトリを使用します。

--region STRING

AWS CloudFormation スタックテンプレート AWS リージョン を取得する 。

必須: いいえ

デフォルト : AWS CDK CLIはデフォルトのソースから AWS リージョン 情報を取得します。

CloudFormation スタックからの移行の簡単な例

を使用して、特定の AWS 環境でデプロイされた CloudFormation スタックから移行します--from-stack。新しい CDK スタック--stack-nameに名前を付けるには、 を指定します。以下は、 を使用しているmyCloudFormationStack新しい CDK アプリに移行する例ですTypeScript。

$ cdk migrate --language typescript --from-stack --stack-name 'myCloudFormationStack'

ローカル CloudFormation テンプレートからの移行の簡単な例

を使用してローカル JSON または YAML CloudFormation テンプレートから移行します--from-path。新しい CDK スタック--stack-nameに名前を付けるには、 を指定します。以下は、ローカルtemplate.jsonファイルからのmyCloudFormationStackスタックを含む新しい CDK TypeScript アプリを に作成する例です。

$ cdk migrate --stack-name "myCloudFormationStack" --language typescript --from-path "./template.json"

デプロイされた AWS リソースからの移行の簡単な例

を使用して、 CloudFormation スタックに関連付けられていない特定の AWS 環境からデプロイされた AWS リソースを移行します--from-scan。CDK は IaC generatorサービスCLIを利用してリソースをスキャンし、テンプレートを生成します。次に、CDK はテンプレートCLIを参照して新しい CDK アプリを作成します。以下は、移行された AWS リソースを含む新しいmyCloudFormationStackスタックTypeScriptを使用して に新しい CDK アプリケーションを作成する例です。

$ cdk migrate --language typescript --from-scan --stack-name "myCloudFormationStack"