Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Cómo personalizar las canalizaciones de inicio con AWS SAM
Como administrador de CI/CD, es posible que quieras personalizar una plantilla de canalización inicial, y las indicaciones guiadas asociadas, que los desarrolladores de tu empresa puedan utilizar para crear configuraciones de canalización.
La CLI de AWS SAM utiliza plantillas de Cookiecutter para crear plantillas de inicio. Para obtener más información sobre las plantillas de cookie cutter, Cookiecutter.
También puedes personalizar las instrucciones que la CLI de AWS SAM muestra a los usuarios al crear configuraciones de canalización mediante el comando sam pipeline init. Para personalizar las solicitudes de usuario, haga lo siguiente:
-
Crea un archivo de
questions.json: el archivoquestions.jsondebes estar en la raíz del repositorio del proyecto. Este es el mismo directorio que el del archivocookiecutter.json. Para ver el esquema del archivoquestions.json, consulta questions.json.schema. Para ver un ejemplo de archivo questions.json, consulta questions.json. -
Asigna las claves de preguntas a los nombres de los cookiecutter: cada objeto del archivo
questions.jsonnecesita una claves que coincida con el nombre de la plantilla del cookiecutter. Esta coincidencia de claves es la forma en que la CLI de AWS SAM asigna las respuestas de las preguntas del usuario a la plantilla cookie cutter. Para obtener ejemplos de esta coincidencia de claves, consulta la sección Archivos de ejemplo más adelante en este tema. -
Crea un archivo
metadata.json: declara el número de etapas que tendrá la canalización en el archivo demetadata.json. El número de etapas indica al comandosam pipeline initsobre cuántas etapas debes solicitar información o, en el caso de la opción--bootstrap, para cuántas etapas debes crear los recursos de infraestructura. Para ver un ejemplo de archivometadata.jsonque declara una canalización con dos etapas, consulta metadata.json.
Proyectos de ejemplo
Estos son ejemplos de proyectos, cada uno de los cuales incluye una plantilla de Cookiecutter, un archivo questions.json y un archivo metadata.json:
-
Ejemplo de Jenkins: plantilla de canalización de Jenkins en dos etapas
-
Ejemplo de CodePipeline: plantilla de canalización CodePipeline de dos etapas
Archivos de ejemplo
El siguiente conjunto de archivos muestra cómo se asocian las preguntas del archivo questions.json a las entradas del archivo de plantilla de Cookiecutter. Tenga en cuenta que estos ejemplos son fragmentos de archivos, no archivos completos. Para ver ejemplos de archivos completos, consulta primero la sección Proyectos de ejemplo de este tema.
Ejemplo: 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" }, { ...
Ejemplo: cookiecutter.json
{ "outputDir": "aws-sam-pipeline", "pipeline_user_jenkins_credential_id": "", "sam_template": "", ...
Ejemplo: Jenkinsfile
pipeline { agent any environment { PIPELINE_USER_CREDENTIAL_ID = '{{cookiecutter.pipeline_user_jenkins_credential_id}}' SAM_TEMPLATE = '{{cookiecutter.sam_template}}' ...