J'essaie de valider un modèle Cloudformation. La commande que j'émets est:
▶ aws cloudformation validate-template --template-body file://template.json
La réponse que j'obtiens, cependant, est:
"CapabilitiesReason": "The following resource(s) require capabilities:
[AWS::IAM::Role]",
Je ne trouve malheureusement aucun moyen de définir la capacité.
Comment définissez-vous la capacité?
Les sorties Capabilities
et CapabilitiesReason
de validate-template
ne sont pas des erreurs. Ce sont des sorties normales répertoriant les ressources nécessitant des capacités qui devront être spécifiées (via --capabilities
) lors de l'exécution create-stack
ou update-stack
à l'avenir.
Vous pouvez confirmer qu'une validation a réussi sans erreur en vérifiant que le code retour est 0
indiquant que la commande s'est terminée avec succès.
La documentation pour les sorties validate-template est la suivante:
Capacités -> (liste)
Les capacités trouvées dans le modèle. Si votre modèle contient des ressources IAM, vous devez spécifier le
CAPABILITY_IAM
ouCAPABILITY_NAMED_IAM
valeur pour ce paramètre lorsque vous utilisez lecreate-stack
ouupdate-stack
actions avec votre modèle; sinon, ces actions renvoient une erreurInsufficientCapabilities
. Pour plus d'informations, consultez Reconnaissance des ressources IAM dans les modèles AWS CloudFormation .Raison des capacités -> (chaîne)
Liste des ressources qui ont généré les valeurs de l'élément de réponse Capacités.