Personnalisation des pipelines de démarrage - AWS Serverless Application Model

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.

Personnalisation des pipelines de démarrage

En tant qu'administrateur CI/CD, vous pouvez personnaliser un modèle de pipeline de démarrage et les invites guidées associées, que les développeurs de votre organisation pourront utiliser pour créer des configurations de pipeline.

La CLI AWS SAM utilise des modèles Cookiecutter lors de la création des modèles de démarrage. Pour en savoir plus sur les modèles cookie cutter, consultez Cookiecutter.

Vous pouvez également personnaliser les invites que la CLI AWS SAM affiche aux utilisateurs lors de la création de configurations de pipeline à l'aide de la commande sam pipeline init. Pour personnaliser les invites des utilisateurs, procédez comme suit :

  1. Créez un fichier questions.json – Le fichier questions.json doit être à la racine du référentiel du projet. Il s'agit du même répertoire que pour le fichier cookiecutter.json. Pour afficher le schéma du fichier questions.json, consultez questions.json.schema. Pour afficher un exemple de fichier questions.json, consultez questions.json.

  2. Mapper les clés de questions avec les noms des coupeurs de cookies – Chaque objet du fichier questions.json nécessite une clé qui correspond à un nom dans le modèle Cookiecutter. Cette correspondance de clé est la façon dont la CLI AWS SAM met en correspondance les réponses des utilisateurs au modèle de cookie cutter. Pour voir des exemples de correspondance de cette clé, consultez la section Exemples de fichier plus loin dans cette rubrique.

  3. Créez un fichier metadata.json – Déclarez le nombre d'étapes que le pipeline aura dans le fichier metadata.json. Le nombre d'étapes indique à la commande sam pipeline init le nombre d'étapes nécessaire pour fournir des informations ou, dans le cas de l'option --bootstrap, le nombre d'étapes pour lesquelles créer des ressources d'infrastructure. Pour accéder à un exemple de fichier metadata.jsonqui déclare un pipeline à deux étapes, consultez metadata.json.

Exemples de projets

Voici des exemples de projets, qui comprennent chacun un modèle Cookiecutter, un fichier questions.json et un fichier metadata.json :

Exemples de fichier

L'ensemble de fichiers suivant montre comment les questions dans le fichier questions.json sont associées aux entrées du fichier de modèle Cookiecutter. Notez que ces exemples sont des extraits de fichiers, non des fichiers complets. Pour voir des exemples de fichiers complets, consultez la section Exemples de projets plus loin dans cette rubrique.

Exemple questions.json :

{ "questions": [{ "key": "intro", "question": "\nThis template configures a pipeline that deploys a serverless application to a testing and a production stage.\n", "kind": "info" }, { "key": "pipeline_user_jenkins_credential_id", "question": "What is the Jenkins credential ID (via Jenkins plugin \"aws-credentials\") for pipeline user access key?", "isRequired": true }, { "key": "sam_template", "question": "What is the template file path?", "default": "template.yaml" }, { ...

Exemple cookiecutter.json :

{ "outputDir": "aws-sam-pipeline", "pipeline_user_jenkins_credential_id": "", "sam_template": "", ...

Exemple Jenkinsfile :

pipeline { agent any environment { PIPELINE_USER_CREDENTIAL_ID = '{{cookiecutter.pipeline_user_jenkins_credential_id}}' SAM_TEMPLATE = '{{cookiecutter.sam_template}}' ...