View a markdown version of this page

Aggiornare una pipeline di servizi - AWS Proton

Avviso di fine del supporto: il 7 ottobre 2026, AWS terminerà il supporto per AWS Proton. Dopo il 7 ottobre 2026, non potrai più accedere alla AWS Proton console o AWS Proton alle risorse. L'infrastruttura implementata rimarrà intatta. Per ulteriori informazioni, consulta la AWS Proton Service Deprecation and Migration Guide.

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Aggiornare una pipeline di servizi

Scopri come aggiornare una pipeline AWS Proton di servizi e annullare l'aggiornamento.

Una pipeline di servizi appartiene a un servizio. È possibile creare o eliminare una pipeline solo nel contesto delle azioni di creazione ed eliminazione del servizio.

Esistono quattro modalità per aggiornare una pipeline di servizi, come descritto nell'elenco seguente. Quando si utilizza il AWS CLI, il deployment-type campo definisce la modalità. Quando si utilizza la console, queste modalità vengono associate alla pipeline Edit e Update alla versione consigliata.

NONE

In questa modalità, non si verifica una distribuzione. Vengono aggiornati solo i parametri dei metadati richiesti.

CURRENT_VERSION

In questa modalità, la pipeline di servizi viene distribuita e aggiornata con le nuove specifiche fornite. Vengono aggiornati solo i parametri richiesti. Non includere parametri di versione minori o principali quando lo usideployment-type.

MINOR_VERSION

In questa modalità, la pipeline di servizi viene distribuita e aggiornata con la versione secondaria pubblicata e consigliata (più recente) della versione principale corrente in uso per impostazione predefinita. È inoltre possibile specificare una versione secondaria diversa della versione principale attualmente in uso.

MAJOR_VERSION

In questa modalità, per impostazione predefinita, la pipeline di servizi viene distribuita e aggiornata con la versione principale e secondaria pubblicata, consigliata (più recente) del modello corrente. È inoltre possibile specificare una versione principale diversa, superiore alla versione principale in uso e una versione secondaria (opzionale).

È possibile tentare di annullare la distribuzione di un aggiornamento della pipeline di servizi, se lo èdeploymentStatus. IN_PROGRESS AWS Proton tenta di annullare la distribuzione. L'annullamento riuscito non è garantito.

Quando si annulla la distribuzione di un aggiornamento, AWS Proton tenta di annullare la distribuzione come indicato nei passaggi seguenti.

  • Imposta lo stato di distribuzione su. CANCELLING

  • Interrompe la distribuzione in corso ed elimina tutte le nuove risorse create dalla distribuzione quando. IN_PROGRESS

  • Imposta lo stato di distribuzione su. CANCELLED

  • Riporta lo stato della risorsa a quello precedente all'avvio della distribuzione.

Per ulteriori informazioni sull'annullamento della distribuzione di una pipeline di servizi, consulta CancelServicePipelineDeployment l'API Reference. AWS Proton

Usa la console o AWS CLI per effettuare aggiornamenti o annullare le distribuzioni degli aggiornamenti.

Console di gestione AWS

Aggiorna una pipeline di servizi utilizzando la console come descritto nei passaggi seguenti.

  1. Nella AWS Proton console, scegli Servizi.

  2. Nell'elenco dei servizi, scegli il nome del servizio per il quale desideri aggiornare la pipeline.

  3. Ci sono due schede nella pagina dei dettagli del servizio, Overview e Pipeline. Scegli Pipeline.

  4. Se desideri aggiornare le specifiche, scegli Modifica pipeline e compila ogni modulo, quindi scegli Avanti fino a completare il modulo finale, quindi scegli Aggiorna pipeline.

    Se desideri eseguire l'aggiornamento a una nuova versione e c'è un'icona informativa che indica che una nuova versione è disponibile nel modello Pipeline, scegli il nome della nuova versione del modello.

    1. Scegli Aggiorna alla versione consigliata.

    2. Compila ogni modulo e scegli Avanti fino a completare il modulo finale e scegli Aggiorna.

AWS CLI

Aggiorna una pipeline di servizi a una nuova versione secondaria, come mostrato nei seguenti comandi e risposte di esempio della CLI.

Quando si aggiorna la pipeline di servizi con una modificaspec, è possibile "${Proton::CURRENT_VAL}" utilizzare per indicare quali valori dei parametri conservare rispetto all'originalespec, se i valori esistono nelspec. get-serviceDa utilizzare per visualizzare l'originale spec di una pipeline di servizi, come descritto in. Visualizza i dati del servizio

L'esempio seguente mostra come è possibile utilizzare "${Proton::CURRENT_VAL}" in unspec.

Specifiche:

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: per aggiornare

$ 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"

Risposta:

{ "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: per ottenere e confermare lo stato

$ aws proton get-service \ --name "simple-svc"

Risposta:

{ "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 di gestione AWS

Annullare l'implementazione di una pipeline di servizi utilizzando la console come mostrato nei passaggi seguenti.

  1. Nella AWS Proton console, scegli Servizi nel pannello di navigazione.

  2. Nell'elenco dei servizi, scegli il nome del servizio che include la pipeline con l'aggiornamento di distribuzione che desideri annullare.

  3. Nella pagina dei dettagli del servizio, scegli la scheda Pipeline.

  4. Se lo stato di distribuzione dell'aggiornamento è In corso, nella pagina dei dettagli della pipeline di servizi, scegli Annulla distribuzione.

  5. Una finestra modale ti chiede di confermare l'annullamento. Scegli Annulla distribuzione.

  6. Lo stato di distribuzione dell'aggiornamento è impostato su Annullamento e quindi su Annullato per completare l'annullamento.

AWS CLI

Annulla un aggiornamento della distribuzione della pipeline di servizi IN_PROGRESS alla versione secondaria 2, come mostrato nei seguenti comandi e risposte di esempio della CLI.

Nel modello utilizzato per questo esempio è inclusa una condizione di attesa in modo che l'annullamento inizi prima del completamento della distribuzione dell'aggiornamento.

Comando: per annullare

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

Risposta:

{ "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: per ottenere e confermare lo stato

$ aws proton get-service \ --name "simple-svc"

Risposta:

{ "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" } }