Editar una canalización en CodePipeline - AWS CodePipeline

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.

Editar una canalización en CodePipeline

Las canalizaciones describen el proceso de lanzamiento que desea que siga AWS CodePipeline e incluyen las etapas y las acciones que es necesario completar. Puede editar una canalización para añadir o eliminar dichos elementos. Sin embargo, al editar una canalización, ciertos valores como, por ejemplo, el nombre o los metadatos de la canalización no pueden modificarse.

Puede editar el tipo de canalización, las variables y los desencadenadores mediante la página de edición de la canalización. También puede agregar o cambiar etapas y acciones de la canalización.

A diferencia de lo que sucede al crearla, cuando se edita una canalización no se vuelve a ejecutar en ella la revisión más reciente. Si desea ejecutar la versión más reciente en una canalización que acaba de editar, tendrá que volver a ejecutarla manualmente. De lo contrario, la canalización editada se ejecuta la próxima vez que realice un cambio en una ubicación de origen configurada en la etapa de origen. Para obtener más información, consulte Iniciar la canalización manualmente.

Puede añadir a una canalización acciones que se encuentren en una región de AWS diferente a la de la canalización. Cuando un Servicio de AWS es el proveedor de una acción y este tipo de acción o de proveedor se encuentran en una región de AWS diferente a la de la canalización, se trata de una acción entre regiones. Para obtener más información sobre las acciones entre regiones, consulte Añadir una acción interregional en CodePipeline.

CodePipeline utiliza métodos de detección de cambios para comenzar la canalización cuando se envía un cambio de código fuente. Estos métodos de detección se basan en el tipo de código fuente:

  • CodePipeline utiliza Eventos de Amazon CloudWatch para detectar cambios en el repositorio de origen de CodeCommit o en el bucket de origen de Amazon S3.

nota

Los recursos de detección de cambios se crean automáticamente cuando se utiliza la consola. Si utiliza la consola para crear o editar una canalización, los recursos adicionales se crean automáticamente. Si utiliza la AWS CLI para crear la canalización, debe crear los recursos adicionales. Para obtener más información sobre la creación o actualización de una canalización de CodeCommit, consulte Crear una EventBridge regla para una CodeCommit fuente (CLI). Para obtener más información acerca de la creación o actualización de una canalización de Amazon S3 mediante la CLI, consulte Crear una EventBridge regla para una fuente de Amazon S3 (CLI).

Editar una canalización (consola)

Puede utilizar la consola de CodePipeline para añadir, editar o eliminar etapas de una canalización y para añadir, editar o eliminar acciones en una etapa.

Cuando actualiza una canalización, CodePipeline completa correctamente todas las acciones en ejecución y, a continuación, falla en las etapas y ejecuciones de la canalización en las que se completaron las acciones en ejecución. Cuando se actualice una canalización, tendrá que volver a ejecutarla. Para obtener más información sobre la ejecución de una canalización, consulte Iniciar la canalización manualmente.

Para editar una canalización
  1. Inicie sesión en la Consola de administración de AWS y abra la consola de CodePipeline en http://console.aws.amazon.com/codesuite/codepipeline/home.

    Se muestran los nombres de todas las canalizaciones asociadas con su cuenta de AWS.

  2. En Nombre, elija el nombre de la canalización que desea editar. Esto abre una vista detallada de la canalización, que incluye el estado de cada una de las acciones en cada etapa de la canalización.

  3. En la página de detalles de la canalización, elija Edit.

  4. Para editar el tipo de canalización, elija Editar en la tarjeta Propiedades de Editar: canalización. Elija una de las siguientes opciones y, a continuación, elija Listo.

    • Las canalizaciones de tipo V1 tienen una estructura JSON que contiene parámetros estándares de canalización, etapa y nivel de acción.

    • Las canalizaciones de tipo V2 tienen la misma estructura que las de tipo V1, además de compatibilidad con parámetros adicionales, como los desencadenadores y las variables a nivel de canalización.

    Los tipos de canalización difieren en características y precio. Para obtener más información, consulte Tipos de canalización.

  5. Para editar las variables de la canalización, seleccione Editar variables en la tarjeta Editar: variables. Agregue o cambie variables para el nivel de canalización y, a continuación, seleccione Listo.

    Para obtener más información acerca de las variables a nivel de canalización, consulte Referencia de variables. Para ver un tutorial con una variable a nivel de canalización que se transfiere en el momento de la ejecución de la canalización, consulte Tutorial: Uso de variables a nivel de canalización.

    nota

    Si bien es opcional añadir variables a nivel de canalización, en el caso de una canalización especificada con variables a nivel de canalización en la que no se proporcionen valores, la ejecución de la canalización fallará.

  6. Para editar los desencadenadores de la canalización, elija Editar desencadenadores en la tarjeta Editar: desencadenadores. Agregue o cambie los desencadenadores y, a continuación, seleccione Listo.

    Para obtener más información sobre cómo agregar desencadenadores, consulte los pasos para crear una conexión a Bitbucket Cloud, GitHub (mediante la aplicación de GitHub), GitHub Enterprise Server, GitLab.com o GitLab autoadministrado, como GitHub conexiones.

  7. Para editar las etapas y las acciones en la página Editar, realice una de las siguientes operaciones:

    • Para editar una etapa, elija Edit stage (Editar etapa) Puede añadir acciones en serie y en paralelo con las acciones existentes:

      También puede editar las acciones en esta vista eligiendo el icono de edición correspondiente. Para eliminar una acción, elija el icono de eliminación de esa acción.

    • Para editar una acción, elija el icono de edición de dicha acción y modifique los valores que desee en Edit action. Los elementos marcados con un asterisco (*) son obligatorios.

      • En el caso de nombres de repositorio y ramificaciones de , aparece un mensaje que muestra la regla de Eventos de Amazon CloudWatch que se va a crear para esta canalización. Si elimina el origen de CodeCommit , aparece un mensaje que muestra la regla de Eventos de Amazon CloudWatch que se eliminará.

      • En el caso de un bucket de origen de Amazon S3, aparece un mensaje que muestra la regla de Eventos de Amazon CloudWatch y el registro de seguimiento de AWS CloudTrail que se vaya a crear para esta canalización. Si elimina el origen de Amazon S3 , aparece un mensaje que muestra la regla de Eventos de Amazon CloudWatch y el registro de seguimiento de AWS CloudTrail que se eliminará. Si otras canalizaciones están usando el registro de seguimiento de AWS CloudTrail, no se quita el registro de seguimiento y se elimina el evento de datos.

    • Para añadir una etapa, elija + Add stage (Añadir etapa) en el lugar de la canalización en el que desea añadirla. Dé un nombre a la etapa y después añada al menos una acción. Los elementos marcados con un asterisco (*) son obligatorios.

    • Para eliminar una etapa, elija el icono de eliminación en esa etapa. Se eliminan la etapa y todas sus acciones.

    • Para configurar una etapa para que se revierta automáticamente en caso de fallo, seleccione Editar la etapa y, a continuación, seleccione la casilla Configurar la reversión automática en caso de fallo en una etapa.

    Por ejemplo, si desea agregar una acción en serie a una etapa de una canalización:

    1. En la etapa a la que desee añadir la acción, elija Edit stage (Editar etapa) y, a continuación, añádala haciendo clic en + Add action group (Añadir grupo de acciones).

    2. En el cuadro emergente Edit action (Editar acción), en Action name (Nombre de acción), escriba el nombre de la acción. En la lista Action provider (Proveedor de acciones) se muestran opciones organizadas por categoría. Identifique la categoría que quiera, por ejemplo, Deploy (Implementación). Una vez allí, elija el proveedor que quiera, (por ejemplo, AWS CodeDeploy). En Región, elija la región de AWS en la que se crea o tiene previsto crear el recurso. El campo Región designa dónde se crean los recursos de AWS para este tipo de acción y de proveedor. Este campo solo se muestra en el caso de las acciones en las que el proveedor de la acción es un Servicio de AWS. El campo Región se establece de forma predeterminada en la misma región de AWS que la canalización.

      Para ver ejemplos de la adición de proveedores de acciones y del uso de campos predeterminados para cada uno, consulte Creación de una canalización personalizada (consola).

      Para añadir CodeBuild como acción de compilación o acción de prueba a una etapa, consulte Usar CodePipeline con CodeBuild para probar el código y ejecutar compilaciones en la Guía del usuario de CodeBuild.

      nota

      Algunos proveedores de acción, tales como GitHub, requieren que se conecte al sitio web del proveedor antes de completar la configuración de la acción. Al conectarse al sitio web de un proveedor, asegúrese de usar las credenciales correspondientes a dicho sitio web. No use las credenciales de AWS.

    3. Cuando haya terminado de configurar la acción, elija Save (Guardar).

    nota

    No puede cambiar el nombre de una etapa en la vista de la consola. Puede agregar una etapa con el nombre que desea cambiar y, después, eliminar la antigua. Asegúrese de añadir las acciones con las que desea contar en esa etapa antes de eliminar las antiguas.

  8. Cuando haya terminado de editar la canalización, elija Save (Guardar) para volver a la página de resumen.

    importante

    Una vez guardados los cambios, estos no se pueden deshacer. Deberá volver a editar la canalización. Si se ejecuta una revisión en la canalización al guardar los cambios, dicha ejecución no se completa. Si desea una confirmación específica o cambiar la ejecución en la canalización editada, deberá ejecutarla manualmente en la canalización. De lo contrario, la siguiente confirmación o cambio se ejecuta automáticamente en la canalización.

  9. Para probar la acción, seleccione Liberar cambio para procesar la confirmación a través de la canalización y confirmar un cambio en la fuente especificada en la etapa de origen de la canalización. O bien, siga los pasos que se indican en Iniciar la canalización manualmente para lanzar manualmente un cambio mediante la AWS CLI.

Editar una canalización (AWS CLI)

Puede usar el comando update-pipeline para editar una canalización.

Cuando actualiza una canalización, CodePipeline completa correctamente todas las acciones en ejecución y, a continuación, falla en las etapas y ejecuciones de la canalización en las que se completaron las acciones en ejecución. Cuando se actualice una canalización, tendrá que volver a ejecutarla. Para obtener más información sobre la ejecución de una canalización, consulte Iniciar la canalización manualmente.

importante

Es posible utilizar la AWS CLI para editar canalizaciones que incluyan acciones de socios, pero no se debe editar manualmente la codificación JSON de una acción de socio. De lo contrario, la acción del socio produce un error al actualizar la canalización.

Para editar una canalización
  1. Abra una sesión de terminal (Linux, macOS o Unix) o un símbolo del sistema (Windows) y ejecute el comando get-pipeline para copiar la estructura de canalización en un archivo JSON. Por ejemplo, para una canalización llamada MyFirstPipeline, escriba el siguiente comando:

    aws codepipeline get-pipeline --name MyFirstPipeline >pipeline.json

    Este comando no devuelve nada, pero el archivo creado debería aparecer en el directorio en el que se ejecutó el comando.

  2. Abra el archivo JSON en cualquier editor de texto sin formato y modifique la estructura del archivo para que refleje los cambios que desea hacer en la canalización. Por ejemplo, puede añadir o eliminar etapas, o añadir otra acción a una etapa existente.

    El siguiente ejemplo muestra cómo añadir otra etapa de implementación en el archivo pipeline.json. Esta etapa se ejecuta después de la primera etapa de implementación denominada Staging (Ensayo).

    nota

    Esto es solo un fragmento del archivo, no toda la estructura. Para obtener más información, consulte CodePipeline referencia de estructura de tubería.

    , { "name": "Staging", "actions": [ { "inputArtifacts": [ { "name": "MyApp" } ], "name": "Deploy-CodeDeploy-Application", "actionTypeId": { "category": "Deploy", "owner": "AWS", "version": "1", "provider": "CodeDeploy" }, "outputArtifacts": [], "configuration": { "ApplicationName": "CodePipelineDemoApplication", "DeploymentGroupName": "CodePipelineDemoFleet" }, "runOrder": 1 } ] }, { "name": "Production", "actions": [ { "inputArtifacts": [ { "name": "MyApp" } ], "name": "Deploy-Second-Deployment", "actionTypeId": { "category": "Deploy", "owner": "AWS", "version": "1", "provider": "CodeDeploy" }, "outputArtifacts": [], "configuration": { "ApplicationName": "CodePipelineDemoApplication", "DeploymentGroupName": "CodePipelineProductionFleet" }, "runOrder": 1 } ] } ] }

    Para obtener información sobre el modo utilizar la CLI para añadir una acción de aprobación a una canalización, consulte Incorporación de una acción de aprobación manual a una canalización de CodePipeline .

    Asegúrese de que el parámetro PollForSourceChanges del archivo JSON se ha establecido de la siguiente manera:

    "PollForSourceChanges": "false",

    CodePipeline utiliza Eventos de Amazon CloudWatch para detectar cambios en el repositorio y la ramificación de origen en CodeCommit o en el bucket de origen de Amazon S3. El siguiente paso incluye instrucciones para crear estos recursos manualmente. Al definir la marca como false, se deshabilitan las comprobaciones periódicas, que no son obligatorias cuando utiliza los métodos de detección de cambios recomendados.

  3. Para añadir una acción de prueba, compilación o implementación en una región diferente a la de la canalización, debe añadir lo siguiente a su estructura de la canalización. Para obtener instrucciones detalladas, consulte Añadir una acción interregional en CodePipeline.

    • Añada el parámetro Region a la estructura de la canalización de su acción.

    • Utilice el parámetro artifactStores para especificar un bucket de artefactos para cada región en la que tenga una acción.

  4. Si está trabajando con la estructura de la canalización recuperada mediante el comando get-pipeline, debe modificar la estructura del archivo JSON. Debe eliminar las líneas metadata del archivo para que el comando update-pipeline pueda utilizarlo. Quite la sección de la estructura de canalizaciones del archivo JSON (las líneas "metadata": { } y los campos "created", "pipelineARN" y "updated" que contenga).

    Por ejemplo, quite las siguientes líneas de la estructura:

    "metadata": { "pipelineArn": "arn:aws:codepipeline:region:account-ID:pipeline-name", "created": "date", "updated": "date" }

    Guarde el archivo.

  5. Si utiliza la CLI para editar una canalización, debe administrar manualmente los recursos de detección de cambios recomendados para dicha canalización:

  6. Para aplicar los cambios, ejecute el comando update-pipeline especificando el archivo JSON:

    importante

    Asegúrese de incluir file:// antes del nombre de archivo. Es obligatorio en este comando.

    aws codepipeline update-pipeline --cli-input-json file://pipeline.json

    Este comando devuelve la estructura completa de la canalización editada.

    nota

    El comando update-pipeline detiene la canalización. Si se está ejecutando una revisión en la canalización al ejecutar el comando update-pipeline, dicha ejecución se detiene. Debe comenzar la canalización actualizada manualmente para ejecutar dicha revisión en ella.

  7. Abra la consola de CodePipeline y elija la canalización que acaba de editar.

    La canalización muestra los cambios. La próxima vez que haga un cambio en la ubicación de origen, la canalización ejecuta dicha revisión a través de la estructura revisada de la canalización.

  8. Para ejecutar manualmente la última revisión a través de la estructura revisada de la canalización, ejecute el comando start-pipeline-execution. Para obtener más información, consulte Iniciar la canalización manualmente.

Para obtener más información sobre la estructura de una canalización y los valores previstos, consulte CodePipeline referencia de estructura de tubería y AWS CodePipeline API Reference.