Esempi di AWS Proton con la AWS CLI
Gli esempi di codice seguenti mostrano come eseguire azioni e implementare scenari comuni utilizzando la AWS Command Line Interface con AWS Proton.
Le operazioni sono estratti di codice da programmi più grandi e devono essere eseguite nel contesto. Sebbene le operazioni mostrino come richiamare le singole funzioni del servizio, è possibile visualizzarle contestualizzate negli scenari correlati.
Ogni esempio include un link al codice sorgente completo, dove è possibile trovare le istruzioni su come configurare ed eseguire il codice nel contesto.
Argomenti
Operazioni
L’esempio di codice seguente mostra come utilizzare cancel-service-instance-deployment.
- AWS CLI
-
Come annullare l’implementazione di un’istanza di servizio
L’esempio
cancel-service-instance-deploymentseguente annulla l’implementazione di un’istanza di servizio.aws proton cancel-service-instance-deployment \ --service-instance-name"instance-one"\ --service-name"simple-svc"Output:
{ "serviceInstance": { "arn": "arn:aws:proton:region-id:123456789012:service/simple-svc/service-instance/instance-one", "createdAt": "2021-04-02T21:29:59.962000+00:00", "deploymentStatus": "CANCELLING", "environmentName": "simple-env", "lastDeploymentAttemptedAt": "2021-04-02T21:45:15.406000+00:00", "lastDeploymentSucceededAt": "2021-04-02T21:38:00.823000+00:00", "name": "instance-one", "serviceName": "simple-svc", "spec": "proton: ServiceSpec\npipeline:\n my_sample_pipeline_optional_input: abc\n my_sample_pipeline_required_input: '123'\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": "1", "templateName": "svc-simple" } }Per ulteriori informazioni, consulta Aggiornare l’istanza di un servizio nella Guida per l’amministratore di AWS Proton o Aggiornare l’istanza di un servizio nella Guida per l’utente di AWS Proton.
-
Per informazioni dettagliate sull’API, consulta CancelServiceInstanceDeployment
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare cancel-service-pipeline-deployment.
- AWS CLI
-
Come annullare l’implementazione di una pipeline di servizio
Nell’esempio seguente
cancel-service-pipeline-deploymentannulla l’implementazione di una pipeline di servizio.aws proton cancel-service-pipeline-deployment \ --service-name"simple-svc"Output:
{ "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" } }Per ulteriori informazioni, consulta Update a service pipeline nella Guida per l’amministratore di AWS Proton o Update a service pipeline nella Guida per l’utente di AWS Proton.
-
Per informazioni dettagliate sull’API, consulta CancelServicePipelineDeployment
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare create-service.
- AWS CLI
-
Come creare un servizio
L’esempio
create-serviceseguente crea un servizio con una pipeline di servizi.aws proton create-service \ --name"MySimpleService"\ --template-name"fargate-service"\ --template-major-version"1"\ --branch-name"mainline"\ --repository-connection-arn"arn:aws:codestar-connections:region-id:account-id:connection/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111"\ --repository-id"myorg/myapp"\ --specfile://spec.yamlContenuto di
spec.yaml.proton: ServiceSpec pipeline: my_sample_pipeline_required_input: "hello" my_sample_pipeline_optional_input: "bye" instances: - name: "acme-network-dev" environment: "ENV_NAME" spec: my_sample_service_instance_required_input: "hi" my_sample_service_instance_optional_input: "ho"Output:
{ "service": { "arn": "arn:aws:proton:region-id:123456789012:service/MySimpleService", "createdAt": "2020-11-18T19:50:27.460000+00:00", "lastModifiedAt": "2020-11-18T19:50:27.460000+00:00", "name": "MySimpleService", "repositoryConnectionArn": "arn:aws:codestar-connections:region-id:123456789012connection/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "repositoryId": "myorg/myapp", "status": "CREATE_IN_PROGRESS", "templateName": "fargate-service" } }Per ulteriori informazioni, consulta Creazione di un servizio nella Guida per l’amministratore di AWS Proton o Creazione di un servizio nella Guida per l’utente di AWS Proton.
-
Per informazioni dettagliate sull’API, consulta CreateService
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare delete-service.
- AWS CLI
-
Come eliminare un servizio
Nell’esempio seguente,
delete-serviceelimina un servizio.aws proton delete-service \ --name"simple-svc"Output:
{ "service": { "arn": "arn:aws:proton:region-id:123456789012:service/simple-svc", "branchName": "mainline", "createdAt": "2020-11-28T22:40:50.512000+00:00", "description": "Edit by updating description", "lastModifiedAt": "2020-11-29T00:30:39.248000+00:00", "name": "simple-svc", "repositoryConnectionArn": "arn:aws:codestar-connections:region-id:123456789012:connection/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "repositoryId": "myorg/myapp", "status": "DELETE_IN_PROGRESS", "templateName": "fargate-service" } }Per ulteriori informazioni, consulta Eliminazione di un servizio nella Guida per l’amministratore di AWS Proton.
-
Per informazioni dettagliate sull’API, consulta DeleteService
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare get-service-instance.
- AWS CLI
-
Come ottenere dettagli sull’istanza del servizio
L’esempio
get-service-instanceseguente ottiene dati di dettaglio per un’istanza di servizio.aws proton get-service-instance \ --name"instance-one"\ --service-name"simple-svc"Output:
{ "serviceInstance": { "arn": "arn:aws:proton:region-id:123456789012:service/simple-svc/service-instance/instance-one", "createdAt": "2020-11-28T22:40:50.512000+00:00", "deploymentStatus": "SUCCEEDED", "environmentName": "simple-env", "lastDeploymentAttemptedAt": "2020-11-28T22:40:50.512000+00:00", "lastDeploymentSucceededAt": "2020-11-28T22:40:50.512000+00:00", "name": "instance-one", "serviceName": "simple-svc", "spec": "proton: ServiceSpec\npipeline:\n my_sample_pipeline_optional_input: hello world\n my_sample_pipeline_required_input: pipeline up\ninstances:\n- name: instance-one\n environment: my-simple-env\n spec:\n my_sample_service_instance_optional_input: Ola\n my_sample_service_instance_required_input: Ciao\n", "templateMajorVersion": "1", "templateMinorVersion": "0", "templateName": "svc-simple" } }Per ulteriori informazioni, consulta View service data nella Guida per l’amministratore di AWS Proton o View service data nella Guida per l’utente di AWS Proton.
-
Per informazioni dettagliate sull’API, consulta GetServiceInstance
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare get-service.
- AWS CLI
-
Come ottenere i dettagli del servizio
Nell’esempio seguente
get-serviceottiene dati di dettaglio per un servizio.aws proton get-service \ --name"simple-svc"Output:
{ "service": { "arn": "arn:aws:proton:region-id:123456789012:service/simple-svc", "branchName": "mainline", "createdAt": "2020-11-28T22:40:50.512000+00:00", "lastModifiedAt": "2020-11-28T22:44:51.207000+00:00", "name": "simple-svc", "pipeline": { "arn": "arn:aws:proton:region-id:123456789012:service/simple-svc/pipeline/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "createdAt": "2020-11-28T22:40:50.512000+00:00", "deploymentStatus": "SUCCEEDED", "lastDeploymentAttemptedAt": "2020-11-28T22:40:50.512000+00:00", "lastDeploymentSucceededAt": "2020-11-28T22:40:50.512000+00:00", "spec": "proton: ServiceSpec\npipeline:\n my_sample_pipeline_required_input: hello\n my_sample_pipeline_optional_input: bye\ninstances:\n- name: instance-svc-simple\n environment: my-simple-env\n spec:\n my_sample_service_instance_required_input: hi\n my_sample_service_instance_optional_input: ho\n", "templateMajorVersion": "1", "templateMinorVersion": "1", "templateName": "svc-simple" }, "repositoryConnectionArn": "arn:aws:codestar-connections:region-id:123456789012:connection/a1b2c3d4-5678-90ab-cdef-EXAMPLE22222", "repositoryId": "myorg/myapp", "spec": "proton: ServiceSpec\npipeline:\n my_sample_pipeline_required_input: hello\n my_sample_pipeline_optional_input: bye\ninstances:\n- name: instance-svc-simple\n environment: my-simple-env\n spec:\n my_sample_service_instance_required_input: hi\n my_sample_service_instance_optional_input: ho\n", "status": "ACTIVE", "templateName": "svc-simple" } }Per ulteriori informazioni, consulta View service data nella Guida per l’amministratore di AWS Proton o View service data nella Guida per l’utente di AWS Proton.
-
Per informazioni dettagliate sull’API, consulta GetService
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare list-service-instances.
- AWS CLI
-
Esempio 1: elencare tutte le istanze del servizio
Nell’esempio seguente
list-service-instanceselenca le istanze del servizio.aws proton list-service-instancesOutput:
{ "serviceInstances": [ { "arn": "arn:aws:proton:region-id:123456789012:service/simple-svc/service-instance/instance-one", "createdAt": "2020-11-28T22:40:50.512000+00:00", "deploymentStatus": "SUCCEEDED", "environmentArn": "arn:aws:proton:region-id:123456789012:environment/simple-env", "lastDeploymentAttemptedAt": "2020-11-28T22:40:50.512000+00:00", "lastDeploymentSucceededAt": "2020-11-28T22:40:50.512000+00:00", "name": "instance-one", "serviceName": "simple-svc", "templateMajorVersion": "1", "templateMinorVersion": "0", "templateName": "fargate-service" } ] }Per ulteriori informazioni, consulta View service instance data nella Guida per l’amministratore di AWS Proton o View service instance data nella Guida per l’utente di AWS Proton.
Esempio 2: elencare l’istanza di servizio specificata
Nell’esempio seguente
get-service-instanceottiene un’istanza di servizio.aws proton get-service-instance \ --name"instance-one"\ --service-name"simple-svc"Output:
{ "serviceInstance": { "arn": "arn:aws:proton:region-id:123456789012:service/simple-svc/service-instance/instance-one", "createdAt": "2020-11-28T22:40:50.512000+00:00", "deploymentStatus": "SUCCEEDED", "environmentName": "simple-env", "lastDeploymentAttemptedAt": "2020-11-28T22:40:50.512000+00:00", "lastDeploymentSucceededAt": "2020-11-28T22:40:50.512000+00:00", "name": "instance-one", "serviceName": "simple-svc", "spec": "proton: ServiceSpec\npipeline:\n my_sample_pipeline_optional_input: hello world\n my_sample_pipeline_required_input: pipeline up\ninstances:\n- name: instance-one\n environment: my-simple-env\n spec:\n my_sample_service_instance_optional_input: Ola\n my_sample_service_instance_required_input: Ciao\n", "templateMajorVersion": "1", "templateMinorVersion": "0", "templateName": "svc-simple" } }Per ulteriori informazioni, consulta View service instance data nella Guida per l’amministratore di AWS Proton o View service instance data nella Guida per l’utente di AWS Proton.
-
Per informazioni dettagliate sull’API, consulta ListServiceInstances
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare update-service-instance.
- AWS CLI
-
Come aggiornare un’istanza di servizio a una nuova versione secondaria
L’esempio
update-service-instanceseguente aggiorna un’istanza del servizio a una nuova versione secondaria del relativo modello di servizio che aggiunge una nuova istanza denominata “my-other-instance” con un nuovo input richiesto.aws proton update-service-instance \ --service-name"simple-svc"\ --spec"file://service-spec.yaml" \ --template-major-version"1"\ --template-minor-version"1"\ --deployment-type"MINOR_VERSION"\ --name"instance-one"Contenuto di
service-spec.yaml.proton: ServiceSpec pipeline: my_sample_pipeline_optional_input: "abc" my_sample_pipeline_required_input: "123" instances: - name: "instance-one" environment: "simple-env" spec: my_sample_service_instance_optional_input: "def" my_sample_service_instance_required_input: "456" - name: "my-other-instance" environment: "simple-env" spec: my_sample_service_instance_required_input: "789"Output:
{ "serviceInstance": { "arn": "arn:aws:proton:region-id:123456789012:service/simple-svc/service-instance/instance-one", "createdAt": "2021-04-02T21:29:59.962000+00:00", "deploymentStatus": "IN_PROGRESS", "environmentName": "arn:aws:proton:region-id:123456789012:environment/simple-env", "lastDeploymentAttemptedAt": "2021-04-02T21:38:00.823000+00:00", "lastDeploymentSucceededAt": "2021-04-02T21:29:59.962000+00:00", "name": "instance-one", "serviceName": "simple-svc", "templateMajorVersion": "1", "templateMinorVersion": "0", "templateName": "svc-simple" } }Per ulteriori informazioni, consulta Aggiornare l’istanza di un servizio nella Guida per l’amministratore di AWS Proton o Aggiornare l’istanza di un servizio nella Guida per l’utente di AWS Proton.
-
Per informazioni dettagliate sull’API, consulta UpdateServiceInstance
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare update-service-pipeline.
- AWS CLI
-
Come aggiornare una pipeline di servizi
L’esempio
update-service-pipelineseguente aggiorna una pipeline di servizi con una nuova versione secondaria del relativo modello di servizio.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"Output:
{ "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" } }Per ulteriori informazioni, consulta Update a service pipeline nella Guida per l’amministratore di AWS Proton o Update a service pipeline nella Guida per l’utente di AWS Proton.
-
Per informazioni dettagliate sull’API, consulta UpdateServicePipeline
in AWS CLI Command Reference.
-
L’esempio di codice seguente mostra come utilizzare update-service.
- AWS CLI
-
Come aggiornare un servizio
L’esempio
update-serviceseguente modifica una descrizione del servizio.aws proton update-service \ --name"MySimpleService"\ --description"Edit by updating description"Output:
{ "service": { "arn": "arn:aws:proton:region-id:123456789012:service/MySimpleService", "branchName": "mainline", "createdAt": "2021-03-12T22:39:42.318000+00:00", "description": "Edit by updating description", "lastModifiedAt": "2021-03-12T22:44:21.975000+00:00", "name": "MySimpleService", "repositoryConnectionArn": "arn:aws:codestar-connections:region-id:123456789012:connection/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "repositoryId": "myorg/myapp", "status": "ACTIVE", "templateName": "fargate-service" } }Per ulteriori informazioni, consulta Edit a service nella Guida per l’amministratore di AWS Proton o Edit a service nella Guida per l’utente di AWS Proton.
-
Per informazioni dettagliate sull’API, consulta UpdateService
in AWS CLI Command Reference.
-