AWS CloudFormation esempi utilizzando AWS CLI - AWS Command Line Interface

Questa documentazione è valida AWS CLI solo per la versione 1. Per la documentazione relativa alla versione 2 di AWS CLI, consulta la Guida per l'utente della versione 2.

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

AWS CloudFormation esempi utilizzando AWS CLI

I seguenti esempi di codice mostrano come eseguire azioni e implementare scenari comuni utilizzando AWS Command Line Interface with AWS CloudFormation.

Le operazioni sono estratti di codice da programmi più grandi e devono essere eseguite nel contesto. Mentre le azioni mostrano come richiamare le singole funzioni di servizio, è possibile visualizzare le azioni nel loro contesto negli scenari correlati.

Ogni esempio include un collegamento al codice sorgente completo, in cui è possibile trovare istruzioni su come configurare ed eseguire il codice nel contesto.

Argomenti

Azioni

Il seguente esempio di codice mostra come utilizzareactivate-type.

AWS CLI

Per attivare un tipo

L'activate-typeesempio seguente attiva un'estensione pubblica di terze parti, rendendola disponibile per l'uso nei modelli di stack.

aws cloudformation activate-type \ --region us-west-2 \ --type RESOURCE \ --type-name Example::Test::1234567890abcdef0 \ --type-name-alias Example::Test::Alias

Output:

{ "Arn": "arn:aws:cloudformation:us-west-2:123456789012:type/resource/Example-Test-Alias" }

Per ulteriori informazioni, consulta Using the AWS CloudFormation registry nella AWS CloudFormation User Guide.

  • Per API i dettagli, vedere ActivateTypein AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzarebatch-describe-type-configurations.

AWS CLI

Per descrivere in batch una configurazione di tipo

L'batch-describe-type-configurationsesempio seguente configura i dati per il tipo.

aws cloudformation batch-describe-type-configurations \ --region us-west-2 \ --type-configuration-identifiers TypeArn="arn:aws:cloudformation:us-west-2:123456789012:type/resource/Example-Test-Type,TypeConfigurationAlias=MyConfiguration"

Output:

{ "Errors": [], "UnprocessedTypeConfigurations": [], "TypeConfigurations": [ { "Arn": "arn:aws:cloudformation:us-west-2:123456789012:type/resource/Example-Test-Type", "Alias": "MyConfiguration", "Configuration": "{\n \"Example\": {\n \"ApiKey\": \"examplekey\",\n \"ApplicationKey\": \"examplekey1\",\n \"ApiURL\": \"exampleurl\"\n }\n}", "LastUpdated": "2021-10-01T15:25:46.210000+00:00", "TypeArn": "arn:aws:cloudformation:us-east-1:123456789012:type/resource/Example-Test-Type" } ] }

Per ulteriori informazioni, vedere Utilizzo del AWS CloudFormation registro nella Guida per l'AWS CloudFormation utente.

Il seguente esempio di codice mostra come utilizzarecancel-update-stack.

AWS CLI

Per annullare un aggiornamento dello stack in corso

Il cancel-update-stack comando seguente annulla un aggiornamento dello stack nello stack: myteststack

aws cloudformation cancel-update-stack --stack-name myteststack

Il seguente esempio di codice mostra come utilizzarecontinue-update-rollback.

AWS CLI

Per riprovare un rollback di aggiornamento

L'continue-update-rollbackesempio seguente riprende un'operazione di rollback da un aggiornamento dello stack precedentemente non riuscito.

aws cloudformation continue-update-rollback \ --stack-name my-stack

Questo comando non produce alcun output.

Il seguente esempio di codice mostra come utilizzarecreate-change-set.

AWS CLI

Per creare un set di modifiche

L'create-change-setesempio seguente crea un set di modifiche con la CAPABILITY_IAM funzionalità. Il file template.yaml è un AWS CloudFormation modello nella cartella corrente che definisce uno stack che include IAM risorse.

aws cloudformation create-change-set \ --stack-name my-application \ --change-set-name my-change-set \ --template-body file://template.yaml \ --capabilities CAPABILITY_IAM

Output:

{ "Id": "arn:aws:cloudformation:us-west-2:123456789012:changeSet/my-change-set/bc9555ba-a949-xmpl-bfb8-f41d04ec5784", "StackId": "arn:aws:cloudformation:us-west-2:123456789012:stack/my-application/d0a825a0-e4cd-xmpl-b9fb-061c69e99204" }

Il seguente esempio di codice mostra come utilizzarecreate-stack-instances.

AWS CLI

Per creare istanze stack

L'create-stack-instancesesempio seguente crea istanze di uno stack impostato in due account e in quattro regioni. L'impostazione della tolleranza agli errori garantisce che l'aggiornamento venga tentato in tutti gli account e le regioni, anche se non è possibile creare alcuni stack.

aws cloudformation create-stack-instances \ --stack-set-name my-stack-set \ --accounts 123456789012 223456789012 \ --regions us-east-1 us-east-2 us-west-1 us-west-2 \ --operation-preferences FailureToleranceCount=7

Output:

{ "OperationId": "d7995c31-83c2-xmpl-a3d4-e9ca2811563f" }

Per creare un set di stack, usa il comando. create-stack-set

Il seguente esempio di codice mostra come utilizzarecreate-stack-set.

AWS CLI

Per creare un set di stack

L'create-stack-setesempio seguente crea un set di stack utilizzando il modello di YAML file specificato. template.yamlè un AWS CloudFormation modello nella cartella corrente che definisce uno stack.

aws cloudformation create-stack-set \ --stack-set-name my-stack-set \ --template-body file://template.yaml \ --description "SNS topic"

Output:

{ "StackSetId": "my-stack-set:8d0f160b-d157-xmpl-a8e6-c0ce8e5d8cc1" }

Per aggiungere istanze dello stack allo stack set, utilizzate il comando. create-stack-instances

  • Per API i dettagli, consulta Command CreateStackSetReference AWS CLI .

Il seguente esempio di codice mostra come utilizzarecreate-stack.

AWS CLI

Per creare una AWS CloudFormation pila

Il create-stacks comando seguente crea uno stack con il nome myteststack utilizzando il sampletemplate.json modello:

aws cloudformation create-stack --stack-name myteststack --template-body file://sampletemplate.json --parameters ParameterKey=KeyPairName,ParameterValue=TestKey ParameterKey=SubnetIDs,ParameterValue=SubnetID1\\,SubnetID2

Output:

{ "StackId": "arn:aws:cloudformation:us-east-1:123456789012:stack/myteststack/466df9e0-0dff-08e3-8e2f-5088487c4896" }

Per ulteriori informazioni, consulta Stacks nella Guida per l'AWS CloudFormation utente.

  • Per API i dettagli, vedere CreateStackin AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzaredeactivate-type.

AWS CLI

Per disattivare un tipo

L'deactivate-typeesempio seguente disattiva un'estensione pubblica precedentemente attivata in questo account e nella regione.

aws cloudformation deactivate-type \ --region us-west-2 \ --type MODULE \ --type-name Example::Test::Type::MODULE

Questo comando non produce alcun output.

Per ulteriori informazioni, vedere Utilizzo del AWS CloudFormation registro nella Guida per l'AWS CloudFormation utente.

  • Per API i dettagli, vedere DeactivateTypein AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzaredelete-change-set.

AWS CLI

Per eliminare un set di modifiche

L'delete-change-setesempio seguente elimina un set di modifiche specificando il nome del set di modifiche e il nome dello stack.

aws cloudformation delete-change-set \ --stack-name my-stack \ --change-set-name my-change-set

Questo comando non produce alcun output.

L'delete-change-setesempio seguente elimina un set di modifiche specificando l'intero ARN set di modifiche.

aws cloudformation delete-change-set \ --change-set-name arn:aws:cloudformation:us-east-2:123456789012:changeSet/my-change-set/4eca1a01-e285-xmpl-8026-9a1967bfb4b0

Questo comando non produce alcun output.

Il seguente esempio di codice mostra come utilizzaredelete-stack-instances.

AWS CLI

Per eliminare le istanze dello stack

L'delete-stack-instancesesempio seguente elimina le istanze di uno stack impostato in due account in due regioni e termina gli stack.

aws cloudformation delete-stack-instances \ --stack-set-name my-stack-set \ --accounts 123456789012 567890123456 \ --regions us-east-1 us-west-1 \ --no-retain-stacks

Output:

{ "OperationId": "ad49f10c-fd1d-413f-a20a-8de6e2fa8f27" }

Per eliminare un set di stack vuoto, utilizzate il comando. delete-stack-set

Il seguente esempio di codice mostra come utilizzaredelete-stack-set.

AWS CLI

Per eliminare uno stack set

Il comando seguente elimina il set di stack vuoto specificato. Il set di stack deve essere vuoto.

aws cloudformation delete-stack-set \ --stack-set-name my-stack-set

Questo comando non produce alcun output.

Per eliminare le istanze dallo stack set, utilizzate il comando. delete-stack-instances

  • Per API i dettagli, consultate AWS CLI Command DeleteStackSetReference.

Il seguente esempio di codice mostra come utilizzaredelete-stack.

AWS CLI

Per eliminare una pila

L'delete-stackesempio seguente elimina lo stack specificato.

aws cloudformation delete-stack \ --stack-name my-stack

Questo comando non produce alcun output.

  • Per API i dettagli, vedere DeleteStackin AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzaredeploy.

AWS CLI

Il comando seguente distribuisce il modello denominato template.json in uno stack denominato: my-new-stack

aws cloudformation deploy --template-file /path_to_template/template.json --stack-name my-new-stack --parameter-overrides Key1=Value1 Key2=Value2 --tags Key1=Value1 Key2=Value2
  • Per API i dettagli, consulta Deploy in AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzarederegister-type.

AWS CLI

Per annullare la registrazione di una versione del tipo

L'deregister-typeesempio seguente rimuove la versione del tipo specificato dall'uso attivo nel CloudFormation registro, in modo che non possa più essere utilizzata nelle CloudFormation operazioni.

aws cloudformation deregister-type \ --type RESOURCE \ --type-name My::Logs::LogGroup \ --version-id 00000002

Questo comando non produce alcun output.

Per ulteriori informazioni, vedere Using the CloudFormation Registry in the AWS CloudFormation Users Guide.

  • Per API i dettagli, vedere DeregisterTypein AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzaredescribe-account-limits.

AWS CLI

Per ottenere informazioni sui limiti del tuo account

Il comando seguente recupera un elenco di limiti regionali per l'account corrente.

aws cloudformation describe-account-limits

Output:

{ "AccountLimits": [ { "Name": "StackLimit", "Value": 200 }, { "Name": "StackOutputsLimit", "Value": 60 }, { "Name": "ConcurrentResourcesLimit", "Value": 2500 } ] }

Il seguente esempio di codice mostra come utilizzaredescribe-change-set.

AWS CLI

Per ottenere informazioni su un set di modifiche

L'describe-change-setesempio seguente visualizza i dettagli del set di modifiche specificato dal nome del set di modifiche e dal nome dello stack.

aws cloudformation describe-change-set \ --change-set-name my-change-set \ --stack-name my-stack

L'describe-change-setesempio seguente visualizza i dettagli del set di modifiche specificato dalla parte completa ARN del set di modifiche:

aws cloudformation describe-change-set \ --change-set-name arn:aws:cloudformation:us-west-2:123456789012:changeSet/my-change-set/bc9555ba-a949-xmpl-bfb8-f41d04ec5784

Output:

{ "Changes": [ { "Type": "Resource", "ResourceChange": { "Action": "Modify", "LogicalResourceId": "function", "PhysicalResourceId": "my-function-SEZV4XMPL4S5", "ResourceType": "AWS::Lambda::Function", "Replacement": "False", "Scope": [ "Properties" ], "Details": [ { "Target": { "Attribute": "Properties", "Name": "Timeout", "RequiresRecreation": "Never" }, "Evaluation": "Static", "ChangeSource": "DirectModification" } ] } } ], "ChangeSetName": "my-change-set", "ChangeSetId": "arn:aws:cloudformation:us-west-2:123456789012:changeSet/my-change-set/4eca1a01-e285-xmpl-8026-9a1967bfb4b0", "StackId": "arn:aws:cloudformation:us-west-2:123456789012:stack/my-stack/d0a825a0-e4cd-xmpl-b9fb-061c69e99204", "StackName": "my-stack", "Description": null, "Parameters": null, "CreationTime": "2019-10-02T05:20:56.651Z", "ExecutionStatus": "AVAILABLE", "Status": "CREATE_COMPLETE", "StatusReason": null, "NotificationARNs": [], "RollbackConfiguration": {}, "Capabilities": [ "CAPABILITY_IAM" ], "Tags": null }

Il seguente esempio di codice mostra come utilizzaredescribe-publisher.

AWS CLI

Per descrivere un editore

L'describe-publisheresempio seguente configura le informazioni per un editore.

aws cloudformation describe-publisher \ --region us-west-2 \ --publisher-id 000q6TfUovXsEMmgKowxDZLlwqr2QUsh

Output:

{ "PublisherId": "000q6TfUovXsEMmgKowxDZLlwqr2QUshd2e75c8c", "PublisherStatus": "VERIFIED", "IdentityProvider": "AWS_Marketplace", "PublisherProfile": "https://aws.amazon.com/marketplace/seller-profile?id=2c5dc1f0-17cd-4259-8e46-822a83gdtegd" }

Per ulteriori informazioni, vedere Using the AWS CloudFormation registry in the AWS CloudFormation User Guide.

Il seguente esempio di codice mostra come utilizzaredescribe-stack-drift-detection-status.

AWS CLI

Per controllare lo stato di un'operazione di rilevamento della deriva

L'describe-stack-drift-detection-statusesempio seguente mostra lo stato di un'operazione di rilevamento della deriva. Ottieni il by ID eseguendo il detect-stack-drift comando.

aws cloudformation describe-stack-drift-detection-status \ --stack-drift-detection-id 1a229160-e4d9-xmpl-ab67-0a4f93df83d4

Output:

{ "StackId": "arn:aws:cloudformation:us-west-2:123456789012:stack/my-stack/d0a825a0-e4cd-xmpl-b9fb-061c69e99204", "StackDriftDetectionId": "1a229160-e4d9-xmpl-ab67-0a4f93df83d4", "StackDriftStatus": "DRIFTED", "DetectionStatus": "DETECTION_COMPLETE", "DriftedStackResourceCount": 1, "Timestamp": "2019-10-02T05:54:30.902Z" }

Il seguente esempio di codice mostra come utilizzaredescribe-stack-events.

AWS CLI

Per descrivere gli eventi dello stack

L'describe-stack-eventsesempio seguente visualizza i 2 eventi più recenti per lo stack specificato.

aws cloudformation describe-stack-events \ --stack-name my-stack \ --max-items 2 { "StackEvents": [ { "StackId": "arn:aws:cloudformation:us-west-2:123456789012:stack/my-stack/d0a825a0-e4cd-xmpl-b9fb-061c69e99204", "EventId": "4e1516d0-e4d6-xmpl-b94f-0a51958a168c", "StackName": "my-stack", "LogicalResourceId": "my-stack", "PhysicalResourceId": "arn:aws:cloudformation:us-west-2:123456789012:stack/my-stack/d0a825a0-e4cd-xmpl-b9fb-061c69e99204", "ResourceType": "AWS::CloudFormation::Stack", "Timestamp": "2019-10-02T05:34:29.556Z", "ResourceStatus": "UPDATE_COMPLETE" }, { "StackId": "arn:aws:cloudformation:us-west-2:123456789012:stack/my-stack/d0a825a0-e4cd-xmpl-b9fb-061c69e99204", "EventId": "4dd3c810-e4d6-xmpl-bade-0aaf8b31ab7a", "StackName": "my-stack", "LogicalResourceId": "my-stack", "PhysicalResourceId": "arn:aws:cloudformation:us-west-2:123456789012:stack/my-stack/d0a825a0-e4cd-xmpl-b9fb-061c69e99204", "ResourceType": "AWS::CloudFormation::Stack", "Timestamp": "2019-10-02T05:34:29.127Z", "ResourceStatus": "UPDATE_COMPLETE_CLEANUP_IN_PROGRESS" } ], "NextToken": "eyJOZXh0VG9XMPLiOiBudWxsLCAiYm90b190cnVuY2F0ZV9hbW91bnQiOiAyfQ==" }

Il seguente esempio di codice mostra come utilizzaredescribe-stack-instance.

AWS CLI

Per descrivere un'istanza stack

Il comando seguente descrive un'istanza dello stack specificato impostato nell'account e nella regione specificati. Lo stack set si trova nella regione e nell'account correnti e l'istanza si trova nella us-west-2 regione dell'account. 123456789012 :

aws cloudformation describe-stack-instance \ --stack-set-name my-stack-set \ --stack-instance-account 123456789012 \ --stack-instance-region us-west-2

Output:

{ "StackInstance": { "StackSetId": "enable-config:296a3360-xmpl-40af-be78-9341e95bf743", "Region": "us-west-2", "Account": "123456789012", "StackId": "arn:aws:cloudformation:us-west-2:123456789012:stack/StackSet-enable-config-e6cac20f-xmpl-46e9-8314-53e0d4591532/4287f9a0-e615-xmpl-894a-12b31d3117be", "ParameterOverrides": [], "Status": "OUTDATED", "StatusReason": "ResourceLogicalId:ConfigBucket, ResourceType:AWS::S3::Bucket, ResourceStatusReason:You have attempted to create more buckets than allowed (Service: Amazon S3; Status Code: 400; Error Code: TooManyBuckets; Request ID: F7F21CXMPL580224; S3 Extended Request ID: egd/Fdt89BXMPLyiqbMNljVk55Yqqvi3NYW2nKLUVWhUGEhNfCmZdyj967lhriaG/dWMobSO40o=)." } }

Il seguente esempio di codice mostra come utilizzaredescribe-stack-resource-drifts.

AWS CLI

Per ottenere informazioni sulle risorse derivate dalla definizione dello stack

Il comando seguente visualizza informazioni sulle risorse alla deriva per lo stack specificato. Per avviare il rilevamento della deriva, utilizzate il comando. detect-stack-drift :

aws cloudformation describe-stack-resource-drifts \ --stack-name my-stack

L'output mostra una funzione AWS Lambda che è stata modificata: out-of-band

{ "StackResourceDrifts": [ { "StackId": "arn:aws:cloudformation:us-west-2:123456789012:stack/my-stack/d0a825a0-e4cd-xmpl-b9fb-061c69e99204", "LogicalResourceId": "function", "PhysicalResourceId": "my-function-SEZV4XMPL4S5", "ResourceType": "AWS::Lambda::Function", "ExpectedProperties": "{\"Description\":\"Write a file to S3.\",\"Environment\":{\"Variables\":{\"bucket\":\"my-stack-bucket-1vc62xmplgguf\"}},\"Handler\":\"index.handler\",\"MemorySize\":128,\"Role\":\"arn:aws:iam::123456789012:role/my-functionRole-HIZXMPLEOM9E\",\"Runtime\":\"nodejs10.x\",\"Tags\":[{\"Key\":\"lambda:createdBy\",\"Value\":\"SAM\"}],\"Timeout\":900,\"TracingConfig\":{\"Mode\":\"Active\"}}", "ActualProperties": "{\"Description\":\"Write a file to S3.\",\"Environment\":{\"Variables\":{\"bucket\":\"my-stack-bucket-1vc62xmplgguf\"}},\"Handler\":\"index.handler\",\"MemorySize\":256,\"Role\":\"arn:aws:iam::123456789012:role/my-functionRole-HIZXMPLEOM9E\",\"Runtime\":\"nodejs10.x\",\"Tags\":[{\"Key\":\"lambda:createdBy\",\"Value\":\"SAM\"}],\"Timeout\":22,\"TracingConfig\":{\"Mode\":\"Active\"}}", "PropertyDifferences": [ { "PropertyPath": "/MemorySize", "ExpectedValue": "128", "ActualValue": "256", "DifferenceType": "NOT_EQUAL" }, { "PropertyPath": "/Timeout", "ExpectedValue": "900", "ActualValue": "22", "DifferenceType": "NOT_EQUAL" } ], "StackResourceDriftStatus": "MODIFIED", "Timestamp": "2019-10-02T05:54:44.064Z" } ] }

Il seguente esempio di codice mostra come utilizzaredescribe-stack-resource.

AWS CLI

Per ottenere informazioni su una risorsa dello stack

L'describe-stack-resourceesempio seguente visualizza i dettagli della risorsa denominata MyFunction nello stack specificato.

aws cloudformation describe-stack-resource \ --stack-name MyStack \ --logical-resource-id MyFunction

Output:

{ "StackResourceDetail": { "StackName": "MyStack", "StackId": "arn:aws:cloudformation:us-east-2:123456789012:stack/MyStack/d0a825a0-e4cd-xmpl-b9fb-061c69e99204", "LogicalResourceId": "MyFunction", "PhysicalResourceId": "my-function-SEZV4XMPL4S5", "ResourceType": "AWS::Lambda::Function", "LastUpdatedTimestamp": "2019-10-02T05:34:27.989Z", "ResourceStatus": "UPDATE_COMPLETE", "Metadata": "{}", "DriftInformation": { "StackResourceDriftStatus": "IN_SYNC" } } }

Il seguente esempio di codice mostra come utilizzaredescribe-stack-resources.

AWS CLI

Per ottenere informazioni su una risorsa dello stack

L'describe-stack-resourcesesempio seguente visualizza i dettagli delle risorse nello stack specificato.

aws cloudformation describe-stack-resources \ --stack-name my-stack

Output:

{ "StackResources": [ { "StackName": "my-stack", "StackId": "arn:aws:cloudformation:us-west-2:123456789012:stack/my-stack/d0a825a0-e4cd-xmpl-b9fb-061c69e99204", "LogicalResourceId": "bucket", "PhysicalResourceId": "my-stack-bucket-1vc62xmplgguf", "ResourceType": "AWS::S3::Bucket", "Timestamp": "2019-10-02T04:34:11.345Z", "ResourceStatus": "CREATE_COMPLETE", "DriftInformation": { "StackResourceDriftStatus": "IN_SYNC" } }, { "StackName": "my-stack", "StackId": "arn:aws:cloudformation:us-west-2:123456789012:stack/my-stack/d0a825a0-e4cd-xmpl-b9fb-061c69e99204", "LogicalResourceId": "function", "PhysicalResourceId": "my-function-SEZV4XMPL4S5", "ResourceType": "AWS::Lambda::Function", "Timestamp": "2019-10-02T05:34:27.989Z", "ResourceStatus": "UPDATE_COMPLETE", "DriftInformation": { "StackResourceDriftStatus": "IN_SYNC" } }, { "StackName": "my-stack", "StackId": "arn:aws:cloudformation:us-west-2:123456789012:stack/my-stack/d0a825a0-e4cd-xmpl-b9fb-061c69e99204", "LogicalResourceId": "functionRole", "PhysicalResourceId": "my-functionRole-HIZXMPLEOM9E", "ResourceType": "AWS::IAM::Role", "Timestamp": "2019-10-02T04:34:06.350Z", "ResourceStatus": "CREATE_COMPLETE", "DriftInformation": { "StackResourceDriftStatus": "IN_SYNC" } } ] }

Il seguente esempio di codice mostra come utilizzaredescribe-stack-set-operation.

AWS CLI

Per ottenere informazioni su un'operazione di stack set

Il seguente describe-stack-set-operation `esempio mostra i dettagli di un'operazione di aggiornamento sul set di stack specificato.

aws cloudformation describe-stack-set-operation \ --stack-set-name enable-config \ --operation-id 35d45ebc-ed88-xmpl-ab59-0197a1fc83a0

Output:

{ "StackSetOperation": { "OperationId": "35d45ebc-ed88-xmpl-ab59-0197a1fc83a0", "StackSetId": "enable-config:296a3360-xmpl-40af-be78-9341e95bf743", "Action": "UPDATE", "Status": "SUCCEEDED", "OperationPreferences": { "RegionOrder": [ "us-east-1", "us-west-2", "eu-west-1", "us-west-1" ], "FailureToleranceCount": 7, "MaxConcurrentCount": 2 }, "AdministrationRoleARN": "arn:aws:iam::123456789012:role/AWSCloudFormationStackSetAdministrationRole", "ExecutionRoleName": "AWSCloudFormationStackSetExecutionRole", "CreationTimestamp": "2019-10-03T16:28:44.377Z", "EndTimestamp": "2019-10-03T16:42:08.607Z" } }

Il seguente esempio di codice mostra come utilizzaredescribe-stack-set.

AWS CLI

Per ottenere informazioni su uno stack set

Il seguente describe-stack-set `esempio mostra i dettagli sul set di stack specificato.

aws cloudformation describe-stack-set \ --stack-set-name my-stack-set

Output:

{ "StackSet": { "StackSetName": "my-stack-set", "StackSetId": "my-stack-set:296a3360-xmpl-40af-be78-9341e95bf743", "Description": "Create an Amazon SNS topic", "Status": "ACTIVE", "TemplateBody": "AWSTemplateFormatVersion: '2010-09-09'\nDescription: An AWS SNS topic\nResources:\n topic:\n Type: AWS::SNS::Topic", "Parameters": [], "Capabilities": [], "Tags": [], "StackSetARN": "arn:aws:cloudformation:us-west-2:123456789012:stackset/enable-config:296a3360-xmpl-40af-be78-9341e95bf743", "AdministrationRoleARN": "arn:aws:iam::123456789012:role/AWSCloudFormationStackSetAdministrationRole", "ExecutionRoleName": "AWSCloudFormationStackSetExecutionRole" } }

Il seguente esempio di codice mostra come utilizzaredescribe-stacks.

AWS CLI

Per descrivere le AWS CloudFormation pile

Il describe-stacks comando seguente mostra informazioni di riepilogo per lo myteststack stack:

aws cloudformation describe-stacks --stack-name myteststack

Output:

{ "Stacks": [ { "StackId": "arn:aws:cloudformation:us-east-1:123456789012:stack/myteststack/466df9e0-0dff-08e3-8e2f-5088487c4896", "Description": "AWS CloudFormation Sample Template S3_Bucket: Sample template showing how to create a publicly accessible S3 bucket. **WARNING** This template creates an S3 bucket. You will be billed for the AWS resources used if you create a stack from this template.", "Tags": [], "Outputs": [ { "Description": "Name of S3 bucket to hold website content", "OutputKey": "BucketName", "OutputValue": "myteststack-s3bucket-jssofi1zie2w" } ], "StackStatusReason": null, "CreationTime": "2013-08-23T01:02:15.422Z", "Capabilities": [], "StackName": "myteststack", "StackStatus": "CREATE_COMPLETE", "DisableRollback": false } ] }

Per ulteriori informazioni, consulta Stacks nella Guida per l'AWS CloudFormation utente.

  • Per API i dettagli, vedere DescribeStacksin AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzaredescribe-type-registration.

AWS CLI

Per visualizzare le informazioni sulla registrazione dei tipi

L'describe-type-registrationesempio seguente visualizza informazioni sulla registrazione del tipo specificato, inclusi lo stato, il tipo e la versione correnti del tipo.

aws cloudformation describe-type-registration \ --registration-token a1b2c3d4-5678-90ab-cdef-EXAMPLE11111

Output:

{ "ProgressStatus": "COMPLETE", "TypeArn": "arn:aws:cloudformation:us-west-2:123456789012:type/resource/My-Logs-LogGroup", "Description": "Deployment is currently in DEPLOY_STAGE of status COMPLETED; ", "TypeVersionArn": "arn:aws:cloudformation:us-west-2:123456789012:type/resource/My-Logs-LogGroup/00000001" }

Per ulteriori informazioni, consulta Using the CloudFormation Registry nella AWS CloudFormation Users Guide.

Il seguente esempio di codice mostra come utilizzaredescribe-type.

AWS CLI

Per visualizzare le informazioni sul tipo

L'describe-typeesempio seguente visualizza le informazioni per il tipo specificato.

aws cloudformation describe-type \ --type-name My::Logs::LogGroup \ --type RESOURCE

Output:

{ "SourceUrl": "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-logs.git", "Description": "Customized resource derived from AWS::Logs::LogGroup", "TimeCreated": "2019-12-03T23:29:33.321Z", "Visibility": "PRIVATE", "TypeName": "My::Logs::LogGroup", "LastUpdated": "2019-12-03T23:29:33.321Z", "DeprecatedStatus": "LIVE", "ProvisioningType": "FULLY_MUTABLE", "Type": "RESOURCE", "Arn": "arn:aws:cloudformation:us-west-2:123456789012:type/resource/My-Logs-LogGroup/00000001", "Schema": "[details omitted]" }

Per ulteriori informazioni, vedere Using the CloudFormation Registry in the AWS CloudFormation Users Guide.

  • Per API i dettagli, vedere DescribeTypein AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzaredetect-stack-drift.

AWS CLI

Per rilevare risorse alla deriva

L'detect-stack-driftesempio seguente avvia il rilevamento della deriva per lo stack specificato.

aws cloudformation detect-stack-drift \ --stack-name my-stack

Output:

{ "StackDriftDetectionId": "1a229160-e4d9-xmpl-ab67-0a4f93df83d4" }

È quindi possibile utilizzare questo ID con il describe-stack-resource-drifts comando per descrivere le risorse alla deriva.

Il seguente esempio di codice mostra come utilizzaredetect-stack-resource-drift.

AWS CLI

Per rilevare la deriva di una risorsa

L'detect-stack-resource-driftesempio seguente controlla una risorsa denominata MyFunction in uno stack denominato driftMyStack:

aws cloudformation detect-stack-resource-drift \ --stack-name MyStack \ --logical-resource-id MyFunction

L'output mostra una funzione AWS Lambda che è stata modificata: out-of-band

{ "StackResourceDrift": { "StackId": "arn:aws:cloudformation:us-west-2:123456789012:stack/MyStack/d0a825a0-e4cd-xmpl-b9fb-061c69e99204", "LogicalResourceId": "MyFunction", "PhysicalResourceId": "my-function-SEZV4XMPL4S5", "ResourceType": "AWS::Lambda::Function", "ExpectedProperties": "{\"Description\":\"Write a file to S3.\",\"Environment\":{\"Variables\":{\"bucket\":\"my-stack-bucket-1vc62xmplgguf\"}},\"Handler\":\"index.handler\",\"MemorySize\":128,\"Role\":\"arn:aws:iam::123456789012:role/my-functionRole-HIZXMPLEOM9E\",\"Runtime\":\"nodejs10.x\",\"Tags\":[{\"Key\":\"lambda:createdBy\",\"Value\":\"SAM\"}],\"Timeout\":900,\"TracingConfig\":{\"Mode\":\"Active\"}}", "ActualProperties": "{\"Description\":\"Write a file to S3.\",\"Environment\":{\"Variables\":{\"bucket\":\"my-stack-bucket-1vc62xmplgguf\"}},\"Handler\":\"index.handler\",\"MemorySize\":256,\"Role\":\"arn:aws:iam::123456789012:role/my-functionRole-HIZXMPLEOM9E\",\"Runtime\":\"nodejs10.x\",\"Tags\":[{\"Key\":\"lambda:createdBy\",\"Value\":\"SAM\"}],\"Timeout\":22,\"TracingConfig\":{\"Mode\":\"Active\"}}", "PropertyDifferences": [ { "PropertyPath": "/MemorySize", "ExpectedValue": "128", "ActualValue": "256", "DifferenceType": "NOT_EQUAL" }, { "PropertyPath": "/Timeout", "ExpectedValue": "900", "ActualValue": "22", "DifferenceType": "NOT_EQUAL" } ], "StackResourceDriftStatus": "MODIFIED", "Timestamp": "2019-10-02T05:58:47.433Z" } }

Il seguente esempio di codice mostra come utilizzaredetect-stack-set-drift.

AWS CLI

Per rilevare la deriva su un set di stack e su tutte le istanze di stack associate

L'detect-stack-set-driftesempio seguente avvia le operazioni di rilevamento della deriva sullo stack set specificato, incluse tutte le istanze di stack associate a tale set di stack, e restituisce un ID di operazione che può essere utilizzato per tenere traccia dello stato dell'operazione di drift.

aws cloudformation detect-stack-set-drift \ --stack-set-name stack-set-drift-example

Output:

{ "OperationId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" }

Per ulteriori informazioni, vedere Rilevamento delle modifiche di configurazione non gestite negli stack set nella Guida per l'utente.AWS CloudFormation

Il seguente esempio di codice mostra come utilizzareestimate-template-cost.

AWS CLI

Per stimare il costo del modello

L'estimate-template-costesempio seguente genera una stima dei costi per un modello denominato template.yaml nella cartella corrente.

aws cloudformation estimate-template-cost \ --template-body file://template.yaml

Output:

{ "Url": "http://calculator.s3.amazonaws.com/calc5.html?key=cloudformation/7870825a-xmpl-4def-92e7-c4f8dd360cca" }

Il seguente esempio di codice mostra come utilizzareexecute-change-set.

AWS CLI

Per eseguire un set di modifiche

L'execute-change-setesempio seguente esegue un set di modifiche specificato dal nome del set di modifiche e dal nome dello stack.

aws cloudformation execute-change-set \ --change-set-name my-change-set \ --stack-name my-stack

L'execute-change-setesempio seguente esegue un set di modifiche specificato dalla parte completa del set ARN di modifiche.

aws cloudformation execute-change-set \ --change-set-name arn:aws:cloudformation:us-west-2:123456789012:changeSet/my-change-set/bc9555ba-a949-xmpl-bfb8-f41d04ec5784

Il seguente esempio di codice mostra come utilizzareget-stack-policy.

AWS CLI

Per visualizzare una politica dello stack

L'get-stack-policyesempio seguente mostra la politica dello stack per lo stack specificato. Per allegare una policy a uno stack, utilizzare il comando. set-stack-policy

aws cloudformation get-stack-policy \ --stack-name my-stack

Output:

{ "StackPolicyBody": "{\n \"Statement\" : [\n {\n \"Effect\" : \"Allow\",\n \"Action\" : \"Update:*\",\n \"Principal\": \"*\",\n \"Resource\" : \"*\"\n },\n {\n \"Effect\" : \"Deny\",\n \"Action\" : \"Update:*\",\n \"Principal\": \"*\",\n \"Resource\" : \"LogicalResourceId/bucket\"\n }\n ]\n}\n" }
  • Per API i dettagli, vedere GetStackPolicyin AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzareget-template-summary.

AWS CLI

Per visualizzare un riepilogo del modello

Il comando seguente visualizza informazioni di riepilogo sulle risorse e i metadati per il file modello specificato.

aws cloudformation get-template-summary \ --template-body file://template.yaml

Output:

{ "Parameters": [], "Description": "A VPC and subnets.", "ResourceTypes": [ "AWS::EC2::VPC", "AWS::EC2::Subnet", "AWS::EC2::Subnet", "AWS::EC2::RouteTable", "AWS::EC2::VPCEndpoint", "AWS::EC2::SubnetRouteTableAssociation", "AWS::EC2::SubnetRouteTableAssociation", "AWS::EC2::VPCEndpoint" ], "Version": "2010-09-09" }

Il seguente esempio di codice mostra come utilizzareget-template.

AWS CLI

Per visualizzare il corpo del modello per uno AWS CloudFormation stack

Il get-template comando seguente mostra il modello per lo myteststack stack:

aws cloudformation get-template --stack-name myteststack

Output:

{ "TemplateBody": { "AWSTemplateFormatVersion": "2010-09-09", "Outputs": { "BucketName": { "Description": "Name of S3 bucket to hold website content", "Value": { "Ref": "S3Bucket" } } }, "Description": "AWS CloudFormation Sample Template S3_Bucket: Sample template showing how to create a publicly accessible S3 bucket. **WARNING** This template creates an S3 bucket. You will be billed for the AWS resources used if you create a stack from this template.", "Resources": { "S3Bucket": { "Type": "AWS::S3::Bucket", "Properties": { "AccessControl": "PublicRead" } } } } }
  • Per API i dettagli, vedere GetTemplatein AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzarelist-change-sets.

AWS CLI

Per elencare i set di modifiche

L'list-change-setsesempio seguente visualizza un elenco dei set di modifiche in sospeso per lo stack specificato.

aws cloudformation list-change-sets \ --stack-name my-stack

Output:

{ "Summaries": [ { "StackId": "arn:aws:cloudformation:us-west-2:123456789012:stack/my-stack/d0a825a0-e4cd-xmpl-b9fb-061c69e99204", "StackName": "my-stack", "ChangeSetId": "arn:aws:cloudformation:us-west-2:123456789012:changeSet/my-change-set/70160340-7914-xmpl-bcbf-128a1fa78b5d", "ChangeSetName": "my-change-set", "ExecutionStatus": "AVAILABLE", "Status": "CREATE_COMPLETE", "CreationTime": "2019-10-02T05:38:54.297Z" } ] }
  • Per API i dettagli, vedere ListChangeSetsin AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzarelist-exports.

AWS CLI

Per elencare le esportazioni

L'list-exportsesempio seguente visualizza un elenco delle esportazioni dagli stack nella regione corrente.

aws cloudformation list-exports

Output:

{ "Exports": [ { "ExportingStackId": "arn:aws:cloudformation:us-west-2:123456789012:stack/private-vpc/99764070-b56c-xmpl-bee8-062a88d1d800", "Name": "private-vpc-subnet-a", "Value": "subnet-07b410xmplddcfa03" }, { "ExportingStackId": "arn:aws:cloudformation:us-west-2:123456789012:stack/private-vpc/99764070-b56c-xmpl-bee8-062a88d1d800", "Name": "private-vpc-subnet-b", "Value": "subnet-075ed3xmplebd2fb1" }, { "ExportingStackId": "arn:aws:cloudformation:us-west-2:123456789012:stack/private-vpc/99764070-b56c-xmpl-bee8-062a88d1d800", "Name": "private-vpc-vpcid", "Value": "vpc-011d7xmpl100e9841" } ] }
  • Per API i dettagli, vedere ListExportsin AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzarelist-imports.

AWS CLI

Per elencare le importazioni

L'list-importsesempio seguente elenca gli stack che importano l'esportazione specificata. Per ottenere l'elenco delle esportazioni disponibili, utilizzate il list-exports comando.

aws cloudformation list-imports \ --export-name private-vpc-vpcid

Output:

{ "Imports": [ "my-database-stack" ] }
  • Per API i dettagli, vedere ListImportsin AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzarelist-stack-instances.

AWS CLI

Per elencare le istanze di uno stack

L'list-stack-instancesesempio seguente elenca le istanze create dal set di stack specificato.

aws cloudformation list-stack-instances \ --stack-set-name enable-config

L'output di esempio include dettagli su uno stack che non è stato aggiornato a causa di un errore:

{ "Summaries": [ { "StackSetId": "enable-config:296a3360-xmpl-40af-be78-9341e95bf743", "Region": "us-west-2", "Account": "123456789012", "StackId": "arn:aws:cloudformation:ap-northeast-1:123456789012:stack/StackSet-enable-config-35a6ac50-d9f8-4084-86e4-7da34d5de4c4/a1631cd0-e5fb-xmpl-b474-0aa20f14f06e", "Status": "CURRENT" }, { "StackSetId": "enable-config:296a3360-xmpl-40af-be78-9341e95bf743", "Region": "us-west-2", "Account": "123456789012", "StackId": "arn:aws:cloudformation:us-west-2:123456789012:stack/StackSet-enable-config-e6cac20f-xmpl-46e9-8314-53e0d4591532/eab53680-e5fa-xmpl-ba14-0a522351f81e", "Status": "OUTDATED", "StatusReason": "ResourceLogicalId:ConfigDeliveryChannel, ResourceType:AWS::Config::DeliveryChannel, ResourceStatusReason:Failed to put delivery channel 'StackSet-enable-config-e6cac20f-xmpl-46e9-8314-53e0d4591532-ConfigDeliveryChannel-1OJWJ7XD59WR0' because the maximum number of delivery channels: 1 is reached. (Service: AmazonConfig; Status Code: 400; Error Code: MaxNumberOfDeliveryChannelsExceededException; Request ID: d14b34a0-ef7c-xmpl-acf8-8a864370ae56)." } ] }

Il seguente esempio di codice mostra come utilizzarelist-stack-resources.

AWS CLI

Per elencare le risorse in una pila

Il comando seguente visualizza l'elenco delle risorse nello stack specificato.

aws cloudformation list-stack-resources \ --stack-name my-stack

Output:

{ "StackResourceSummaries": [ { "LogicalResourceId": "bucket", "PhysicalResourceId": "my-stack-bucket-1vc62xmplgguf", "ResourceType": "AWS::S3::Bucket", "LastUpdatedTimestamp": "2019-10-02T04:34:11.345Z", "ResourceStatus": "CREATE_COMPLETE", "DriftInformation": { "StackResourceDriftStatus": "IN_SYNC" } }, { "LogicalResourceId": "function", "PhysicalResourceId": "my-function-SEZV4XMPL4S5", "ResourceType": "AWS::Lambda::Function", "LastUpdatedTimestamp": "2019-10-02T05:34:27.989Z", "ResourceStatus": "UPDATE_COMPLETE", "DriftInformation": { "StackResourceDriftStatus": "IN_SYNC" } }, { "LogicalResourceId": "functionRole", "PhysicalResourceId": "my-functionRole-HIZXMPLEOM9E", "ResourceType": "AWS::IAM::Role", "LastUpdatedTimestamp": "2019-10-02T04:34:06.350Z", "ResourceStatus": "CREATE_COMPLETE", "DriftInformation": { "StackResourceDriftStatus": "IN_SYNC" } } ] }

Il seguente esempio di codice mostra come utilizzarelist-stack-set-operation-results.

AWS CLI

Per elencare i risultati dell'operazione Stack Set

Il comando seguente visualizza i risultati di un'operazione di aggiornamento sulle istanze del set di stack specificato.

aws cloudformation list-stack-set-operation-results \ --stack-set-name enable-config \ --operation-id 35d45ebc-ed88-xmpl-ab59-0197a1fc83a0

Output:

{ "Summaries": [ { "Account": "223456789012", "Region": "us-west-2", "Status": "SUCCEEDED", "AccountGateResult": { "Status": "SKIPPED", "StatusReason": "Function not found: arn:aws:lambda:eu-west-1:223456789012:function:AWSCloudFormationStackSetAccountGate" } }, { "Account": "223456789012", "Region": "ap-south-1", "Status": "CANCELLED", "StatusReason": "Cancelled since failure tolerance has exceeded" } ] }

Nota: lo SKIPPED stato di AccountGateResult è previsto per le operazioni riuscite a meno che non si crei una funzione account gate.

Il seguente esempio di codice mostra come utilizzarelist-stack-set-operations.

AWS CLI

Per elencare le operazioni relative agli stack set

L'list-stack-set-operationsesempio seguente visualizza l'elenco delle operazioni più recenti sullo stack set specificato.

aws cloudformation list-stack-set-operations \ --stack-set-name my-stack-set

Output:

{ "Summaries": [ { "OperationId": "35d45ebc-ed88-xmpl-ab59-0197a1fc83a0", "Action": "UPDATE", "Status": "SUCCEEDED", "CreationTimestamp": "2019-10-03T16:28:44.377Z", "EndTimestamp": "2019-10-03T16:42:08.607Z" }, { "OperationId": "891aa98f-7118-xmpl-00b2-00954d1dd0d6", "Action": "UPDATE", "Status": "FAILED", "CreationTimestamp": "2019-10-03T15:43:53.916Z", "EndTimestamp": "2019-10-03T15:45:58.925Z" } ] }

Il seguente esempio di codice mostra come utilizzarelist-stack-sets.

AWS CLI

Per elencare i set di stack

L'list-stack-setsesempio seguente visualizza l'elenco dei set di stack nella regione e nell'account correnti.

aws cloudformation list-stack-sets

Output:

{ "Summaries": [ { "StackSetName": "enable-config", "StackSetId": "enable-config:296a3360-xmpl-40af-be78-9341e95bf743", "Description": "Enable AWS Config", "Status": "ACTIVE" } ] }
  • Per API i dettagli, vedere ListStackSetsin AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzarelist-stacks.

AWS CLI

Per elencare le AWS CloudFormation pile

Il list-stacks comando seguente mostra un riepilogo di tutti gli stack con uno stato di: CREATE_COMPLETE

aws cloudformation list-stacks --stack-status-filter CREATE_COMPLETE

Output:

[ { "StackId": "arn:aws:cloudformation:us-east-1:123456789012:stack/myteststack/466df9e0-0dff-08e3-8e2f-5088487c4896", "TemplateDescription": "AWS CloudFormation Sample Template S3_Bucket: Sample template showing how to create a publicly accessible S3 bucket. **WARNING** This template creates an S3 bucket. You will be billed for the AWS resources used if you create a stack from this template.", "StackStatusReason": null, "CreationTime": "2013-08-26T03:27:10.190Z", "StackName": "myteststack", "StackStatus": "CREATE_COMPLETE" } ]
  • Per API i dettagli, vedere ListStacksin AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzarelist-type-registrations.

AWS CLI

Per elencare le registrazioni completate di un tipo

L'list-type-registrationsesempio seguente visualizza un elenco delle registrazioni di tipo completate per il tipo specificato.

aws cloudformation list-type-registrations \ --type RESOURCE \ --type-name My::Logs::LogGroup \ --registration-status-filter COMPLETE

Output:

{ "RegistrationTokenList": [ "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222", "a1b2c3d4-5678-90ab-cdef-EXAMPLE33333" ] }

Per ulteriori informazioni, vedere Using the CloudFormation Registry nella AWS CloudFormation Users Guide.

Il seguente esempio di codice mostra come utilizzarelist-type-versions.

AWS CLI

Per elencare la versione di un'estensione

L'list-type-versionsesempio seguente restituisce informazioni di riepilogo sulle versioni di un'estensione.

aws cloudformation list-type-versions \ --endpoint https://example.com \ --region us-west-2 \ --type RESOURCE \ --type-name My::Resource::Example \ --publisher-id 123456789012

Questo comando non produce alcun output.

Per ulteriori informazioni, vedere Uso del AWS CloudFormation registro nella Guida per l'AWS CloudFormation utente.

Il seguente esempio di codice mostra come utilizzarelist-types.

AWS CLI

Per elencare i tipi di risorse private presenti in un account

L'list-typesesempio seguente visualizza un elenco dei tipi di risorse private attualmente registrati nell' AWS account corrente.

aws cloudformation list-types

Output:

{ "TypeSummaries": [ { "Description": "WordPress blog resource for internal use", "LastUpdated": "2019-12-04T18:28:15.059Z", "TypeName": "My::WordPress::BlogExample", "TypeArn": "arn:aws:cloudformation:us-west-2:123456789012:type/resource/My-WordPress-BlogExample", "DefaultVersionId": "00000005", "Type": "RESOURCE" }, { "Description": "Customized resource derived from AWS::Logs::LogGroup", "LastUpdated": "2019-12-04T18:28:15.059Z", "TypeName": "My::Logs::LogGroup", "TypeArn": "arn:aws:cloudformation:us-west-2:123456789012:type/resource/My-Logs-LogGroup", "DefaultVersionId": "00000003", "Type": "RESOURCE" } ] }

Per ulteriori informazioni, vedere Using the CloudFormation Registry nella AWS CloudFormation Users Guide.

  • Per API i dettagli, vedere ListTypesin AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzarepackage.

AWS CLI

Il comando seguente esporta un modello denominato template.json caricando artefatti locali nel bucket S3 bucket-name e scrive il modello esportato in: packaged-template.json

aws cloudformation package --template-file /path_to_template/template.json --s3-bucket bucket-name --output-template-file packaged-template.json --use-json
  • Per API i dettagli, vedere Package in AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzarepublish-type.

AWS CLI

Per pubblicare un'estensione

L'publish-typeesempio seguente pubblica l'estensione specificata nel CloudFormation registro come estensione pubblica in questa regione.

aws cloudformation publish-type \ --region us-west-2 \ --type RESOURCE \ --type-name Example::Test::1234567890abcdef0

Output:

{ "PublicTypeArn":"arn:aws:cloudformation:us-west-2::type/resource/000q6TfUovXsEMmgKowxDZLlwqr2QUshd2e75c8c/Example-Test-1234567890abcdef0/1.0.0" }

Per ulteriori informazioni, vedere Using the AWS CloudFormation registry in the AWS CloudFormation User Guide.

  • Per API i dettagli, vedere PublishTypein AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzareregister-publisher.

AWS CLI

Per registrare un editore

L'register-publisheresempio seguente registra un editore e accetta il parametro terms and condition.

aws cloudformation register-publisher \ --region us-west-2 \ --accept-terms-and-conditions

Output:

{ "PublisherId": "000q6TfUovXsEMmgKowxDZLlwqr2QUshd2e75c8c" }

Per ulteriori informazioni, vedere Using the AWS CloudFormation registry in the AWS CloudFormation User Guide.

Il seguente esempio di codice mostra come utilizzareregister-type.

AWS CLI

Per registrare un tipo di risorsa

L'register-typeesempio seguente registra il tipo di risorsa specificato come tipo di risorsa privata nell'account dell'utente.

aws cloudformation register-type \ --type-name My::Organization::ResourceName \ --schema-handler-package s3://bucket_name/my-organization-resource_name.zip \ --type RESOURCE

Output:

{ "RegistrationToken": "f5525280-104e-4d35-bef5-8f1f1example" }

Per ulteriori informazioni, vedere Registrazione dei provider di risorse nella Guida utente dell'interfaccia a riga di CloudFormation comando per lo sviluppo dei tipi.

  • Per API i dettagli, vedere RegisterTypein AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzareset-stack-policy.

AWS CLI

Per applicare una politica di stack

L'set-stack-policyesempio seguente disabilita gli aggiornamenti per la risorsa specificata nello stack specificato. stack-policy.jsonè un JSON documento che definisce le operazioni consentite sulle risorse dello stack.

aws cloudformation set-stack-policy \ --stack-name my-stack \ --stack-policy-body file://stack-policy.json

Output:

{ "Statement" : [ { "Effect" : "Allow", "Action" : "Update:*", "Principal": "*", "Resource" : "*" }, { "Effect" : "Deny", "Action" : "Update:*", "Principal": "*", "Resource" : "LogicalResourceId/bucket" } ] }
  • Per API i dettagli, vedere SetStackPolicyin AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzareset-type-configuration.

AWS CLI

Per configurare i dati

L'set-type-configurationesempio seguente specifica i dati di configurazione per un' CloudFormation estensione registrata, nell'account e nella regione specificati.

aws cloudformation set-type-configuration \ --region us-west-2 \ --type RESOURCE \ --type-name Example::Test::Type \ --configuration-alias default \ --configuration "{\"CredentialKey\": \"testUserCredential\"}"

Output:

{ "ConfigurationArn": "arn:aws:cloudformation:us-west-2:123456789012:type-configuration/resource/Example-Test-Type/default" }

Per ulteriori informazioni, vedere Uso del AWS CloudFormation registro nella Guida per l'AWS CloudFormation utente.

Il seguente esempio di codice mostra come utilizzareset-type-default-version.

AWS CLI

Per impostare la versione predefinita di un tipo

L'set-type-default-versionesempio seguente imposta la versione del tipo specificato da utilizzare come predefinita per questo tipo.

aws cloudformation set-type-default-version \ --type RESOURCE \ --type-name My::Logs::LogGroup \ --version-id 00000003

Questo comando non produce alcun output.

Per ulteriori informazioni, vedere Using the CloudFormation Registry nella AWS CloudFormation Users Guide.

Il seguente esempio di codice mostra come utilizzaresignal-resource.

AWS CLI

Per segnalare una risorsa

L'signal-resourceesempio seguente segnala success di soddisfare la condizione di attesa indicata MyWaitCondition nello stack denominatomy-stack.

aws cloudformation signal-resource \ --stack-name my-stack \ --logical-resource-id MyWaitCondition \ --unique-id 1234 \ --status SUCCESS

Questo comando non produce alcun output.

  • Per API i dettagli, vedere SignalResourcein AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzarestop-stack-set-operation.

AWS CLI

Per interrompere un'operazione di stack set

L'stop-stack-set-operationesempio seguente interrompe un'operazione di aggiornamento in corso sul set di stack specificato.

aws cloudformation stop-stack-set-operation \ --stack-set-name my-stack-set \ --operation-id 1261cd27-490b-xmpl-ab42-793a896c69e6

Questo comando non produce alcun output.

Il seguente esempio di codice mostra come utilizzaretest-type.

AWS CLI

Per testare un'estensione

L'test-typeesempio seguente verifica un'estensione registrata per assicurarsi che soddisfi tutti i requisiti necessari per la pubblicazione nel CloudFormation registro.

aws cloudformation test-type \ --arn arn:aws:cloudformation:us-west-2:123456789012:type/resource/Sample-Test-Resource123/00000001

Output:

{ "TypeVersionArn": "arn:aws:cloudformation:us-west-2:123456789012:type/resource/Sample-Test-Resource123/00000001" }

Per ulteriori informazioni, vedere Uso del AWS CloudFormation registro nella Guida per l'AWS CloudFormation utente.

  • Per API i dettagli, vedere TestTypein AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzareupdate-stack-instances.

AWS CLI

Per aggiornare le istanze dello stack

L'update-stack-instancesesempio seguente riprova a eseguire un aggiornamento sulle istanze dello stack in due account in due regioni con le impostazioni più recenti. L'impostazione di tolleranza agli errori specificata garantisce che l'aggiornamento venga tentato in tutti gli account e le regioni, anche se alcuni stack non possono essere aggiornati.

aws cloudformation update-stack-instances \ --stack-set-name my-stack-set \ --accounts 123456789012 567890123456 \ --regions us-east-1 us-west-2 \ --operation-preferences FailureToleranceCount=3

Output:

{ "OperationId": "103ebdf2-21ea-xmpl-8892-de5e30733132" }

Il seguente esempio di codice mostra come utilizzareupdate-stack-set.

AWS CLI

Per aggiornare un set di stack

L'update-stack-setesempio seguente aggiunge un tag con il nome della chiave Owner e il valore di IT alle istanze dello stack nel set di stack specificato.

aws cloudformation update-stack-set \ --stack-set-name my-stack-set \ --use-previous-template \ --tags Key=Owner,Value=IT

Output:

{ "OperationId": "e2b60321-6cab-xmpl-bde7-530c6f47950e" }
  • Per API i dettagli, vedere UpdateStackSetin AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzareupdate-stack.

AWS CLI

Per aggiornare gli AWS CloudFormation stack

Il update-stack comando seguente aggiorna il modello e i parametri di input per lo mystack stack:

aws cloudformation update-stack --stack-name mystack --template-url https://s3.amazonaws.com/sample/updated.template --parameters ParameterKey=KeyPairName,ParameterValue=SampleKeyPair ParameterKey=SubnetIDs,ParameterValue=SampleSubnetID1\\,SampleSubnetID2

Il update-stack comando seguente aggiorna solo il valore del SubnetIDs parametro per lo mystack stack. Se non si specifica un valore di parametro, viene utilizzato il valore predefinito specificato nel modello:

aws cloudformation update-stack --stack-name mystack --template-url https://s3.amazonaws.com/sample/updated.template --parameters ParameterKey=KeyPairName,UsePreviousValue=true ParameterKey=SubnetIDs,ParameterValue=SampleSubnetID1\\,UpdatedSampleSubnetID2

Il update-stack comando seguente aggiunge due argomenti di notifica dello stack allo mystack stack:

aws cloudformation update-stack --stack-name mystack --use-previous-template --notification-arns "arn:aws:sns:use-east-1:123456789012:mytopic1" "arn:aws:sns:us-east-1:123456789012:mytopic2"

Per ulteriori informazioni, consulta gli aggiornamenti AWS CloudFormation dello stack nella Guida per l'AWS CloudFormation utente.

  • Per API i dettagli, vedere UpdateStackin AWS CLI Command Reference.

Il seguente esempio di codice mostra come utilizzareupdate-termination-protection.

AWS CLI

Per abilitare la protezione dalla terminazione

L'update-termination-protectionesempio seguente abilita la protezione dalla terminazione nello stack specificato.

aws cloudformation update-termination-protection \ --stack-name my-stack \ --enable-termination-protection

Output:

{ "StackId": "arn:aws:cloudformation:us-west-2:123456789012:stack/my-stack/d0a825a0-e4cd-xmpl-b9fb-061c69e99204" }

Il seguente esempio di codice mostra come utilizzarevalidate-template.

AWS CLI

Per convalidare un modello AWS CloudFormation

Il validate-template comando seguente convalida il sampletemplate.json modello:

aws cloudformation validate-template --template-body file://sampletemplate.json

Output:

{ "Description": "AWS CloudFormation Sample Template S3_Bucket: Sample template showing how to create a publicly accessible S3 bucket. **WARNING** This template creates an S3 bucket. You will be billed for the AWS resources used if you create a stack from this template.", "Parameters": [], "Capabilities": [] }

Per ulteriori informazioni, vedere Working with AWS CloudFormation Templates nella Guida per l'AWS CloudFormation utente.