翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
CodeDeploy Spec ファイルのリファレンス
このセクションは参照のみを目的としています。AppSpec ファイルの概念的な概要については、を参照してください。Application Specification Files。
アプリケーション仕様ファイル (AppSpec file) はYAML
EC2/オンプレミスデプロイ用の AppSpec ファイルの名前を付ける必要があります。appspec.yml
またはappspec.yaml
ローカル展開を実行している場合を除きます。詳細については、「ローカルのデプロイの作成」を参照してください。
トピック
Amazon ECS コンピューティングプラットフォームの AppSpec ファイル
Amazon ECS コンピューティングプラットフォームアプリケーションでは、CodeDeploy によって AppSpec ファイルが使用され、次のことが決定されます。
-
Amazon ECS タスク定義ファイル。これは、の ARN で指定されます。
TaskDefinition
AppSpec ファイルの命令。 -
置き換えタスクセット内のコンテナとポート。Application Load Balancer またはNetwork Load Balancer がデプロイ中にトラフィックを再ルーティングする場所を設定します。これは、
LoadBalancerInfo
AppSpec ファイルの命令。 -
Amazon ECS サービスが実行されるプラットフォームのバージョン、そのサブネット、およびそのセキュリティグループなどの Amazon ECS サービスに関するオプション情報。
-
Amazon ECS のデプロイ中、ライフサイクルイベントに応じたフック中に実行される、オプションの Lambda 関数。詳細については、「Amazon ECS デプロイ用の AppSpec の「フック」セクション」を参照してください。
の AppSpec ファイルAWS Lambdaコンピューティングプラットフォーム
を使用する場合AWSLambda コンピューティングプラットフォームアプリケーションでは、AppSpec ファイルは CodeDeploy によって次のことを判断するために使用されます。
-
デプロイする Lambda 関数のバージョン。
-
検証テストとして使用する Lambda 関数。
AppSpec ファイルは、YAML 形式または JSON 形式とすることができます。デプロイの作成時に、AppSpec ファイルのコンテンツを CodeDeploy コンソールに直接入力することもできます。
EC2/オンプレミスコンピューティングプラットフォームの AppSpec ファイル
アプリケーションで 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/オンプレミスコンピューティングプラットフォームのデプロイの appspec.yml は、リビジョンのルートディレクトリに保存されます。詳細については、「EC2/オンプレミスデプロイ向けに AppSpec ファイルを追加する」および「CodeDeploy のリビジョンを計画する」を参照してください。
AppSpec ファイルの間隔
AppSpec ファイル間隔の正しい形式を以下に示します。角括弧に含まれた番号は、項目の間に必要なスペースの数を示します。たとえば、[4]
は、項目の間にスペースを 4 つ挿入することを意味します。CodeDeploy は、AppSpec ファイルの場所とスペース数が正しくない場合に、デバッグが困難な可能性のあるエラーを発生させます。
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