翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
CodeDeploy AppSpec ファイルリファレンス
このセクションは参照のみを目的としています。 AppSpec ファイルの概要については、「」を参照してくださいApplication Specification Files。
アプリケーション仕様ファイル (AppSpec ファイル) は、デプロイを管理する CodeDeploy ために が使用する YAML
注記
EC2/オンプレミスデプロイの AppSpec ファイルは、ローカルデプロイを実行する場合を除きappspec.yml
、 という名前にする必要があります。詳細については、「ローカルのデプロイを作成する。」を参照してください。
トピック
AppSpec Amazon ECSコンピューティングプラットフォーム上の ファイル
Amazon ECSコンピューティングプラットフォームアプリケーションの場合、 AppSpec ファイルは によって次の決定 CodeDeploy に使用されます。
-
Amazon ECSタスク定義ファイル。これは、 AppSpec ファイルの
TaskDefinition
命令ARNで で指定されます。 -
置き換えタスクのコンテナとポートは、Application Load Balancer または Network Load Balancer がデプロイ中にトラフィックを再ルーティングする場所を設定します。これは、 AppSpec ファイル内の
LoadBalancerInfo
命令で指定されます。 -
Amazon ECSサービスに関するオプション情報。Amazon サービスを実行するプラットフォームバージョン、サブネット、セキュリティグループなど。
-
Amazon ECSデプロイ中のライフサイクルイベントに対応するフック中に実行するオプションの Lambda 関数。詳細については、「AppSpec Amazon ECSデプロイの「フック」セクション」を参照してください。
AppSpec AWS Lambda コンピューティングプラットフォーム上の ファイル
AWS Lambda コンピューティングプラットフォームアプリケーションの場合、 AppSpec ファイルは によって次の項目を決定する CodeDeploy ために使用されます。
-
デプロイする Lambda 関数のバージョン。
-
検証テストとして使用する Lambda 関数。
AppSpec ファイルは、YAMLフォーマットまたはJSONフォーマットできます。デプロイを作成するときに、 AppSpec ファイルの内容を CodeDeploy コンソールに直接入力することもできます。
AppSpec EC2/オンプレミスコンピューティングプラットフォーム上の ファイル
アプリケーションが EC2/オンプレミスコンピューティングプラットフォームを使用している場合、 AppSpec ファイルは というYAML形式のファイルでなければならずappspec.yml
、アプリケーションのソースコードのディレクトリ構造のルートに配置する必要があります。それ以外の場合、デプロイは失敗します。これは、以下を判断する CodeDeploy ために によって使用されます。
-
Amazon S3 または のアプリケーションリビジョンからインスタンスにインストールする内容 GitHub。
-
デプロイライフサイクルイベントに応じて実行するライフサイクルイベントフック。
完成した AppSpec ファイルは、デプロイするコンテンツとともにアーカイブファイル (zip、tar、または圧縮 tar) にバンドルします。詳細については、「のアプリケーションリビジョンの使用 CodeDeploy」を参照してください。
注記
tar および圧縮 tar アーカイブファイル形式 (.tar および .tar.gz) は、Windows Server インスタンスではサポートされていません。
バンドルされたアーカイブファイル ( ではリビジョン CodeDeploy と呼ばれます) がある場合は、Amazon S3 バケットまたは Git リポジトリにアップロードします。 次に、 CodeDeploy を使用してリビジョンをデプロイします。手順については、を使用してデプロイを作成する CodeDeploy を参照してください。
EC2/オンプレミスコンピューティングプラットフォームデプロイのapppec.ymlは、リビジョンのルートディレクトリに保存されます。詳細については、「EC2/オンプレミスデプロイ用の AppSpec ファイルを追加する」および「のリビジョンを計画する CodeDeploy」を参照してください。
AppSpec ファイル間隔
以下は、 AppSpec ファイル間隔の正しい形式です。角括弧に含まれた番号は、項目の間に必要なスペースの数を示します。例えば、 は、項目の間に 4 つのスペースを挿入する[4]
ことを意味します。 は、 AppSpec ファイル内の場所とスペースの数が正しくない場合にデバッグが難しいエラーを CodeDeploy レイズします。
version:[1]
version-number
os:[1]operating-system-name
files: [2]-[1]source:[1]source-files-location
[4]destination:[1]destination-files-location
permissions: [2]-[1]object:[1]object-specification
[4]pattern:[1]pattern-specification
[4]except:[1]exception-specification
[4]owner:[1]owner-account-name
[4]group:[1]group-name
[4]mode:[1]mode-specification
[4]acls: [6]-[1]acls-specification
[4]context: [6]user:[1]user-specification
[6]type:[1]type-specification
[6]range:[1]range-specification
[4]type: [6]-[1]object-type
hooks: [2]deployment-lifecycle-event-name
: [4]-[1]location:[1]script-location
[6]timeout:[1]timeout-in-seconds
[6]runas:[1]user-name
以下は、正しくスペースが空いている AppSpec ファイルの例です。
version: 0.0 os: linux files: - source: / destination: /var/www/html/WordPress hooks: BeforeInstall: - location: scripts/install_dependencies.sh timeout: 300 runas: root AfterInstall: - location: scripts/change_permissions.sh timeout: 300 runas: root ApplicationStart: - location: scripts/start_server.sh - location: scripts/create_test_db.sh timeout: 300 runas: root ApplicationStop: - location: scripts/stop_server.sh timeout: 300 runas: root
間隔の詳細については、YAML