Utilizzare CreateStack con una CLI - Esempi di codice per SDK AWS

Sono disponibili altri esempi per SDK AWS nel repository GitHub della documentazione degli esempi per SDK AWS.

Utilizzare CreateStack con una CLI

Gli esempi di codice seguenti mostrano come utilizzare CreateStack.

CLI
AWS CLI

Come creare uno stack AWS CloudFormation

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

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 Stack nella Guida per l’utente di AWS CloudFormation.

  • Per informazioni dettagliate sull’API, consulta CreateStack in AWS CLI Command Reference.

PowerShell
Strumenti per PowerShell V4

Esempio 1: crea un nuovo stack con il nome specificato. Il modello viene analizzato a partire dal contenuto fornito con parametri di personalizzazione (“PK1” e “PK2” rappresentano i nomi dei parametri dichiarati nel contenuto del modello, mentre “PV1” e “PV2” rappresentano i valori di tali parametri). I parametri di personalizzazione possono essere specificati anche utilizzando “Key” e “Value” anziché “ParameterKey” e “ParameterValue”. Se la creazione dello stack ha esito negativo, non verrà eseguito il rollback dello stack.

New-CFNStack -StackName "myStack" ` -TemplateBody "{TEMPLATE CONTENT HERE}" ` -Parameter @( @{ ParameterKey="PK1"; ParameterValue="PV1" }, @{ ParameterKey="PK2"; ParameterValue="PV2" }) ` -DisableRollback $true

Esempio 2: crea un nuovo stack con il nome specificato. Il modello viene analizzato a partire dal contenuto fornito con parametri di personalizzazione (“PK1” e “PK2” rappresentano i nomi dei parametri dichiarati nel contenuto del modello, mentre “PV1” e “PV2” rappresentano i valori di tali parametri). I parametri di personalizzazione possono essere specificati anche utilizzando “Key” e “Value” anziché “ParameterKey” e “ParameterValue”. Se la creazione dello stack ha esito negativo, verrà eseguito il rollback dello stack.

$p1 = New-Object -Type Amazon.CloudFormation.Model.Parameter $p1.ParameterKey = "PK1" $p1.ParameterValue = "PV1" $p2 = New-Object -Type Amazon.CloudFormation.Model.Parameter $p2.ParameterKey = "PK2" $p2.ParameterValue = "PV2" New-CFNStack -StackName "myStack" ` -TemplateBody "{TEMPLATE CONTENT HERE}" ` -Parameter @( $p1, $p2 ) ` -OnFailure "ROLLBACK"

Esempio 3: crea un nuovo stack con il nome specificato. Il modello è ottenuto dall’URL di Amazon S3 con i parametri di personalizzazione (“PK1” rappresenta il nome di un parametro dichiarato nel contenuto del modello, “PV1” rappresenta il valore del parametro. I parametri di personalizzazione possono essere specificati anche utilizzando “Key” e “Value” anziché “ParameterKey” e “ParameterValue”. Se la creazione dello stack ha esito negativo, verrà eseguito il rollback dello stack (equivale a specificare -DisableRollback $false).

New-CFNStack -StackName "myStack" ` -TemplateURL https://s3.amazonaws.com/amzn-s3-demo-bucket/templatefile.template ` -Parameter @{ ParameterKey="PK1"; ParameterValue="PV1" }

Esempio 4: crea un nuovo stack con il nome specificato. Il modello è ottenuto dall’URL di Amazon S3 con i parametri di personalizzazione (“PK1” rappresenta il nome di un parametro dichiarato nel contenuto del modello, “PV1” rappresenta il valore del parametro. I parametri di personalizzazione possono essere specificati anche utilizzando “Key” e “Value” anziché “ParameterKey” e “ParameterValue”. Se la creazione dello stack ha esito negativo, verrà eseguito il rollback dello stack (equivale a specificare -DisableRollback $false). La notifica specificata che i servizi di notifica degli eventi Amazon riceveranno in caso di eventi pubblicati relativi allo stack.

New-CFNStack -StackName "myStack" ` -TemplateURL https://s3.amazonaws.com/amzn-s3-demo-bucket/templatefile.template ` -Parameter @{ ParameterKey="PK1"; ParameterValue="PV1" } ` -NotificationARN @( "arn1", "arn2" )
  • Per informazioni dettagliate sull’API, consulta CreateStack nella documentazione di riferimento dei cmdlet di AWS Strumenti per PowerShell (V4).

Strumenti per PowerShell V5

Esempio 1: crea un nuovo stack con il nome specificato. Il modello viene analizzato a partire dal contenuto fornito con parametri di personalizzazione (“PK1” e “PK2” rappresentano i nomi dei parametri dichiarati nel contenuto del modello, mentre “PV1” e “PV2” rappresentano i valori di tali parametri). I parametri di personalizzazione possono essere specificati anche utilizzando “Key” e “Value” anziché “ParameterKey” e “ParameterValue”. Se la creazione dello stack ha esito negativo, non verrà eseguito il rollback dello stack.

New-CFNStack -StackName "myStack" ` -TemplateBody "{TEMPLATE CONTENT HERE}" ` -Parameter @( @{ ParameterKey="PK1"; ParameterValue="PV1" }, @{ ParameterKey="PK2"; ParameterValue="PV2" }) ` -DisableRollback $true

Esempio 2: crea un nuovo stack con il nome specificato. Il modello viene analizzato a partire dal contenuto fornito con parametri di personalizzazione (“PK1” e “PK2” rappresentano i nomi dei parametri dichiarati nel contenuto del modello, mentre “PV1” e “PV2” rappresentano i valori di tali parametri). I parametri di personalizzazione possono essere specificati anche utilizzando “Key” e “Value” anziché “ParameterKey” e “ParameterValue”. Se la creazione dello stack ha esito negativo, verrà eseguito il rollback dello stack.

$p1 = New-Object -Type Amazon.CloudFormation.Model.Parameter $p1.ParameterKey = "PK1" $p1.ParameterValue = "PV1" $p2 = New-Object -Type Amazon.CloudFormation.Model.Parameter $p2.ParameterKey = "PK2" $p2.ParameterValue = "PV2" New-CFNStack -StackName "myStack" ` -TemplateBody "{TEMPLATE CONTENT HERE}" ` -Parameter @( $p1, $p2 ) ` -OnFailure "ROLLBACK"

Esempio 3: crea un nuovo stack con il nome specificato. Il modello è ottenuto dall’URL di Amazon S3 con i parametri di personalizzazione (“PK1” rappresenta il nome di un parametro dichiarato nel contenuto del modello, “PV1” rappresenta il valore del parametro. I parametri di personalizzazione possono essere specificati anche utilizzando “Key” e “Value” anziché “ParameterKey” e “ParameterValue”. Se la creazione dello stack ha esito negativo, verrà eseguito il rollback dello stack (equivale a specificare -DisableRollback $false).

New-CFNStack -StackName "myStack" ` -TemplateURL https://s3.amazonaws.com/amzn-s3-demo-bucket/templatefile.template ` -Parameter @{ ParameterKey="PK1"; ParameterValue="PV1" }

Esempio 4: crea un nuovo stack con il nome specificato. Il modello è ottenuto dall’URL di Amazon S3 con i parametri di personalizzazione (“PK1” rappresenta il nome di un parametro dichiarato nel contenuto del modello, “PV1” rappresenta il valore del parametro. I parametri di personalizzazione possono essere specificati anche utilizzando “Key” e “Value” anziché “ParameterKey” e “ParameterValue”. Se la creazione dello stack ha esito negativo, verrà eseguito il rollback dello stack (equivale a specificare -DisableRollback $false). La notifica specificata che i servizi di notifica degli eventi Amazon riceveranno in caso di eventi pubblicati relativi allo stack.

New-CFNStack -StackName "myStack" ` -TemplateURL https://s3.amazonaws.com/amzn-s3-demo-bucket/templatefile.template ` -Parameter @{ ParameterKey="PK1"; ParameterValue="PV1" } ` -NotificationARN @( "arn1", "arn2" )
  • Per informazioni dettagliate sull’API, consulta CreateStack nella documentazione di riferimento dei cmdlet di AWS Strumenti per PowerShell (V5).