

Amazon CodeCatalyst は新規のお客様には提供されなくなりました。既存のお客様は、通常どおりサービスを引き続き使用できます。詳細については、「[CodeCatalyst から移行する方法](migration.md)」を参照してください。

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

# 「Amazon ECS タスク定義のレンダリング」アクション YAML
<a name="render-ecs-action-ref"></a>

以下は、**Amazon ECS タスク定義のレンダリング**アクションの YAML 定義です。このアクションの使用方法については、「[Amazon ECS タスク定義の変更](render-ecs-action.md)」を参照してください。

このアクション定義は、より広範なワークフロー定義ファイル内のセクションとして存在します。ファイルの詳細については、「[ワークフロー YAML 定義](workflow-reference.md)」を参照してください。

**注記**  
後続の YAML プロパティのほとんどには、対応する UI 要素がビジュアルエディタにあります。UI 要素を検索するには、**[Ctrl\$1F]** を使用します。要素は、関連付けられた YAML プロパティとともに一覧表示されます。

```
# The workflow definition starts here.
# See 最上位プロパティ for details.
        
Name: MyWorkflow
SchemaVersion: 1.0 
Actions:

# The action definition starts here.   
  ECSRenderTaskDefinition\$1nn: 
    Identifier: aws/ecs-render-task-definition@v1
    DependsOn:
      - build-action
    Compute:  
      Type: EC2 | Lambda
      Fleet: fleet-name
    Timeout: timeout-minutes
    Inputs:
      # Specify a source or an artifact, but not both.
      Sources:
        - source-name-1
      Artifacts:
        - task-definition-artifact
      Variables:
        - Name: variable-name-1
          Value: variable-value-1
        - Name: variable-name-2
          Value: variable-value-2
    Configuration 
      task-definition: task-definition-path
      container-definition-name: container-definition-name
      image: docker-image-name
      environment-variables:
        - variable-name-1=variable-value-1
        - variable-name-2=variable-value-2
    Outputs:
      Artifacts:
        - Name: TaskDefArtifact
          Files: "task-definition*"
      Variables:
        - task-definition
```

## ECSRenderTaskDefinition
<a name="render.ecs.name"></a>

(必須)

アクションの名前を指定します。すべてのアクション名は、ワークフロー内で一意である必要があります。アクション名で使用できるのは、英数字 (a～z、A～Z、0～9)、ハイフン (-)、アンダースコア (\$1) のみです。スペースは使用できません。引用符を使用して、アクション名の特殊文字とスペースを有効にすることはできません。

デフォルト: `ECSRenderTaskDefinition_nn`。

対応する UI: [設定] タブ/**[アクション名]**

## Identifier
<a name="render.ecs.identifier"></a>

(*ECSRenderTaskDefinition*/**Identifier**)

(必須)

アクションを識別します。バージョンを変更したい場合でない限り、このプロパティを変更しないでください。詳細については、「[使用するアクションバージョンの指定](workflows-action-versions.md)」を参照してください。

デフォルト: `aws/ecs-render-task-definition@v1`。

対応する UI: ワークフロー図/ECSRenderTaskDefinition\$1nn/**aws/ecs-render-task-definition@v1** ラベル

## DependsOn
<a name="render.ecs.dependson"></a>

(*ECSRenderTaskDefinition*/**DependsOn**)

(オプション)

このアクションを実行するために正常に実行する必要があるアクション、アクショングループ、またはゲートを指定します。

「DependsOn」機能の詳細については、「[アクションの順序付け](workflows-depends-on.md)」を参照してください。

対応する UI: [入力] タブ/**[依存 - オプション]**

## Compute
<a name="render.ecs.computename"></a>

(*ECSRenderTaskDefinition*/**Compute**)

(オプション)

ワークフローアクションの実行に使用されるコンピューティングエンジンです。コンピューティングはワークフローレベルまたはアクションレベルで指定できますが、両方を指定することはできません。ワークフローレベルで指定すると、コンピューティング設定はワークフローで定義されたすべてのアクションに適用されます。ワークフローレベルでは、同じインスタンスで複数のアクションを実行することもできます。詳細については、「[アクション間でのコンピューティングの共有する](compute-sharing.md)」を参照してください。

対応する UI: *[なし]*

## Type
<a name="render.ecs.computetype"></a>

(*ECSRenderTaskDefinition*/Compute/**Type**)

([Compute](#render.ecs.computename) が含まれている場合は必須)

コンピューティングエンジンのタイプです。次のいずれかの値を使用できます。
+ **EC2** (ビジュアルエディタ) または `EC2` (YAML エディタ)

  アクション実行時の柔軟性を目的として最適化されています。
+ **Lambda** (ビジュアルエディタ) または `Lambda` (YAML エディタ)

  アクションの起動速度を最適化しました。

コンピューティングタイプの詳細については、「[コンピューティングタイプ](workflows-working-compute.md#compute.types)」を参照してください。

対応する UI: [設定] タブ/**[コンピューティングタイプ]**

## Fleet
<a name="render.ecs.computefleet"></a>

(*ECSRenderTaskDefinition*/Compute/**Fleet**)

(オプション)

ワークフローまたはワークフローアクションを実行するマシンまたはフリートを指定します。オンデマンドフリートでは、アクションが開始すると、ワークフローは必要なリソースをプロビジョニングし、アクションが完了するとマシンは破棄されます。オンデマンドフリートの例: `Linux.x86-64.Large`、`Linux.x86-64.XLarge`。オンデマンドフリートの詳細については、「[オンデマンドフリートのプロパティ](workflows-working-compute.md#compute.on-demand)」を参照してください。

プロビジョニングされたフリートでは、ワークフローアクションを実行するように専用マシンのセットを設定します。これらのマシンはアイドル状態のままで、アクションをすぐに処理できます。プロビジョニングされたフリートの詳細については、「[プロビジョニングされたフリートのプロパティ](workflows-working-compute.md#compute.provisioned-fleets)」を参照してください。

`Fleet` を省略した場合、デフォルトは `Linux.x86-64.Large` です。

対応する UI: [設定] タブ/**[コンピューティングフリート]**

## Timeout
<a name="render.ecs.timeout"></a>

(*ECSRenderTaskDefinition*/**Timeout**)

(オプション)

CodeCatalyst がアクションを終了するまでにアクションを実行できる時間を分単位 (YAML エディタ) または時間分単位 (ビジュアルエディタ) で指定します。最小値は 5 分で、最大値は [CodeCatalyst のワークフローのクォータ](workflows-quotas.md) で記述されています。デフォルトのタイムアウトは、最大タイムアウトと同じです。

対応する UI: [設定] タブ/**[タイムアウト - オプション]**

## Inputs
<a name="render.ecs.inputs"></a>

(*ECSRenderTaskDefinition*/**Inputs**)

(オプション)

`Inputs` セクションでは、ワークフローの実行中に `ECSRenderTaskDefinition` に必要なデータを定義します。

**注記**  
**Amazon ECS タスク定義のレンダリング**アクションごとに 1 つの入力 (ソースまたはアーティファクト) のみが許可されます。変数はこの合計にはカウントされません。

対応する UI: **入力**タブ

## Sources
<a name="render.ecs.inputs.sources"></a>

(*ECSRenderTaskDefinition*/Inputs/**Sources**)

(タスク定義ファイルがソースリポジトリに保存されている場合は必須)

タスク定義ファイルがソースリポジトリに保存されている場合は、そのソースリポジトリのラベルを指定します。現在サポートされているラベルは、`WorkflowSource` のみです。

タスク定義ファイルがソースリポジトリに含まれていない場合は、別のアクションによって生成されたアーティファクトに存在する必要があります。

sources の詳細については、「[ワークフローへのソースリポジトリの接続](workflows-sources.md)」を参照してください。

対応する UI: 入力タブ/**[ソース - オプション]**

## Artifacts - input
<a name="render.ecs.inputs.artifacts"></a>

(*ECSRenderTaskDefinition*/Inputs/**Artifacts**)

(タスク定義ファイルが前のアクションの[出力アーティファクト](workflows-working-artifacts-output.md)に保存されている場合は必須)

デプロイするタスク定義ファイルが以前のアクションによって生成されたアーティファクトに含まれている場合は、ここでそのアーティファクトを指定します。タスク定義ファイルがアーティファクトに含まれていない場合は、ソースリポジトリに存在する必要があります。

アーティファクトの詳細 (例を含む) については、「[アクション間でのアーティファクトとファイルの共有](workflows-working-artifacts.md)」を参照してください。

対応する UI: [設定] タブ/**[アーティファクト - オプション]**

## Variables - input
<a name="render.ecs.inputs.variables"></a>

(*ECSRenderTaskDefinition*/Inputs/**Variables**)

(必須)

アクションで使用する入力変数を定義する名前と値のペアのシーケンスを指定します。変数名に使用できるのは、英数字 (a～z、A～Z、0～9)、ハイフン (-)、アンダースコア (\$1) のみです。スペースは使用できません。引用符を使用して、変数名で特殊文字とスペースを有効にすることはできません。

変数の詳細 (例を含む) については、「[ワークフローでの変数の使用](workflows-working-with-variables.md)」を参照してください。

対応する UI: [入力] タブ/**[変数 - オプション]**

## Configuration
<a name="render.ecs.configuration"></a>

(*ECSRenderTaskDefinition*/**Configuration**)

(必須)

アクションの設定プロパティを定義できるセクション。

対応する UI: **[設定]** タブ

## task-definition
<a name="render.ecs.task.definition"></a>

(*ECSRenderTaskDefinition*/Configuration/**task-definition**)

(必須)

既存のタスク定義ファイルへのパスを指定します。ファイルがソースリポジトリに存在する場合、パスはソースリポジトリのルートフォルダに相対します。ファイルが以前のワークフローアクションのアーティファクトに存在する場合、パスはアーティファクトルートフォルダを基準としています。タスク定義ファイルの詳細については、「*Amazon Elastic Container Service デベロッパーガイド*」の「[タスク定義](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/Welcome.html#welcome-task-definitions)」 を参照してください。

対応する UI: [設定] タブ/**[タスク定義]**

## container-definition-name
<a name="render.ecs.container.name"></a>

(*ECSRenderTaskDefinition*/Configuration/**container-definition-name**)

(必須)

Docker イメージを実行するコンテナの名前を指定します。この名前はタスク定義ファイルの `containerDefinitions`、`name`フィールドにあります。詳細については、「*Amazon Elastic Container Service デベロッパーガイド*」の「[名前](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html#container_definition_name)」を参照してください。

対応する UI: [設定] タブ/**[コンテナ名]**

## image
<a name="render.ecs.image"></a>

(*ECSRenderTaskDefinition*/Configuration/**image**)

(必須)

**Amazon ECS タスク定義のレンダリング**アクションでタスク定義ファイルに追加する Docker イメージの名前を指定します。アクションは、タスク定義ファイルの `containerDefinitions`、`image`フィールドにこの名前を追加します。値が `image` フィールドに既に存在する場合、アクションは値を上書きします。イメージ名には変数を含めることができます。

例:

`MyDockerImage:${WorkflowSource.CommitId}` を指定すると、アクションによって `MyDockerImage:commit-id` がタスク定義ファイルに追加されます。ここで、*commit-id* はワークフローによって実行時に生成されるコミット ID です。

`my-ecr-repo/image-repo:$(date +%m-%d-%y-%H-%m-%s)` を指定すると、アクションによって、*my-ecr-repo*/image-repo:*date \$1%m-%d-%y-%H-%m-%s* がタスク定義ファイルに追加されます。ここで、*my-ecr-repo* は Amazon Elastic Container Registry (ECR) の URI であり、*date \$1%m-%d-%y-%H-%m-%s* はワークフローによって実行時に生成される `month-day-year-hour-minute-second` 形式のタイムスタンプです。

`image` の詳細については、「*Amazon Elastic Container Service デベロッパーガイド*」の「[イメージ](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html#container_definition_image)」を参照してください。変数の詳細については、「[ワークフローでの変数の使用](workflows-working-with-variables.md)」を参照してください。

対応する UI: [設定] タブ/**[イメージ名]**

## environment-variables
<a name="render.ecs.environment.variables"></a>

(*ECSRenderTaskDefinition*/Configuration/**environment-variables**)

(必須)

**Amazon ECS タスク定義のレンダリング**アクションでタスク定義ファイルに追加する環境変数を指定します。アクションは、タスク定義ファイルの `containerDefinitions`、`environment`フィールドに変数を追加します。変数がファイル内に既に存在する場合、アクションは既存の変数の値を上書きし、新しい変数を追加します。Amazon ECS の環境変数の詳細については、「*Amazon Elastic Container Service デベロッパーガイド*」の「[環境変数の指定](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/taskdef-envfiles.html)」を参照してください。

対応する UI: [設定] タブ/**[環境変数 - オプション]**

## Outputs
<a name="render.ecs.outputs"></a>

(*ECSRenderTaskDefinition*/**Outputs**)

(必須)

ワークフローの実行中にアクションによって出力されるデータを定義します。

対応する UI: **[出力]** タブ

## Artifacts
<a name="render.ecs.outputs.artifacts"></a>

(*ECSRenderTaskDefinition*/Outputs/**Artifacts**)

(必須)

アクションによって生成されたアーティファクトを指定します。このアーティファクトは、他のアクションの入力として参照できます。

アーティファクトの詳細 (例を含む) については、「[アクション間でのアーティファクトとファイルの共有](workflows-working-artifacts.md)」を参照してください。

対応する UI: [出力] タブ/**[アーティファクト]**

## Name
<a name="render.ecs.outputs.artifacts.name"></a>

(*ECSRenderTaskDefinition*/Outputs/Artifacts/**Name**)

(必須)

更新されたタスク定義ファイルを含むアーティファクトの名前を指定します。デフォルト値は `MyTaskDefinitionArtifact` です。次に、このアーティファクトを **Amazon ECS にデプロイ**アクションへの入力として指定する必要があります。このアーティファクトを **Amazon ECS にデプロイ**アクションへの入力として追加する方法については、「[例: Amazon ECS taskdef を変更する](render-ecs-action-example-workflow.md)」を参照してください。

対応する UI: [出力] タブ/[アーティファクト[/**[名前]**

## Files
<a name="render.ecs.outputs.artifacts.files"></a>

(*ECSRenderTaskDefinition*/Outputs/Artifacts/**Files**)

(必須)

アーティファクトに含めるファイルを指定します。`task-definition-*` を指定して、更新されたタスク定義ファイル (`task-definition-` で始まる) を含める必要があります。

対応する UI: [出力] タブ/[アーティファクト]/**[ファイル]**

## Variables
<a name="render.ecs.outputs.variables"></a>

(*ECSRenderTaskDefinition*/Outputs/**Variables**)

(必須)

レンダリングアクションで設定する変数の名前を指定します。レンダリングアクションは、この変数の値を更新されたタスク定義ファイルの名前 (例: `task-definition-random-string.json`) に設定します。次に、**Amazon ECS へのデプロイ**アクションの**タスク定義** (ビジュアルエディタ) または `task-definition` (YAML エディタ) プロパティに、この変数を指定する必要があります。この変数を **Amazon ECS へのデプロイ**アクションに追加する方法については、「[例: Amazon ECS taskdef を変更する](render-ecs-action-example-workflow.md)」を参照してください。

デフォルト: `task-definition`

対応する UI: [出力] タブ/[変数]/**[名前]** フィールド