Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
AWS CloudFormation référence aux propriétés de configuration
Lorsque vous créez un CodePipeline pipeline, vous ajoutez une Deploy
action au pipeline en AWS CloudFormation tant que fournisseur. Vous devez ensuite spécifier l' AWS CloudFormation action invoquée par le pipeline et les paramètres de l'action. Cette rubrique décrit les propriétés de configuration AWS CloudFormation . Pour définir les propriétés, vous pouvez utiliser la CodePipeline console ou créer un JSON objet à utiliser pour les AWS CloudFormation modèles AWS CLI CodePipeline API, ou.
Rubriques
Propriétés de configuration (Console)
La CodePipeline console
Note
Lorsque vous créez un nouveau pipeline, vous pouvez spécifier uniquement les modes d'action Créer ou mettre à jour une pile ou Créer ou remplacer un jeu de modifications. Les propriétés de la section Avancé sont disponibles uniquement lorsque vous modifiez un pipeline.
- Mode d'action
-
L' AWS CloudFormation action qui est CodePipeline invoquée lors du traitement de l'étape associée. Choisissez l'un des modes d'action suivants :
-
Créer ou remplacer un jeu de modifications permet de créer le jeu de modifications s'il n'existe pas, en fonction du nom de la pile et du modèle que vous soumettez. Si l'ensemble de modifications existe, AWS CloudFormation il est supprimé, puis en crée un nouveau.
-
Créer ou mettre à jour une pile crée la pile si la pile spécifiée n'existe pas. Si la pile existe, AWS CloudFormation met à jour la pile. Utilisez cette action pour mettre à jour les piles existantes. CodePipeline ne remplacera pas la pile.
-
Supprimer une pile supprime une pile. Si vous spécifiez une pile qui n'existe pas, l'action se termine avec succès sans supprimer de pile.
-
Exécuter un jeu de modifications exécute un jeu de modifications.
-
Remplacer une pile ayant échoué crée la pile si la pile spécifiée n'existe pas. Si la pile existe et est dans un état défaillant (signalé comme
ROLLBACK_COMPLETE
ROLLBACK_FAILED
CREATE_FAILED
,DELETE_FAILED
,, ouUPDATE_ROLLBACK_FAILED
), AWS CloudFormation supprime la pile puis en crée une nouvelle. Si la pile n'est pas en état d'échec, mettez-la AWS CloudFormation à jour. Utilisez cette action pour remplacer les piles ayant échoué sans les récupérer ou les dépanner. Généralement, ce mode est choisi pour le test.
-
- Nom de la pile
-
Nom associé à une pile existante ou à une pile que vous souhaitez créer. Le nom doit être unique dans la AWS région dans laquelle vous créez la pile.
Note
Un nom de pile ne peut contenir que des caractères alphanumériques (sensibles à la casse) et des traits d'union. Il doit commencer par un caractère alphabétique et ne doit pas dépasser 128 caractères.
- Modifier le nom du jeu
-
Nom d'un jeu existant de modifications ou d'un nouveau jeu que vous souhaitez créer pour la pile spécifiée.
- Modèle
-
Emplacement d'un fichier AWS CloudFormation modèle, qui suit le format
.ArtifactName
::TemplateFileName
- Configuration de modèle
-
Emplacement d'un fichier de configuration de modèle conforme au format
. Le fichier de configuration de modèle peut contenir des valeurs de paramètres du modèle, une politique de pile et des balises. Si vous incluez des informations sensibles, telles que des mots de passe, limitez l'accès à ce fichier. Pour de plus amples informations, veuillez consulter AWS CloudFormation artefacts.ArtifactName
::TemplateConfigurationFileName
- Capacités
-
Pour les piles contenant certaines ressources, reconnaissance explicite AWS CloudFormation susceptible de créer ou de mettre à jour ces ressources. Par exemple, vous devez spécifier
CAPABILITY_IAM
si votre modèle de pile contient des ressources AWS Identity and Access Management (IAM). Pour plus d’informations, consultez .CreateStackAPIparamètres de demande d'opération.Si vous disposez de ressources IAM dans votre modèle de pile, vous devez spécifier cette propriété.
Vous pouvez spécifier plusieurs capacités.
- Nom de rôle
-
Nom du rôle de IAM service AWS CloudFormation assumé lorsqu'il agit sur les ressources de la pile spécifiée.
- Nom du fichier de sortie
-
Dans la section Avancé, vous pouvez spécifier un nom de fichier de sortie, tel que
CreateStackOutput.json
, qui s' CodePipeline ajoute à l'artefact de sortie après l'exécution de l'action spécifiée. L'artefact de sortie contient un JSON fichier contenant le contenu de laOutputs
section du AWS CloudFormation modèle.Si vous ne spécifiez pas de nom, CodePipeline cela ne génère pas d'artefact en sortie.
- Remplacements de paramètres
-
Les paramètres sont définis dans votre modèle et vous permettent d'entrer des valeurs personnalisées lorsque vous créez ou mettez à jour une pile. Vous pouvez spécifier un JSON objet qui remplace les valeurs des paramètres du modèle dans le fichier de configuration du modèle. Tous les noms de paramètres doivent être présents dans le modèle de la pile. Pour de plus amples informations, veuillez consulter CloudFormation modèle Parameters syntaxe.
Note
La taille maximale de l'JSONobjet pouvant être stocké dans la propriété est de 1 kilo-octet.
ParameterOverrides
Nous vous recommandons d'utiliser le fichier de configuration du modèle pour spécifier la plupart des valeurs de paramètres. Utilisez les remplacements de paramètres pour spécifier des valeurs de paramètres dynamiques uniquement. Les paramètres dynamiques sont inconnus tant que vous n'exécutez pas le pipeline.
L'exemple suivant définit une valeur pour le paramètre
ParameterName
en utilisant une fonction de remplacement de paramètre. La fonction récupère une valeur à partir d'un artefact CodePipeline d'entrée. Pour plus d'informations sur les fonctions de remplacement des paramètres, consultez Utilisation de fonctions de remplacement de paramètres avec des pipelines CodePipeline .{ "ParameterName" : { "Fn::GetParam" : ["ArtifactName", "config-file-name.json", "ParamName"]} }
Propriétés de configuration (JSONobjet)
Lorsque vous spécifiez CloudFormation
comme fournisseur d'une action d'étape, définissez les propriétés suivantes dans la propriété Configuration
. Utilisez l'JSONobjet pour AWS CLI le ou CodePipeline API les AWS CloudFormation modèles. Pour obtenir des exemples, veuillez consulter Procédure : Création d'un pipeline pour les piles de test et de production et AWS CloudFormation référence aux propriétés de configuration.
ActionMode
-
L' AWS CloudFormation action qui est CodePipeline invoquée lorsqu'elle traite l'étape associée. Spécifiez un seul des modes d'action suivants :
-
CHANGE_SET_EXECUTE
exécute un jeu de modifications. -
CHANGE_SET_REPLACE
crée le jeu de modification, s'il n'existe pas, en fonction du nom de la pile et du modèle que vous soumettez. Si l'ensemble de modifications existe, AWS CloudFormation il est supprimé, puis en crée un nouveau. -
CREATE_UPDATE
crée la pile si la pile spécifiée n'existe pas. Si la pile existe, AWS CloudFormation la met à jour. Utilisez cette action pour mettre à jour les piles existantes. CodePipeline ne remplacera pas la pile. -
DELETE_ONLY
supprime une pile. Si vous spécifiez une pile qui n'existe pas, l'action se termine avec succès sans supprimer de pile. -
REPLACE_ON_FAILURE
crée une pile si la pile spécifiée n'existe pas. Si la pile existe et est dans un état défaillant (signalé commeROLLBACK_COMPLETE
ROLLBACK_FAILED
CREATE_FAILED
,DELETE_FAILED
,, ouUPDATE_ROLLBACK_FAILED
), AWS CloudFormation supprime la pile puis en crée une nouvelle. Si la pile n'est pas en état d'échec, mettez-la AWS CloudFormation à jour. Utilisez cette action pour remplacer automatiquement les piles ayant échoué sans les récupérer ou les dépanner. Généralement, ce mode est choisi pour le test.
Cette propriété est requise.
-
Capabilities
-
Pour les piles contenant certaines ressources, reconnaissance explicite AWS CloudFormation susceptible de créer ou de mettre à jour ces ressources. Par exemple, vous devez spécifier
CAPABILITY_IAM
si votre modèle de pile contient des ressources AWS Identity and Access Management (IAM). Pour plus d’informations, consultez .CreateStackAPIparamètres de demande d'opération.Cette propriété est conditionnelle. Si vous disposez de ressources IAM dans votre modèle de pile, vous devez spécifier cette propriété.
Vous pouvez spécifier plusieurs fonctionnalités. L'exemple suivant ajoute les
CAPABILITY_AUTO_EXPAND
propriétésCAPABILITY_IAM
et au modèle : ChangeSetName
-
Nom d'un jeu existant de modifications ou d'un nouveau jeu que vous souhaitez créer pour la pile spécifiée.
Cette propriété est requise pour les modes d'action suivants :
CHANGE_SET_REPLACE
etCHANGE_SET_EXECUTE
. Pour tous les autres modes d'action, cette propriété est ignorée. OutputFileName
-
Nom du fichier de sortie, tel que
CreateStackOutput.json
. CodePipeline ajoute le fichier à l'artefact de sortie après avoir effectué l'action spécifiée. L'artefact de sortie contient un JSON fichier contenant le contenu de laOutputs
section du AWS CloudFormation modèle.Cette propriété est facultative. Si vous ne spécifiez pas de nom, CodePipeline cela ne génère pas d'artefact en sortie.
ParameterOverrides
-
Les paramètres sont définis dans votre modèle et vous permettent d'entrer des valeurs personnalisées lorsque vous créez ou mettez à jour une pile. Vous pouvez spécifier un JSON objet qui remplace les valeurs des paramètres du modèle dans le fichier de configuration du modèle. Tous les noms de paramètres doivent être présents dans le modèle de la pile. Pour de plus amples informations, veuillez consulter CloudFormation modèle Parameters syntaxe.
L'exemple suivant ajoute les remplacements de paramètres
InstanceType
etKeyName
au modèle :Note
La taille maximale de l'JSONobjet pouvant être stocké dans la
ParameterOverrides
propriété est de 1 kilo-octet.Nous vous recommandons d'utiliser le fichier de configuration du modèle pour spécifier la plupart des valeurs de paramètres. Utilisez les remplacements de paramètres pour spécifier des valeurs de paramètres dynamiques uniquement. Les valeurs des paramètres dynamiques sont inconnues jusqu'à ce que vous exécutiez le pipeline.
L'exemple suivant définit une valeur pour le paramètre
ParameterName
en utilisant une fonction de remplacement de paramètre. La fonction récupère une valeur à partir d'un artefact CodePipeline d'entrée. Pour plus d'informations sur les fonctions de remplacement des paramètres, consultez Utilisation de fonctions de remplacement de paramètres avec des pipelines CodePipeline .{ "ParameterName" : { "Fn::GetParam" : ["ArtifactName", "config-file-name.json", "ParamName"]} }
Cette propriété est facultative.
RoleArn
-
Le nom de ressource Amazon (ARN) du rôle de IAM service AWS CloudFormation assumé lorsqu'il fonctionne sur des ressources d'une pile.
Cette propriété est obligatoire pour les modes d'action suivants :
CREATE_UPDATE
,REPLACE_ON_FAILURE
,DELETE_ONLY
, etCHANGE_SET_REPLACE
.RoleArn
n'est pas appliqué lors de l'exécution d'un jeu de modifications. Si vous ne l'utilisez pas CodePipeline pour créer l'ensemble de modifications, assurez-vous qu'un rôle est associé à l'ensemble ou à la pile de modifications. StackName
-
Nom d'une pile existante ou d'une pile que vous souhaitez créer.
Cette propriété est requise pour tous les modes d'action.
TemplateConfiguration
-
TemplateConfiguration
est le fichier de configuration de modèle. Vous incluez ce fichier dans un artefact d'entrée pour cette action. Le nom de fichier de configuration de modèle suit ce format :Artifactname
::TemplateConfigurationFileName
Artifactname
est le nom de l'artefact d'entrée tel qu'il apparaît dans CodePipeline. Par exemple, une étape source avec le nom d'artefactSourceArtifact
et un nom de fichiertest-configuration.json
crée un nomTemplateConfiguration
, tel qu'illustré dans l'exemple suivant :"TemplateConfiguration": "SourceArtifact::test-configuration.json"
Le fichier de configuration de modèle peut contenir des valeurs de paramètres du modèle et une politique de pile. Si vous incluez des informations sensibles, telles que des mots de passe, limitez l'accès à ce fichier. Pour un exemple de fichier de configuration, consultez AWS CloudFormation artefacts.
Cette propriété est facultative.
TemplatePath
-
TemplatePath
représente le fichier AWS CloudFormation modèle. Vous incluez ce fichier dans un artefact d'entrée pour cette action. Le nom de fichier respecte le format suivant :Artifactname
::TemplateFileName
Artifactname
est le nom de l'artefact d'entrée tel qu'il apparaît dans CodePipeline. Par exemple, une étape source avec le nom d'artefactSourceArtifact
et un nom de fichiertemplate.yaml
crée un nomTemplatePath
, tel qu'illustré dans l'exemple suivant :"TemplatePath": "SourceArtifact::template.yaml"
Cette propriété est requise pour les modes d'action suivants :
CREATE_UPDATE
,REPLACE_ON_FAILURE
etCHANGE_SET_REPLACE
. Pour tous les autres modes d'action, cette propriété est ignorée.
Consultez aussi
Les ressources connexes suivantes peuvent s'avérer utiles lors de l'utilisation de ces paramètres.
-
Pour plus d'informations sur les paramètres CloudFormation d'action dans CodePipeline, consultez la référence de configuration des actions de AWS CloudFormation déploiement dans le Guide de AWS CodePipeline l'utilisateur.
-
Pour des valeurs d'exemple de modèle par fournisseur d'action (par exemple pour les champs
Owner
ouconfiguration
), veuillez consulter la rubrique Référence sur la structure des actions dans le Guide de l'utilisateur AWS CodePipeline . -
Pour télécharger des exemples de modèles de pile de pipelines JSON au format YAML OR, voir Tutoriel : Création d'un pipeline AWS CloudFormation dans le guide de AWS CodePipeline l'utilisateur.