

Aviso de fim do suporte: em 7 de outubro de 2026, AWS encerrará o suporte para AWS Proton. Depois de 7 de outubro de 2026, você não poderá mais acessar o AWS Proton console ou os AWS Proton recursos. Sua infraestrutura implantada permanecerá intacta. Para obter mais informações, consulte o Guia [AWS Proton de descontinuação e migração de serviços](https://docs.aws.amazon.com/proton/latest/userguide/proton-end-of-support.html).

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á.

# Atualizar um pipeline de serviço
<a name="ag-svc-pipeline-update"></a>

Aprenda a atualizar um pipeline AWS Proton de serviços e cancelar a atualização.

Um pipeline de serviços pertence a um serviço. Você só pode criar ou excluir um pipeline dentro do contexto das ações de [criação](ag-create-svc.md) e [exclusão](ag-svc-delete.md) do serviço.

Há quatro modos para atualizar um pipeline de serviço, conforme descrito na lista a seguir. Ao usar o AWS CLI, o `deployment-type` campo define o modo. Quando você usa o console, esses modos são mapeados para **Editar pipeline ** e **Atualizar para a versão recomendada**.

  
`NONE`  
Nesse modo, uma implantação *não* ocorre. Somente as ramificações de metadata solicitadas do são atualizadas.

  
`CURRENT_VERSION`  
Nesse modo, o pipeline de serviço é implantado e atualizado com a nova especificação fornecida por você. Somente ramificações solicitadas do são atualizadas. *Não* inclua parâmetros de versão secundária ou principal ao usar este `deployment-type`.

  
`MINOR_VERSION`  
Nesse modo, o pipeline de serviço é implantado e atualizado com a versão secundária publicada e recomendada (mais recente) da versão principal atual em uso por padrão. Você também pode especificar uma versão secundária diferente da versão principal atual em uso.

  
`MAJOR_VERSION`  
Nesse modo, o pipeline de serviço é implantado e atualizado com a versão principal e secundária publicada e recomendada (mais recente) do modelo atual por padrão. Você também pode especificar uma versão principal diferente que seja superior à versão principal em uso e uma versão secundária (opcional).

Você pode tentar cancelar a implantação de uma atualização do pipeline de serviço, se `deploymentStatus` for o caso`IN_PROGRESS`. AWS Proton tentativas de cancelar a implantação. O cancelamento bem-sucedido não é garantido.

Quando você cancela uma implantação de atualização, AWS Proton tenta cancelar a implantação conforme listado nas etapas a seguir.
+ Define o estado de implantação como `CANCELLING`.
+ Interrompe a implantação em andamento e exclui todos os novos recursos que foram criados pela implantação quando `IN_PROGRESS`.
+ Define o estado de implantação como `CANCELLED`.
+ Reverte o estado do recurso para o que era antes do início da implantação.

Para obter mais informações sobre o cancelamento da implantação de um pipeline de serviço, consulte [CancelServicePipelineDeployment](https://docs.aws.amazon.com/proton/latest/APIReference/API_CancelServicePipelineDeployment.html)a *Referência da AWS Proton API*.

**Use o console ou AWS CLI para fazer atualizações ou cancelar implantações de atualizações.**

------
#### [ Console de gerenciamento da AWS ]

**Atualize um pipeline de serviço usando o console conforme descrito nas etapas a seguir.**

1. No [console do AWS Proton](https://console.aws.amazon.com//proton/), selecione Serviços.

1. Na lista de serviços, escolha o nome do serviço para o qual deseja atualizar o pipeline.

1. Há duas guias na página de detalhes do serviço, **Visão geral** e **Pipeline**. Escolher **Pipeline**.

1. Se você quiser atualizar as especificações, escolha **Editar pipeline**, preencha cada formulário e escolha **Avançar** até concluir o formulário final e, em seguida, escolha **Atualizar pipeline**.

   Se você quiser atualizar para uma nova versão e houver um **ícone de informações** que indica que uma nova versão está disponível no **Modelo de pipeline**, escolha o nome da nova versão do modelo.

   1. Escolha **Atualizar para a versão recomendada**.

   1. Preencha cada formulário e escolha **Avançar** até preencher o formulário final e escolher **Atualizar**.

------
#### [ AWS CLI ]

**Atualize um pipeline de serviço para uma nova versão secundária, conforme mostrado nos seguintes exemplos de comandos e respostas da CLI.**

Quando você atualiza seu pipeline de serviço com uma `spec` modificada, você pode usar `"${Proton::CURRENT_VAL}"` para indicar quais valores de parâmetros devem ser preservados da `spec` original, se os valores existirem na `spec`. Use `get-service` para visualizar a `spec` original de um pipeline de serviço, conforme descrito em [Exibir dados do serviço](ag-svc-view.md).

O exemplo a seguir mostra como você pode usar a `"${Proton::CURRENT_VAL}"` em uma `spec`.

Especificação:

```
proton: ServiceSpec

pipeline:
  my_sample_pipeline_optional_input: "${Proton::CURRENT_VAL}"
  my_sample_pipeline_required_input: "${Proton::CURRENT_VAL}"

instances:
  - name: "my-instance"
    environment: "simple-env"
    spec:
      my_sample_service_instance_optional_input: "${Proton::CURRENT_VAL}"
      my_sample_service_instance_required_input: "${Proton::CURRENT_VAL}"
  - name: "my-other-instance"
    environment: "simple-env"
    spec:
      my_sample_service_instance_required_input: "789"
```

Comando: atualizar

```
$ aws proton update-service-pipeline \
    --service-name "{{simple-svc}}" \
    --spec "{{file://service-spec.yaml}}" \
    --template-major-version "{{1}}" \
    --template-minor-version "{{1}}" \
    --deployment-type "{{MINOR_VERSION}}"
```

Resposta:

```
{
    "pipeline": {
        "arn": "arn:aws:proton:region-id:123456789012:service/simple-svc/pipeline/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
        "createdAt": "2021-04-02T21:29:59.962000+00:00",
        "deploymentStatus": "IN_PROGRESS",
        "lastDeploymentAttemptedAt": "2021-04-02T21:39:28.991000+00:00",
        "lastDeploymentSucceededAt": "2021-04-02T21:29:59.962000+00:00",
        "spec": "proton: ServiceSpec\n\npipeline:\n  my_sample_pipeline_optional_input: \"abc\"\n  my_sample_pipeline_required_input: \"123\"\n\ninstances:\n  - name: \"my-instance\"\n    environment: \"MySimpleEnv\"\n    spec:\n      my_sample_service_instance_optional_input: \"def\"\n      my_sample_service_instance_required_input: \"456\"\n  - name: \"my-other-instance\"\n    environment: \"MySimpleEnv\"\n    spec:\n      my_sample_service_instance_required_input: \"789\"\n",
        "templateMajorVersion": "1",
        "templateMinorVersion": "0",
        "templateName": "svc-simple"
    }
}
```

Comando: obter e confirmar o status

```
$ aws proton get-service \
    --name "{{simple-svc}}"
```

Resposta:

```
{
    "service": {
        "arn": "arn:aws:proton:region-id:123456789012:service/simple-svc",
        "branchName": "main",
        "createdAt": "2021-04-02T21:29:59.962000+00:00",
        "lastModifiedAt": "2021-04-02T21:30:54.364000+00:00",
        "name": "simple-svc",
        "pipeline": {
            "arn": "arn:aws:proton:region-id:123456789012:service/simple-svc/pipeline",
            "createdAt": "2021-04-02T21:29:59.962000+00:00",
            "deploymentStatus": "SUCCEEDED",
            "lastDeploymentAttemptedAt": "2021-04-02T21:39:28.991000+00:00",
            "lastDeploymentSucceededAt": "2021-04-02T21:39:28.991000+00:00",
            "spec": "proton: ServiceSpec\n\npipeline:\n  my_sample_pipeline_optional_input: \"abc\"\n  my_sample_pipeline_required_input: \"123\"\n\ninstances:\n  - name: \"instance-one\"\n    environment: \"simple-env\"\n    spec:\n      my_sample_service_instance_optional_input: \"def\"\n      my_sample_service_instance_required_input: \"456\"\n  - name: \"my-other-instance\"\n    environment: \"simple-env\"\n    spec:\n      my_sample_service_instance_required_input: \"789\"\n",
            "templateMajorVersion": "1",
            "templateMinorVersion": "1",
            "templateName": "svc-simple"
        },
        "repositoryConnectionArn": "arn:aws:codestar-connections:region-id:123456789012:connection/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
        "repositoryId": "repo-name/myorg-myapp",
        "spec": "proton: ServiceSpec\n\npipeline:\n  my_sample_pipeline_optional_input: \"abc\"\n  my_sample_pipeline_required_input: \"123\"\n\ninstances:\n  - name: \"instance-one\"\n    environment: \"simple-env\"\n    spec:\n      my_sample_service_instance_optional_input: \"def\"\n      my_sample_service_instance_required_input: \"456\"\n  - name: \"my-other-instance\"\n    environment: \"simple-env\"\n    spec:\n      my_sample_service_instance_required_input: \"789\"\n",
        "status": "ACTIVE",
        "templateName": "svc-simple"
    }
}
```

------

------
#### [ Console de gerenciamento da AWS ]

**Cancele a implantação de um pipeline de serviço usando o console, conforme mostrado nas etapas a seguir.**

1. No [console do AWS Proton](https://console.aws.amazon.com//proton/), escolha **Serviços** no painel de navegação.

1. Na lista de serviços, escolha o nome do serviço que tem o pipeline com a atualização de implantação que você deseja cancelar.

1. Na página de detalhes do serviço selecione a guia **Pipeline**.

1. Se o status de implantação da atualização estiver **Em andamento**, na página de detalhes do pipeline de serviço, escolha **Cancelar implantação**.

1. Um modal pede que você confirme o cancelamento. Escolha **Cancelar implantação**.

1. O status de implantação da atualização será definido como **Cancelando** e, em seguida, **Cancelado** para concluir o cancelamento.

------
#### [ AWS CLI ]

**Cancele uma atualização de implantação do pipeline de serviço IN\_PROGRESS para a versão secundária 2, conforme mostrado nos seguintes exemplos de comandos e respostas da CLI.**

Uma condição de espera é incluída no modelo usado neste exemplo para que o cancelamento comece antes que a implantação da atualização seja bem-sucedida.

Comando: cancelar

```
$ aws proton cancel-service-pipeline-deployment \
    --service-name "{{simple-svc}}"
```

Resposta:

```
{
    "pipeline": {
        "arn": "arn:aws:proton:region-id:123456789012:service/simple-svc/pipeline",
        "createdAt": "2021-04-02T21:29:59.962000+00:00",
        "deploymentStatus": "CANCELLING",
        "lastDeploymentAttemptedAt": "2021-04-02T22:02:45.095000+00:00",
        "lastDeploymentSucceededAt": "2021-04-02T21:39:28.991000+00:00",
        "templateMajorVersion": "1",
        "templateMinorVersion": "1",
        "templateName": "svc-simple"
    }
}
```

Comando: obter e confirmar o status

```
$ aws proton get-service \
    --name "{{simple-svc}}"
```

Resposta:

```
{
    "service": {
        "arn": "arn:aws:proton:region-id:123456789012:service/simple-svc",
        "branchName": "main",
        "createdAt": "2021-04-02T21:29:59.962000+00:00",
        "lastModifiedAt": "2021-04-02T21:30:54.364000+00:00",
        "name": "simple-svc",
        "pipeline": {
            "arn": "arn:aws:proton:region-id:123456789012:service/simple-svc/pipeline",
            "createdAt": "2021-04-02T21:29:59.962000+00:00",
            "deploymentStatus": "CANCELLED",
            "deploymentStatusMessage": "User initiated cancellation.",
            "lastDeploymentAttemptedAt": "2021-04-02T22:02:45.095000+00:00",
            "lastDeploymentSucceededAt": "2021-04-02T21:39:28.991000+00:00",
            "spec": "proton: ServiceSpec\n\npipeline:\n  my_sample_pipeline_optional_input: \"abc\"\n  my_sample_pipeline_required_input: \"123\"\n\ninstances:\n  - name: \"instance-one\"\n    environment: \"simple-env\"\n    spec:\n      my_sample_service_instance_optional_input: \"def\"\n      my_sample_service_instance_required_input: \"456\"\n  - name: \"my-other-instance\"\n    environment: \"simple-env\"\n    spec:\n      my_sample_service_instance_required_input: \"789\"\n",
            "templateMajorVersion": "1",
            "templateMinorVersion": "1",
            "templateName": "svc-simple"
        },
        "repositoryConnectionArn": "arn:aws:codestar-connections:region-id:123456789012:connection/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111",
        "repositoryId": "repo-name/myorg-myapp",
        "spec": "proton: ServiceSpec\n\npipeline:\n  my_sample_pipeline_optional_input: \"abc\"\n  my_sample_pipeline_required_input: \"123\"\n\ninstances:\n  - name: \"instance-one\"\n    environment: \"simple-env\"\n    spec:\n      my_sample_service_instance_optional_input: \"def\"\n      my_sample_service_instance_required_input: \"456\"\n  - name: \"my-other-instance\"\n    environment: \"simple-env\"\n    spec:\n      my_sample_service_instance_required_input: \"789\"\n",
        "status": "ACTIVE",
        "templateName": "svc-simple"
    }
}
```

------