D’autres exemples de kits AWS SDK sont disponibles dans le référentiel GitHub AWS Doc SDK Examples
Utilisation de UpdateStack avec une CLI
Les exemples de code suivants illustrent comment utiliser UpdateStack.
- CLI
-
- AWS CLI
-
Pour mettre à jour des piles AWS CloudFormation
La commande
update-stacksuivante met à jour le modèle et les paramètres d’entrée de la pilemystack:aws cloudformation update-stack --stack-namemystack--template-urlhttps://s3.amazonaws.com/sample/updated.template--parametersParameterKey=KeyPairName,ParameterValue=SampleKeyPairParameterKey=SubnetIDs,ParameterValue=SampleSubnetID1\\,SampleSubnetID2La commande
update-stacksuivante met uniquement à jour la valeur de paramètreSubnetIDsde la pilemystack. Si vous ne spécifiez aucune valeur de paramètre, la valeur par défaut spécifiée dans le modèle est utilisée :aws cloudformation update-stack --stack-namemystack--template-urlhttps://s3.amazonaws.com/sample/updated.template--parametersParameterKey=KeyPairName,UsePreviousValue=trueParameterKey=SubnetIDs,ParameterValue=SampleSubnetID1\\,UpdatedSampleSubnetID2La commande
update-stacksuivante ajoute deux rubriques de notification de pile à la pilemystack:aws cloudformation update-stack --stack-namemystack--use-previous-template --notification-arns"arn:aws:sns:use-east-1:123456789012:mytopic1""arn:aws:sns:us-east-1:123456789012:mytopic2"Pour plus d’informations, consultez Mises à jour des piles AWS CloudFormation dans le Guide de l’utilisateur AWS CloudFormation.
-
Pour plus de détails sur l’API, consultez UpdateStack
dans la Référence des commandes de l’AWS CLI.
-
- PowerShell
-
- Outils pour PowerShell V4
-
Exemple 1 : met à jour la pile « myStack » avec le modèle et les paramètres de personnalisation spécifiés. « PK1 » représente le nom d’un paramètre déclaré dans le modèle et « PV1 » représente sa valeur. Les paramètres de personnalisation peuvent également être spécifiés en utilisant « Key » et « Value » au lieu de « ParameterKey » et « ParameterValue ».
Update-CFNStack -StackName "myStack" ` -TemplateBody "{Template Content Here}" ` -Parameter @{ ParameterKey="PK1"; ParameterValue="PV1" }Exemple 2 : met à jour la pile « myStack » avec le modèle et les paramètres de personnalisation spécifiés. « PK1 » et « PK2 » représentent les noms des paramètres déclarés dans le modèle, « PV1 » et « PV2 » représentent les valeurs demandées. Les paramètres de personnalisation peuvent également être spécifiés en utilisant « Key » et « Value » au lieu de « ParameterKey » et « ParameterValue ».
Update-CFNStack -StackName "myStack" ` -TemplateBody "{Template Content Here}" ` -Parameter @( @{ ParameterKey="PK1"; ParameterValue="PV1" }, @{ ParameterKey="PK2"; ParameterValue="PV2" } )Exemple 3 : met à jour la pile « myStack » avec le modèle et les paramètres de personnalisation spécifiés. « PK1 » représente le nom d’un paramètre déclaré dans le modèle et « PV2 » représente sa valeur. Les paramètres de personnalisation peuvent également être spécifiés en utilisant « Key » et « Value » au lieu de « ParameterKey » et « ParameterValue ».
Update-CFNStack -StackName "myStack" -TemplateBody "{Template Content Here}" -Parameters @{ ParameterKey="PK1"; ParameterValue="PV1" }Exemple 4 : met à jour la pile « myStack » avec le modèle obtenu à partir d’Amazon S3 et les paramètres de personnalisation spécifiés. « PK1 » et « PK2 » représentent les noms des paramètres déclarés dans le modèle, « PV1 » et « PV2 » représentent les valeurs demandées. Les paramètres de personnalisation peuvent également être spécifiés en utilisant « Key » et « Value » au lieu de « ParameterKey » et « ParameterValue ».
Update-CFNStack -StackName "myStack" ` -TemplateURL https://s3.amazonaws.com/amzn-s3-demo-bucket/templatefile.template ` -Parameter @( @{ ParameterKey="PK1"; ParameterValue="PV1" }, @{ ParameterKey="PK2"; ParameterValue="PV2" } )Exemple 5 : met à jour la pile « myStack », qui est supposée dans cet exemple contenir des ressources IAM, avec le modèle spécifié, obtenu auprès d’Amazon S3, et les paramètres de personnalisation. « PK1 » et « PK2 » représentent les noms des paramètres déclarés dans le modèle, « PV1 » et « PV2 » représentent les valeurs demandées. Les paramètres de personnalisation peuvent également être spécifiés en utilisant « Key » et « Value » au lieu de « ParameterKey » et « ParameterValue ». Les piles contenant des ressources IAM nécessitent que vous spécifiiez le paramètre -Capabilities « CAPABILITY_IAM », sinon la mise à jour échouera avec une erreur « InsufficientCapabilities.
Update-CFNStack -StackName "myStack" ` -TemplateURL https://s3.amazonaws.com/amzn-s3-demo-bucket/templatefile.template ` -Parameter @( @{ ParameterKey="PK1"; ParameterValue="PV1" }, @{ ParameterKey="PK2"; ParameterValue="PV2" } ) ` -Capabilities "CAPABILITY_IAM"-
Pour plus de détails sur l’API, consultez UpdateStack dans la Référence des cmdlets Outils AWS pour PowerShell (V4).
-
- Outils pour PowerShell V5
-
Exemple 1 : met à jour la pile « myStack » avec le modèle et les paramètres de personnalisation spécifiés. « PK1 » représente le nom d’un paramètre déclaré dans le modèle et « PV1 » représente sa valeur. Les paramètres de personnalisation peuvent également être spécifiés en utilisant « Key » et « Value » au lieu de « ParameterKey » et « ParameterValue ».
Update-CFNStack -StackName "myStack" ` -TemplateBody "{Template Content Here}" ` -Parameter @{ ParameterKey="PK1"; ParameterValue="PV1" }Exemple 2 : met à jour la pile « myStack » avec le modèle et les paramètres de personnalisation spécifiés. « PK1 » et « PK2 » représentent les noms des paramètres déclarés dans le modèle, « PV1 » et « PV2 » représentent les valeurs demandées. Les paramètres de personnalisation peuvent également être spécifiés en utilisant « Key » et « Value » au lieu de « ParameterKey » et « ParameterValue ».
Update-CFNStack -StackName "myStack" ` -TemplateBody "{Template Content Here}" ` -Parameter @( @{ ParameterKey="PK1"; ParameterValue="PV1" }, @{ ParameterKey="PK2"; ParameterValue="PV2" } )Exemple 3 : met à jour la pile « myStack » avec le modèle et les paramètres de personnalisation spécifiés. « PK1 » représente le nom d’un paramètre déclaré dans le modèle et « PV2 » représente sa valeur. Les paramètres de personnalisation peuvent également être spécifiés en utilisant « Key » et « Value » au lieu de « ParameterKey » et « ParameterValue ».
Update-CFNStack -StackName "myStack" -TemplateBody "{Template Content Here}" -Parameters @{ ParameterKey="PK1"; ParameterValue="PV1" }Exemple 4 : met à jour la pile « myStack » avec le modèle obtenu à partir d’Amazon S3 et les paramètres de personnalisation spécifiés. « PK1 » et « PK2 » représentent les noms des paramètres déclarés dans le modèle, « PV1 » et « PV2 » représentent les valeurs demandées. Les paramètres de personnalisation peuvent également être spécifiés en utilisant « Key » et « Value » au lieu de « ParameterKey » et « ParameterValue ».
Update-CFNStack -StackName "myStack" ` -TemplateURL https://s3.amazonaws.com/amzn-s3-demo-bucket/templatefile.template ` -Parameter @( @{ ParameterKey="PK1"; ParameterValue="PV1" }, @{ ParameterKey="PK2"; ParameterValue="PV2" } )Exemple 5 : met à jour la pile « myStack », qui est supposée dans cet exemple contenir des ressources IAM, avec le modèle spécifié, obtenu auprès d’Amazon S3, et les paramètres de personnalisation. « PK1 » et « PK2 » représentent les noms des paramètres déclarés dans le modèle, « PV1 » et « PV2 » représentent les valeurs demandées. Les paramètres de personnalisation peuvent également être spécifiés en utilisant « Key » et « Value » au lieu de « ParameterKey » et « ParameterValue ». Les piles contenant des ressources IAM nécessitent que vous spécifiiez le paramètre -Capabilities « CAPABILITY_IAM », sinon la mise à jour échouera avec une erreur « InsufficientCapabilities.
Update-CFNStack -StackName "myStack" ` -TemplateURL https://s3.amazonaws.com/amzn-s3-demo-bucket/templatefile.template ` -Parameter @( @{ ParameterKey="PK1"; ParameterValue="PV1" }, @{ ParameterKey="PK2"; ParameterValue="PV2" } ) ` -Capabilities "CAPABILITY_IAM"-
Pour plus de détails sur l’API, consultez UpdateStack dans la Référence des cmdlets Outils AWS pour PowerShell (V5).
-