

A Amazon não CodeCatalyst está mais aberta a novos clientes. Os clientes atuais podem continuar usando o serviço normalmente. Para obter mais informações, consulte [Como migrar do CodeCatalyst](migration.md).

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Modificação de uma definição de tarefa do Amazon ECS
<a name="render-ecs-action"></a>

Esta seção descreve como atualizar o `image` campo em um arquivo de [definição de tarefa do Amazon Elastic Container Service (Amazon ECS) usando](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/Welcome.html#welcome-task-definitions) um fluxo de trabalho. CodeCatalyst Para fazer isso, você deve adicionar a ação **Renderizar definição de tarefa do Amazon ECS** ao seu fluxo de trabalho. Essa ação atualiza o campo de imagem no arquivo de definição de tarefa com um nome de imagem do Docker fornecido pelo seu fluxo de trabalho no runtime.

**nota**  
Você também pode usar esta ação para atualizar o campo `environment` da definição de tarefa com variáveis de ambiente.

**Topics**
+ [Quando usar essa ação](#render-ecs-action-when-to-use)
+ [Como a ação “Renderizar definição de tarefa do Amazon ECS” funciona](#render-ecs-action-how-it-works)
+ [Imagem de runtime usada pela ação “Renderizar definição de tarefa do Amazon ECS”](#render-ecs-action-runtime)
+ [Exemplo: modificar uma definição de tarefa do Amazon ECS](render-ecs-action-example-workflow.md)
+ [Adicionar a ação “Renderizar definição de tarefa do Amazon ECS”](render-ecs-action-add.md)
+ [Visualização do arquivo de definição de tarefa atualizado](render-ecs-action-view.md)
+ [Variáveis de “Renderizar definição de tarefa do Amazon ECS”](render-ecs-action-variables.md)
+ [Ação YAML “Renderizar definição de tarefa do Amazon ECS”](render-ecs-action-ref.md)

## Quando usar essa ação
<a name="render-ecs-action-when-to-use"></a>

Use essa ação se você tiver um fluxo de trabalho que cria e marca uma imagem do Docker com conteúdo dinâmico, como um ID de confirmação ou carimbo de data/hora. 

Não use essa ação se o arquivo de definição de tarefa tiver um valor de imagem que permanece sempre o mesmo. Nesse caso, você pode inserir manualmente o nome da sua imagem no arquivo de definição de tarefa.

## Como a ação “Renderizar definição de tarefa do Amazon ECS” funciona
<a name="render-ecs-action-how-it-works"></a>

Você deve usar a ação **Renderizar definição de tarefa do Amazon ECS** com as ações **Compilar** e **Implantar no Amazon ECS** em seu fluxo de trabalho. Juntas, essas ações funcionam da seguinte forma:

1. A ação de **criação** cria sua imagem do Docker e a marca com um nome, um ID de confirmação, um carimbo de data/hora ou outro conteúdo dinâmico. Por exemplo, sua ação de criação pode ser semelhante a esta:

   ```
   MyECSWorkflow
     Actions:
       BuildAction:
         Identifier: aws/build@v1
         ...
         Configuration:
           Steps:
           # Build, tag, and push the Docker image...
             - Run: docker build -t MyDockerImage:${WorkflowSource.CommitId} .
             ...
   ```

   No código anterior, a diretiva `docker build -t` indica compilar a imagem do Docker e marcá-la com o ID de confirmação no runtime da ação. O nome da imagem gerada pode ser semelhante a este:

   `MyDockerImage:a37bd7e`

1. A ação **Renderizar definição de tarefa do Amazon ECS** adiciona o nome da imagem gerada dinamicamente, `MyDockerImage:a37bd7e`, ao seu arquivo de definição de tarefa, da seguinte forma:

   ```
   {
       "executionRoleArn": "arn:aws:iam::account_ID:role/codecatalyst-ecs-task-execution-role",
       "containerDefinitions": [
           {
               "name": "codecatalyst-ecs-container",
               "image":  MyDockerImage:a37bd7e, 
               "essential": true,
               ...
               "portMappings": [
                   {
                       "hostPort": 80,
                       "protocol": "tcp",
                       "containerPort": 80
                   }
               ]
           }
       ],
   ...
   }
   ```

   Opcionalmente, você também pode fazer com que a ação **Renderizar definição de tarefa do Amazon ECS** adicione variáveis de ambiente à definição de tarefa, assim:

   ```
   {
     "executionRoleArn": "arn:aws:iam::account_ID:role/codecatalyst-ecs-task-execution-role",
     "containerDefinitions": [
       {
         "name": "codecatalyst-ecs-container",
         "image":  MyDockerImage:a37bd7e,
         ...
         "environment": [
           {
             name": "ECS_LOGLEVEL",
             value": "info"
           }
         ]
       }
     ],
   ...
   }
   ```

   Para ter mais informações sobre as variáveis ​​de ambiente, consulte [Especificar variáveis de ambiente](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/taskdef-envfiles.html) no *Guia do desenvolvedor do Amazon Elastic Container Service*.

1. A ação **Implantar no Amazon ECS** registra o arquivo de definição de tarefa atualizado no Amazon ECS. O registro do arquivo de definição de tarefa atualizado implanta a nova imagem, `MyDockerImage:a37bd7e` no Amazon ECS.

## Imagem de runtime usada pela ação “Renderizar definição de tarefa do Amazon ECS”
<a name="render-ecs-action-runtime"></a>

A ação **Renderizar definição de tarefa do Amazon ECS** é executada em uma [imagem de novembro de 2022](build-images.md#build.previous-image). Para obter mais informações, consulte [Imagens ativas](build-images.md#build-curated-images).

# Exemplo: modificar uma definição de tarefa do Amazon ECS
<a name="render-ecs-action-example-workflow"></a>

Veja a seguir um exemplo de um fluxo de trabalho completo que inclui a ação **Renderizar definição de tarefa do Amazon ECS**, junto com ações de compilação e implantação. O objetivo do fluxo de trabalho é compilar e implantar uma imagem do Docker em seu cluster do Amazon ECS. O fluxo de trabalho consiste nos seguintes blocos de compilação que são executados sequencialmente:
+ Um **gatilho**: esse gatilho inicia a execução automática do fluxo de trabalho quando você envia uma alteração ao seu repositório de origem. Para ter mais informações sobre gatilhos, consulte [Início da execução automática de um fluxo de trabalho usando gatilhos](workflows-add-trigger.md). 
+ Uma ação de **criação** (`BuildDocker`) – No gatilho, a ação compila a imagem do Docker usando o Dockerfile, a marca com um ID de confirmação e envia a imagem para o Amazon ECR. Para ter mais informações sobre a ação de criação, consulte [Criação com fluxos de trabalho](build-workflow-actions.md).
+ Uma ação **Renderizar definição de tarefa do Amazon ECS** (`RenderTaskDef`): na realização da ação de criação, essa ação atualiza um `taskdef.json` existente, localizado na raiz do repositório de origem, com um valor de campo `image` que inclui o ID de confirmação correto. O arquivo atualizado é salvo com um novo nome de arquivo (`task-definition-random-string.json`) e, depois, cria um artefato de saída que contém esse arquivo. A ação de renderização também gera uma variável chamada `task-definition` e a define como o nome do novo arquivo de definição de tarefa. O artefato e a variável serão usados na ação de implantação, que será a seguir.
+ Uma ação **Implantar no Amazon ECS** (`DeployToECS`) – Ao concluir a ação **Renderizar definição de tarefa do Amazon ECS**, a ação **Implantar no Amazon ECS** procura o artefato de saída gerado pela ação de renderização (`TaskDefArtifact`), encontra o arquivo `task-definition-random-string.json` dentro dele e o registra no seu serviço do Amazon ECS. Em seguida, o serviço do Amazon ECS segue as instruções no arquivo `task-definition-random-string.json` para executar as tarefas do Amazon ECS – e os contêineres de imagem do Docker associados – dentro do seu cluster do Amazon ECS. 

```
Name: codecatalyst-ecs-workflow
SchemaVersion: 1.0

Triggers:
  - Type: PUSH
    Branches:
      - main
Actions:
  BuildDocker:
    Identifier: aws/build@v1
    Environment:
      Name: codecatalyst-ecs-environment
      Connections:
        - Name: codecatalyst-account-connection
          Role: codecatalyst-ecs-build-role
    Inputs:
      Variables:
        - Name: REPOSITORY_URI
          Value: 111122223333.dkr.ecr.us-east-2.amazonaws.com/codecatalyst-ecs-image-repo
        - Name: IMAGE_TAG
          Value: ${WorkflowSource.CommitId}
    Configuration:
      Steps:
        #pre_build:
        - Run: echo Logging in to Amazon ECR...
        - Run: aws --version
        - Run: aws ecr get-login-password --region us-east-2 | docker login --username AWS --password-stdin 111122223333.dkr.ecr.us-east-2.amazonaws.com
        #build:
        - Run: echo Build started on `date`
        - Run: echo Building the Docker image...
        - Run: docker build -t $REPOSITORY_URI:latest .
        - Run: docker tag $REPOSITORY_URI:latest $REPOSITORY_URI:$IMAGE_TAG
        #post_build:
        - Run: echo Build completed on `date`
        - Run: echo Pushing the Docker images...
        - Run: docker push $REPOSITORY_URI:latest
        - Run: docker push $REPOSITORY_URI:$IMAGE_TAG
        
  RenderTaskDef:
    DependsOn: 
      - BuildDocker
    Identifier: aws/ecs-render-task-definition@v1
    Inputs:
      Variables:
        - Name: REPOSITORY_URI
          Value: 111122223333.dkr.ecr.us-east-2.amazonaws.com/codecatalyst-ecs-image-repo
        - Name: IMAGE_TAG
          Value: ${WorkflowSource.CommitId}
    Configuration:      
      task-definition: taskdef.json
      container-definition-name: codecatalyst-ecs-container
      image: $REPOSITORY_URI:$IMAGE_TAG 
    # The output artifact contains the updated task definition file. 
    # The new file is prefixed with 'task-definition'.
    # The output variable is set to the name of the updated task definition file. 
    Outputs:
      Artifacts:
        - Name: TaskDefArtifact
          Files: 
            - "task-definition*"
      Variables:
        - task-definition
        
  DeployToECS:
    Identifier: aws/ecs-deploy@v1
    Environment:
      Name: codecatalyst-ecs-environment
      Connections:
        - Name: codecatalyst-account-connection
          Role: codecatalyst-ecs-deploy-role
    #Input artifact contains the updated task definition file.
    Inputs:
      Sources: []
      Artifacts:
        - TaskDefArtifact
    Configuration:
      region: us-east-2
      cluster: codecatalyst-ecs-cluster
      service: codecatalyst-ecs-service
      task-definition: ${RenderTaskDef.task-definition}
```

# Adicionar a ação “Renderizar definição de tarefa do Amazon ECS”
<a name="render-ecs-action-add"></a>

 Use as instruções a seguir para adicionar a ação **Renderizar definição de tarefa do Amazon ECS** ao seu fluxo de trabalho. 

**Pré-requisito**  
Antes de começar, verifique se você tem um fluxo de trabalho que inclua uma ação de criação que gere dinamicamente uma imagem do Docker. Consulte o [fluxo de trabalho de exemplo](render-ecs-action-example-workflow.md) anterior para saber detalhes.

------
#### [ Visual ]

**Como adicionar a ação “Renderizar definição de tarefa do Amazon ECS” usando o editor visual**

1. Abra o CodeCatalyst console em [https://codecatalyst.aws/](https://codecatalyst.aws/).

1. Selecione o projeto.

1. No painel de navegação, escolha **CI/CD** e **Fluxos de trabalho**.

1. Selecione o nome do fluxo de trabalho. É possível filtrar pelo nome do repositório ou da ramificação de origem em que o fluxo de trabalho está definido, ou filtrar pelo nome ou o status do fluxo de trabalho.

1. Escolha **Editar**.

1. Selecione **Visual**.

1. No canto superior esquerdo, selecione **\$1 Ações** para abrir o catálogo de ações.

1. **Na lista suspensa, escolha Amazon. CodeCatalyst**

1. Pesquise a ação **Renderizar definição de tarefa do Amazon ECS** e faça o seguinte:
   + Selecione o sinal de adição (**\$1**) para adicionar a ação ao diagrama do fluxo de trabalho e abrir seu painel de configuração.

     Ou
   + Selecione a opção **Renderizar definição de tarefa do Amazon ECS**. A caixa de diálogo de detalhes da ação é exibida. Nessa caixa de diálogo:
     + (Opcional) Selecione **Visualizar origem** para [visualizar o código-fonte da ação](workflows-view-source.md#workflows-view-source.title).
     + Selecione **Adicionar ao fluxo de trabalho** para adicionar a ação ao diagrama do fluxo de trabalho e abrir seu painel de configuração.

1. Nas guias **Entradas** e **Configuração**, preencha os campos de acordo com suas necessidades. Para ver uma descrição de cada campo, consulte [Ação YAML “Renderizar definição de tarefa do Amazon ECS”](render-ecs-action-ref.md). Essa referência fornece informações detalhadas sobre cada campo (e o valor da propriedade YAML correspondente) conforme elas aparecem nos editores YAML e visual.

1. (Opcional) Selecione **Validar** para validar o código YAML do fluxo de trabalho antes de confirmar.

1. Selecione **Confirmar**, insira uma mensagem de confirmação e escolha **Confirmar** novamente.

------
#### [ YAML ]

**Para adicionar a ação “Renderizar definição de tarefa do Amazon ECS” usando o editor YAML**

1. Abra o CodeCatalyst console em [https://codecatalyst.aws/](https://codecatalyst.aws/).

1. Selecione o projeto.

1. No painel de navegação, escolha **CI/CD** e **Fluxos de trabalho**.

1. Selecione o nome do fluxo de trabalho. É possível filtrar pelo nome do repositório ou da ramificação de origem em que o fluxo de trabalho está definido, ou filtrar pelo nome ou o status do fluxo de trabalho.

1. Escolha **Editar**.

1. Selecione **YAML**.

1. No canto superior esquerdo, selecione **\$1 Ações** para abrir o catálogo de ações.

1. **Na lista suspensa, escolha Amazon. CodeCatalyst**

1. Pesquise a ação **Renderizar definição de tarefa do Amazon ECS** e faça o seguinte:
   + Selecione o sinal de adição (**\$1**) para adicionar a ação ao diagrama do fluxo de trabalho e abrir seu painel de configuração.

     Ou
   + Selecione a opção **Renderizar definição de tarefa do Amazon ECS**. A caixa de diálogo de detalhes da ação é exibida. Nessa caixa de diálogo:
     + (Opcional) Selecione **Visualizar origem** para [visualizar o código-fonte da ação](workflows-view-source.md#workflows-view-source.title).
     + Selecione **Adicionar ao fluxo de trabalho** para adicionar a ação ao diagrama do fluxo de trabalho e abrir seu painel de configuração.

1. Modifique as propriedades no código YAML de acordo com as suas necessidades. Uma explicação de cada propriedade disponível é fornecida em [Ação YAML “Renderizar definição de tarefa do Amazon ECS”](render-ecs-action-ref.md).

1. (Opcional) Selecione **Validar** para validar o código YAML do fluxo de trabalho antes de confirmar.

1. Selecione **Confirmar**, insira uma mensagem de confirmação e escolha **Confirmar** novamente.

------

**Próximas etapas**

Depois de adicionar a ação de renderização, adicione a ação **Implantar no Amazon ECS** ao seu fluxo de trabalho seguindo as instruções em [Implantação no Amazon ECS com um fluxo de trabalho](deploy-action-ecs.md). Ao adicionar a ação de implantação, faça o seguinte:

1. Na guia **Entradas** da ação de implantação, em **Artefatos - opcional**, selecione o artefato que foi gerado pela ação de renderização. Ele contém o arquivo de definição de tarefa atualizado.

   Para obter mais informações sobre artefatos, consulte [Compartilhar artefatos e arquivos entre ações](workflows-working-artifacts.md).

1. Na guia **Configuração** da ação de implantação, no campo **Definição da tarefa**, especifique a seguinte variável de ação: `${action-name.task-definition}` onde *action-name* está o nome da sua ação de renderização, por exemplo,`RenderTaskDef`. A ação de renderização define essa variável com o novo nome do arquivo de definição da tarefa.

   Para ter mais informações sobre variáveis, consulte [Uso de variáveis em fluxos de trabalho](workflows-working-with-variables.md).

   Para ter mais informações sobre como configurar a ação de implantação, consulte o [exemplo de fluxo de trabalho](render-ecs-action-example-workflow.md) anterior.

# Visualização do arquivo de definição de tarefa atualizado
<a name="render-ecs-action-view"></a>

Você pode visualizar o nome e o conteúdo do arquivo de definição de tarefa atualizado.

**Para visualizar o nome do arquivo de definição de tarefa atualizado, depois que a ação **Renderizar definição de tarefa do Amazon ECS** o tiver processado.**

1. Encontre a execução que inclui uma ação de renderização concluída:

   1. Abra o CodeCatalyst console em [https://codecatalyst.aws/](https://codecatalyst.aws/).

   1. Selecione o projeto.

   1. No painel de navegação, escolha **CI/CD** e **Fluxos de trabalho**.

   1. Selecione o nome do fluxo de trabalho. É possível filtrar pelo nome do repositório ou da ramificação de origem em que o fluxo de trabalho está definido, ou filtrar pelo nome ou o status do fluxo de trabalho.

   1. Escolha uma execução que inclua a ação de renderização concluída.

1. No diagrama do fluxo de trabalho, selecione a ação de renderização.

1. Selecione **Saídas**.

1. Selecione **Variáveis**.

1. O nome do arquivo de definição de tarefa é exibido. Ele é semelhante a `task-definition--259-0a2r7gxlTF5X-.json`.

**Para visualizar o conteúdo do arquivo de definição de tarefa atualizado**

1. Encontre a execução que inclui uma ação de renderização concluída:

   1. Abra o CodeCatalyst console em [https://codecatalyst.aws/](https://codecatalyst.aws/).

   1. Selecione o projeto.

   1. No painel de navegação, escolha **CI/CD** e **Fluxos de trabalho**.

   1. Selecione o nome do fluxo de trabalho. É possível filtrar pelo nome do repositório ou da ramificação de origem em que o fluxo de trabalho está definido, ou filtrar pelo nome ou o status do fluxo de trabalho.

   1. Escolha uma execução que inclua a ação de renderização concluída.

1. Na execução do fluxo de trabalho, na parte superior, ao lado de **Visual** e **YAML**, selecione **Saídas do fluxo de trabalho**.

1. Na seção **Artefatos**, selecione **Baixar** ao lado do artefato que contém o arquivo de definição de tarefa atualizado. Esse artefato terá uma coluna **Produzido por** definida com o nome da sua ação de renderização.

1. Abra o arquivo .zip para visualizar o arquivo .json de definição de tarefa.

# Variáveis de “Renderizar definição de tarefa do Amazon ECS”
<a name="render-ecs-action-variables"></a>

A ação **Renderizar definição de tarefa do Amazon ECS** produz e define as seguintes variáveis em runtime. Elas são conhecidas como *variáveis predefinidas*.

Para ter informações sobre como referenciar essas variáveis em um fluxo de trabalho, consulte [Usar variáveis predefinidas](workflows-using-predefined-variables.md).


| Chave | Valor | 
| --- | --- | 
|  task-definition  |  O nome dado ao arquivo de definição de tarefa que foi atualizado pela ação **Renderizar definição de tarefa do Amazon ECS**. O nome segue o formato `task-definition-random-string.json`. Exemplo: `task-definition--259-0a2r7gxlTF5Xr.json`  | 

# Ação YAML “Renderizar definição de tarefa do Amazon ECS”
<a name="render-ecs-action-ref"></a>

Veja a seguir a definição YAML da ação **Renderizar definição de tarefa do Amazon ECS**. Para saber como usar essa ação, consulte [Modificação de uma definição de tarefa do Amazon ECS](render-ecs-action.md).

Essa definição de ação existe como uma seção dentro de um arquivo de definição de fluxo de trabalho mais amplo. Para obter mais informações sobre esse arquivo, consulte [Definição do YAML do fluxo de trabalho](workflow-reference.md).

**nota**  
A maioria das propriedades YAML a seguir tem elementos de interface de usuário correspondentes no editor visual. Para pesquisar um elemento de interface, use **Ctrl\$1F**. O elemento será listado com a propriedade YAML associada.

```
# The workflow definition starts here.
# See Propriedades de nível superior 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>

(Obrigatório)

Especifique o nome da ação. Todos os nomes de ação devem ser exclusivos no fluxo de trabalho. Os nomes de ação são limitados a caracteres alfanuméricos (a-z, A-Z, 0-9), hifens (-) e sublinhados (\$1). Não são permitidos espaços. Não é possível usar aspas para habilitar caracteres especiais e espaços nos nomes de ação.

Padrão: `ECSRenderTaskDefinition_nn`.

Interface de usuário correspondente: guia Configuração/**Nome da ação**

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

(*ECSRenderTaskDefinition*/**Identifier**)

(Obrigatório)

Identifica a ação. Não altere essa propriedade, a menos que você queira alterar a versão. Para obter mais informações, consulte [Especificação da versão da ação a ser usada](workflows-action-versions.md).

Padrão: `aws/ecs-render-task-definition@v1`.

**UI correspondente: diagrama de fluxo de trabalho/ ECSRenderTaskDefinition \$1nn/ aws/ @v1 label ecs-render-task-definition**

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

(*ECSRenderTaskDefinition*/**DependsOn**)

(Optional)

Especifique uma ação, um grupo de ação ou um portão que deve ser executado com êxito para que essa ação seja executada.

Para ter mais informações sobre a funcionalidade “Depende de”, consulte [Sequenciar ações](workflows-depends-on.md).

Interface de usuário correspondente: guia Entradas/**Depende de - opcional**

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

(*ECSRenderTaskDefinition*/**Compute**)

(Optional)

O mecanismo de computação usado para executar as ações de fluxo de trabalho. É possível especificar a computação em nível de fluxo de trabalho ou em nível de ação, mas não em ambos. Quando especificada em nível de fluxo de trabalho, a configuração de computação se aplica a todas as ações definidas no fluxo de trabalho. Em nível de fluxo de trabalho, também é possível realizar várias ações na mesma instância. Para obter mais informações, consulte [Compartilhamento de computação entre ações](compute-sharing.md).

Interface de usuário correspondente: *nenhuma*

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

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

(Obrigatório se [Compute](#render.ecs.computename) for incluído)

O tipo do mecanismo de computação. É possível usar um dos seguintes valores:
+ **EC2**(editor visual) ou `EC2` (editor YAML)

  Otimizado para flexibilidade durante as execuções de ação.
+ **Lambda** (editor visual) ou `Lambda` (editor YAML)

  Velocidades otimizadas de inicialização da ação.

Para obter informações sobre tipos de dados, consulte [Tipos de computação](workflows-working-compute.md#compute.types).

Interface de usuário correspondente: guia Configuração/**Tipo de computação**

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

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

(Optional)

Especifique a máquina ou a frota que executará o fluxo de trabalho ou as ações de fluxo de trabalho. Com frotas sob demanda, quando uma ação é iniciada, o fluxo de trabalho provisiona os recursos necessários e as máquinas são destruídas quando a ação termina. Exemplos de frota sob demanda: `Linux.x86-64.Large`, `Linux.x86-64.XLarge`. Para ter mais informações sobre frotas sob demanda, consulte [Propriedades da frota sob demanda](workflows-working-compute.md#compute.on-demand).

Com frotas provisionadas, você configura um conjunto de máquinas dedicadas para realizar as ações do fluxo de trabalho. Essas máquinas permanecem ociosas, prontas para processar ações imediatamente. Para ter mais informações sobre frotas provisionadas, consulte [Propriedades da frota provisionada](workflows-working-compute.md#compute.provisioned-fleets).

Se `Fleet` for omitido, o padrão será `Linux.x86-64.Large`.

Interface de usuário correspondente: guia Configuração/**Frota de computação**

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

(*ECSRenderTaskDefinition*/**Timeout**)

(Optional)

Especifique a quantidade de tempo em minutos (editor YAML) ou horas e minutos (editor visual) que a ação pode ser executada antes de CodeCatalyst finalizar a ação. O mínimo é de cinco minutos e o máximo está descrito em [Cotas para fluxos de trabalho em CodeCatalyst](workflows-quotas.md). O tempo limite padrão é igual ao tempo limite máximo.

Interface de usuário correspondente: guia Configuração/**Tempo limite - opcional**

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

(*ECSRenderTaskDefinition*/**Inputs**)

(Optional)

A seção `Inputs` define os dados que `ECSRenderTaskDefinition` precisa durante a execução de um fluxo de trabalho.

**nota**  
Somente uma entrada (uma origem ou um artefato) é permitida por ação **Renderizar definição de tarefa do Amazon ECS**. As variáveis não são contadas nesse total.

Interface de usuário correspondente: guia **Entradas**

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

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

(Obrigatório se o arquivo de definição de tarefas estiver armazenado em um repositório de origem)

Se seu arquivo de definição de tarefa estiver armazenado em um repositório de origem, especifique o rótulo do repositório de origem. Atualmente, o único rótulo compatível é `WorkflowSource`.

Se seu arquivo de definição de tarefa não estiver em um repositório de origem, ele deverá residir em um artefato gerado por outra ação.

Para obter mais informações sobre fontes, consulte [Conectar repositórios de origem aos fluxos de trabalho](workflows-sources.md).

Interface de usuário correspondente: guia Entradas/**Origens - opcional**

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

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

(Obrigatório se o arquivo de definição de tarefa estiver armazenado em um [artefato de saída](workflows-working-artifacts-output.md) de uma ação anterior)

Se o arquivo de definição de tarefa que você deseja implantar estiver em um artefato gerado por uma ação anterior, especifique esse artefato aqui. Se seu arquivo de definição de tarefa não estiver em um artefato, ele deverá residir em seu repositório de origem.

Para ter mais informações sobre artefatos, inclusive exemplos, consulte [Compartilhar artefatos e arquivos entre ações](workflows-working-artifacts.md).

Interface de usuário correspondente: guia Configuração/**Artefatos - opcional**

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

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

(Obrigatório)

Especifique uma sequência de name/value pares que defina as variáveis de entrada que você deseja disponibilizar para a ação. Os nomes de variável são limitados a caracteres alfanuméricos (a-z, A-Z, 0-9), hifens (-) e sublinhados (\$1). Não são permitidos espaços. Não é possível usar aspas para habilitar caracteres especiais e espaços nos nomes de variável.

Para ter mais informações sobre variáveis, inclusive exemplos, consulte [Uso de variáveis em fluxos de trabalho](workflows-working-with-variables.md).

Interface de usuário correspondente: guia Entradas/**Variáveis - opcional**

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

(*ECSRenderTaskDefinition*/**Configuration**)

(Obrigatório)

Uma seção na qual você pode definir as propriedades de configuração da ação.

Interface de usuário correspondente: guia **Configuração**

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

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

(Obrigatório)

Especifique o caminho para um arquivo de definição de tarefa existente. Se o arquivo residir em seu repositório de origem, o caminho é relativo à pasta raiz do repositório de origem. Se o arquivo residir em um artefato de uma ação anterior do fluxo de trabalho, o caminho é relativo à pasta raiz do artefato. Para ter mais informações sobre os arquivos de definição de tarefa, consulte [Definições de tarefa](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/Welcome.html#welcome-task-definitions) no *Guia do desenvolvedor do Amazon Elastic Container Service*.

Interface de usuário correspondente: guia Configuração/**Definição de tarefa**

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

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

(Obrigatório)

Especifique o nome do contêiner em que sua imagem do Docker será executada. Você pode encontrar esse nome em `containerDefinitions`, campo `name` em seu arquivo de definição de tarefa. Para ter mais informações, consulte [Nome](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html#container_definition_name) no *Guia do desenvolvedor do Amazon Elastic Container Service*.

Interface de usuário correspondente: guia Configuração/**Nome do contêiner**

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

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

(Obrigatório)

Especifique o nome da imagem do Docker que você deseja que a ação **Renderizar definição de tarefa do Amazon ECS** adicione ao seu arquivo de definição de tarefas. A ação adiciona esse nome a `containerDefinitions`, campo `image` em seu arquivo de definição de tarefa. Se um valor já existir no campo `image`, a ação o substituirá. Você pode incluir variáveis no nome da imagem.

Exemplos:

Se você especificar`MyDockerImage:${WorkflowSource.CommitId}`, a ação será adicionada `MyDockerImage:commit-id` ao arquivo de definição da tarefa, onde *commit-id* está uma ID de confirmação gerada em tempo de execução pelo fluxo de trabalho.

Se você especificar`my-ecr-repo/image-repo:$(date +%m-%d-%y-%H-%m-%s)`, a ação adicionará *my-ecr-repo* /image-repo: *date \$1%m-%d-%y-%H-%m-%s* ao arquivo de definição da tarefa, onde *my-ecr-repo* é o URI de um Amazon Elastic Container Registry (ECR) e *date \$1%m-%d-%y-%H-%m-%s* é um timestamp no formato `month-day-year-hour-minute-second` gerado em tempo de execução pelo fluxo de trabalho.

Para ter mais informações sobre o campo `image`, consulte [Imagem](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task_definition_parameters.html#container_definition_image) no *Guia do desenvolvedor do Amazon Elastic Container Service*. Para ter mais informações sobre variáveis, consulte [Uso de variáveis em fluxos de trabalho](workflows-working-with-variables.md).

Interface de usuário correspondente: guia Configuração/**Nome da imagem**

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

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

(Obrigatório)

Especifique as variáveis ​​de ambiente que você deseja que a ação **Renderizar definição de tarefa do Amazon ECS** adicione ao seu arquivo de definição de tarefa. A ação adiciona as variáveis a `containerDefinitions`, campo `environment` em seu arquivo de definição de tarefa. Se as variáveis já existirem no arquivo, a ação substituirá os valores das variáveis existentes e adicionará quaisquer novas variáveis. Para ter mais informações sobre as variáveis ​​de ambiente do Amazon ECS, consulte [Especificar variáveis de ambiente](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/taskdef-envfiles.html) no *Guia do desenvolvedor do Amazon Elastic Container Service*.

Interface de usuário correspondente: guia Configuração/**Variáveis de ambiente – opcional**

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

(*ECSRenderTaskDefinition*/**Outputs**)

(Obrigatório)

Define os dados que são gerados pela ação durante a execução de um fluxo de trabalho.

Interface de usuário correspondente: guia **Saídas**

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

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

(Obrigatório)

Especifique os artefatos gerados pela ação. Você pode referenciar esses artefatos como entrada em outras ações.

Para ter mais informações sobre artefatos, inclusive exemplos, consulte [Compartilhar artefatos e arquivos entre ações](workflows-working-artifacts.md).

Interface de usuário correspondente: guia Saídas/**Artefatos**

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

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

(Obrigatório)

Especifique o nome do artefato que conterá o arquivo de definição de tarefa atualizado. O valor padrão é `MyTaskDefinitionArtifact`. Em seguida, você deve especificar esse artefato como entrada na ação **Implantar no Amazon ECS**. Para entender como adicionar esse artefato como entrada para a ação **Implantar no Amazon ECS**, consulte [Exemplo: modificar uma definição de tarefa do Amazon ECS](render-ecs-action-example-workflow.md).

Interface de usuário correspondente: guia Saídas/Artefatos/**Nome**

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

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

(Obrigatório)

Especifique os arquivos a serem incluídos no artefato. Você deve especificar `task-definition-*` para que o arquivo de definição de tarefa atualizado, que começa com `task-definition-`, seja incluído.

Interface de usuário correspondente: guia Saídas/Artefatos/**Arquivos**

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

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

(Obrigatório)

Especifique o nome de uma variável a ser definida pela ação de renderização. A ação de renderização definirá o valor dessa variável como o nome do arquivo de definição de tarefa atualizado (por exemplo, `task-definition-random-string.json`). Em seguida, você deve especificar essa variável na propriedade **Definição de tarefa** (editor visual) ou `task-definition` (editor yaml) da ação **Implantar no Amazon ECS**. Para entender como adicionar essa variável na ação **Implantar no Amazon ECS**, consulte [Exemplo: modificar uma definição de tarefa do Amazon ECS](render-ecs-action-example-workflow.md).

Padrão: `task-definition`

Interface de usuário correspondente: guia Saídas/Variáveis/**Nome**