CodeDeploy アプリケーション仕様 (AppSpec) ファイル - AWS CodeDeploy

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

CodeDeploy アプリケーション仕様 (AppSpec) ファイル

アプリケーション仕様ファイル (AppSpec ファイル) は、CodeDeploy に固有のYAMLフォーマットまたはJSONフォーマットされたファイル。AppSpec ファイルは、ファイルで定義されている一連のライフサイクルイベントフックとして、各デプロイを管理するために使用されます。

正しい形式の AppSpec ファイルを作成する方法については、」CodeDeploy AppSpec ファイルのリファレンス

Amazon ECS コンピューティングプラットフォームの AppSpec ファイル

アプリケーションで Amazon ECS コンピューティングプラットフォームを使用している場合、AppSpec ファイルは YAML 形式または JSON 形式にすることができます。また、コンソールのエディタに直接入力することもできます。AppSpec ファイルは次の指定に使用されます。

  • Amazon ECS サービスの名前と、新しいタスクセットにトラフィックを送信するために使用されるコンテナ名とポート。

  • 検証テストとして使用される関数。

Lambda 関数は、デプロイライフサイクルイベント後に検証を実行できます。詳細については、「Amazon ECS デプロイ用の AppSpec の「hooks」セクション」、「 Amazon ECS デプロイ用の AppSpec ファイル構造 」、および「 Amazon ECS デプロイ用の AppSpec ファイルの例 」を参照してください。

の AppSpec ファイルAWS Lambdaコンピューティングプラットフォーム

アプリケーションでAWSLambda コンピューティングプラットフォームで、AppSpec ファイルは YAML 形式または JSON 形式にすることができます。また、コンソールのエディタに直接入力することもできます。AppSpec ファイルは次の指定に使用されます。

  • デプロイする AWS Lambda 関数のバージョン。

  • 検証テストとして使用される関数。

Lambda 関数は、デプロイライフサイクルイベント後に検証を実行できます。詳細については、「の AppSpec の「hooks」セクションAWSLambda デプロイメント」を参照してください。

EC2/オンプレミスコンピューティングプラットフォームの AppSpec ファイル

アプリケーションで EC2/オンプレミスコンピューティングプラットフォームを使用している場合、AppSpec ファイルは必ず YAML 形式になります。AppSpec ファイルは、次の目的で使用されます。

  • アプリケーションリビジョンのソースファイルを、インスタンスの宛先にマッピングする。

  • デプロイされたファイルのカスタムアクセス権限を指定する。

  • デプロイプロセスのさまざまなフェーズにおいて、各インスタンスで実行するスクリプトを指定する。

インスタンスのスクリプトは、多くのデプロイライフサイクルイベントの後で実行できます。CodeDeploy は、ファイルで指定されているスクリプトのみを実行しますが、これらのスクリプトは、インスタンスの他のスクリプトを呼び出すことができます。インスタンスで実行しているオペレーティングシステムでサポートされている限り、任意のタイプのスクリプトを実行できます。詳細については、「EC2/オンプレミスデプロイ用の AppSpec の「hooks」セクション」を参照してください。

CodeDeploy エージェントが AppSpec ファイルを使用する方法

デプロイ時に、CodeDeploy エージェントは、現在のイベントの名前をhooksセクションで、AppSpec ファイルの イベントが見つからない場合、CodeDeploy エージェントは次のステップに進みます。イベントが見つかった場合、CodeDeploy エージェントは実行するスクリプトのリストを取得します。スクリプトはファイルに表示された順序で、順に実行されます。各スクリプトの状態は、インスタンスの CodeDeploy エージェントログファイルに記録されます。

スクリプトが正常に実行すると、終了コード 0 (ゼロ) を返します。

注記

CodeDeploy エージェントは、AWSLambda または Amazon ECS デプロイメント。

実行時インストールイベントで定義されたマッピングを使用して、CodeDeploy エージェントはfilesセクションを使用して AppSpec ビジョンからインスタンスにコピーするフォルダまたはファイルを判断します。

オペレーティングシステムにインストールされた CodeDeploy エージェントが、AppSpec ファイルに記載されているものに一致しない場合、デプロイは失敗します。

CodeDeploy エージェントログファイルの詳細については、CodeDeploy エージェントの操作