Referencia de acciones de origen de Amazon S3 - AWS CodePipeline

Referencia de acciones de origen de Amazon S3

Desencadena la canalización cuando se carga un nuevo objeto en el bucket y la clave de objeto configurados.

nota

En este tema de referencia se describe la acción de origen de Amazon S3 para CodePipeline, donde la ubicación de origen es un bucket de Amazon S3 configurado para el control de versiones. Para obtener información de referencia sobre las acciones de implementación de Amazon S3 en CodePipeline, consulte Referencia de acción de implementación de Amazon S3.

Puede crear un bucket de Amazon S3 para usarlo como ubicación de origen de los archivos de la aplicación.

nota

Cuando cree el bucket de origen, asegúrese de habilitar el control de versiones en el bucket. Si desea utilizar un bucket de Amazon S3 existente, consulte Uso del control de versiones para habilitar el control de versiones en un bucket existente.

Si utiliza la consola para crear o editar la canalización, CodePipeline crea una regla de Eventos de CloudWatch que inicia la canalización cuando se produce un cambio en el bucket de origen de S3.

Debe haber creado un bucket de origen de Amazon S3 y cargado los archivos de origen como un único archivo ZIP antes de conectar la canalización a través de una acción de Amazon S3.

nota

Si Amazon S3 es el proveedor de origen de la canalización, debe comprimir los archivos de origen en un solo archivo.zip y cargarlo en el bucket de origen. También puede cargar un archivo sin comprimir; sin embargo, se producirá un error en las acciones posteriores que esperan un archivo.zip.

Tipo de acción

  • Categoría: Source

  • Propietario: AWS

  • Proveedor: S3

  • Versión: 1

Parámetros de configuración

S3 Bucket

Obligatorio: sí

El nombre del bucket de Amazon S3 en el que se van a detectar los cambios de origen.

S3ObjectKey

Obligatorio: sí

El nombre de la clave de objeto de Amazon S3 en la que se van a detectar los cambios de origen.

AllowOverrideForS3ObjectKey

Requerido: no

AllowOverrideForS3ObjectKey controla si las anulaciones de origen de StartPipelineExecution pueden anular las S3ObjectKey ya configuradas en la acción de origen. Para obtener más información sobre las anulaciones de origen con la clave del objeto de S3, consulte Iniciar una canalización con una anulación de revisión de código fuente.

importante

Si omite AllowOverrideForS3ObjectKey, CodePipeline establecerá de forma predeterminada la capacidad de anular la clave del objeto de S3 en la acción de origen al establecer este parámetro en false.

Los valores válidos para este parámetro son:

  • true: si se establece, la clave del objeto de S3 preconfigurada se puede anular mediante anulaciones de revisiones de origen durante la ejecución de una canalización.

    nota

    Si pretende permitir que todos los usuarios de CodePipeline puedan anular la clave del objeto de S3 preconfigurada al iniciar una nueva ejecución de canalización, debe configurar AllowOverrideForS3ObjectKey en true.

  • false:

    Al hacerlo, CodePipeline no permitirá anular la clave del objeto de S3 mediante anulaciones de revisiones de origen. Este también es el valor predeterminado para este parámetro.

PollForSourceChanges

Requerido: no

PollForSourceChanges controla si CodePipeline sondea el bucket de origen de Amazon S3 para detectar cambios de origen. Le recomendamos que utilice Eventos de CloudWatch y CloudTrail para detectar cambios de origen en su lugar. Para obtener más información sobre la configuración de Eventos de CloudWatch, consulte Migrar los canales de sondeo con una fuente S3 y un seguimiento de CloudTrail (CLI) o Migrar los canales de sondeo con una fuente S3 y un seguimiento de CloudTrail (plantilla de AWS CloudFormation).

importante

Si tiene la intención de configurar Eventos de CloudWatch, debe establecer PollForSourceChanges en false para evitar ejecuciones de canalización duplicadas.

Los valores válidos para este parámetro son:

  • true: si está configurado, CodePipeline sondea la ubicación de origen para detectar cambios de origen.

    nota

    Si omite PollForSourceChanges, CodePipeline sondea de forma predeterminada la ubicación de origen para detectar cambios de origen. Este comportamiento es el mismo que si se incluye PollForSourceChanges y se establece en true.

  • false: si se establece, CodePipeline no sondea su ubicación de origen para detectar cambios de origen. Utilice esta opción si desea configurar una regla de Eventos de CloudWatch para detectar cambios en el origen.

Artefactos de entrada

  • Número de artefactos: 0

  • Descripción: los artefactos de entrada no se aplican a este tipo de acción.

Artefactos de salida

  • Número de artefactos: 1

  • Descripción: proporciona los artefactos que están disponibles en el bucket de origen configurado para conectarse a la canalización. Los artefactos generados a partir del bucket son los artefactos de salida de la acción de Amazon S3. Los metadatos del objeto de Amazon S3 (ETag e ID de versión) se muestran en CodePipeline como la revisión de origen para la ejecución de canalización desencadenada.

Variables de salida

Cuando se configura, esta acción produce variables a las que se puede hacer referencia mediante la configuración de acción de una acción descendente en la canalización. Esta acción produce variables que se pueden ver como variables de salida, incluso si la acción no tiene un espacio de nombres. Configure una acción con un espacio de nombres para que esas variables estén disponibles para la configuración de las acciones posteriores.

Para obtener más información acerca de las variables en CodePipeline, consulte Referencia de variables.

BucketName

El nombre del bucket de Amazon S3 relacionado con el cambio de origen que desencadenó la canalización.

ETag

La etiqueta de entidad del objeto relacionado con el cambio de código fuente que desencadenó la canalización. El ETag es un hash MD5 del objeto. ETag solo refleja los cambios en el contenido de un objeto, no los metadatos.

ObjectKey

El nombre de la clave del objeto de Amazon S3 relacionado con el cambio de origen que desencadenó la canalización.

VersionId

El ID de versión de la versión del objeto relacionada con el cambio de código fuente que desencadenó la canalización.

Declaración de acciones

YAML
Name: Source Actions: - RunOrder: 1 OutputArtifacts: - Name: SourceArtifact ActionTypeId: Provider: S3 Owner: AWS Version: '1' Category: Source Region: us-west-2 Name: Source Configuration: S3Bucket: amzn-s3-demo-source-bucket S3ObjectKey: my-application.zip PollForSourceChanges: 'false' InputArtifacts: []
JSON
{ "Name": "Source", "Actions": [ { "RunOrder": 1, "OutputArtifacts": [ { "Name": "SourceArtifact" } ], "ActionTypeId": { "Provider": "S3", "Owner": "AWS", "Version": "1", "Category": "Source" }, "Region": "us-west-2", "Name": "Source", "Configuration": { "S3Bucket": "amzn-s3-demo-source-bucket", "S3ObjectKey": "my-application.zip", "PollForSourceChanges": "false" }, "InputArtifacts": [] } ] },

Los recursos relacionados siguientes pueden serle de ayuda cuando trabaje con esta acción.

  • Tutorial: Crear una canalización simple (bucket de S3): en este tutorial se proporciona un ejemplo de archivo de especificaciones de la aplicación y un grupo de implementación de CodeDeploy. Utilice este tutorial para crear una canalización con un origen de Amazon S3 que se implementa en instancias de Amazon EC2.