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.
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 CodePipeline cuando la ubicación de origen es un bucket de Amazon S3 configurado para el control de versiones. Para obtener información de referencia sobre la acción de implementación de Amazon S3 en CodePipeline, consulteReferencia 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 usa la consola para crear o editar su canalización, CodePipeline crea una EventBridge regla que la inicie cuando se produzca un cambio en el bucket de origen de S3.
nota
Para Amazon ECR, Amazon S3 o CodeCommit Sources, también puedes crear una anulación de fuente mediante la entrada input transform para usar la entrada revisionValue
in EventBridge para tu evento de canalización, donde revisionValue
se deriva de la variable de evento de origen para tu clave de objeto, confirmación o ID de imagen. Para obtener más información, consulte el paso opcional para la entrada de la transformación de entrada que se incluye en los procedimientos que se indican en Acciones y recursos fuente de Amazon ECR EventBridge Conexión a las acciones de origen de Amazon S3 con una fuente habilitada para eventos, o. CodeCommit acciones de origen y EventBridge
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.
Temas
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.
- S3 ObjectKey
-
Obligatorio: sí
El nombre de la clave de objeto de Amazon S3 en la que se van a detectar los cambios de origen.
- AllowOverrideForS3ObjectKey
-
Obligatorio: no
AllowOverrideForS3ObjectKey
controla si las anulaciones de origen deStartPipelineExecution
pueden anular lasS3ObjectKey
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 lo omite
AllowOverrideForS3ObjectKey
, CodePipeline establece este parámetro en de forma predeterminada para anular el S3 ObjectKey en la acción de origen.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 quiere permitir que todos CodePipeline los usuarios puedan anular la clave de objeto de S3 preconfigurada al iniciar una nueva ejecución de canalización, debe configurarla en.
AllowOverrideForS3ObjectKey
true
-
false
:Si se establece, no CodePipeline permitirá anular la clave de objeto de S3 mediante anulaciones de revisión de origen. Este también es el valor predeterminado para este parámetro.
-
- PollForSourceChanges
-
Obligatorio: no
PollForSourceChanges
controla si CodePipeline sondea el bucket de origen de Amazon S3 en busca de cambios en la fuente. Le recomendamos que utilice CloudWatch Events y CloudTrail, en su lugar, detecte los cambios en la fuente. Para obtener más información sobre la configuración de CloudWatch eventos, consulte Migre los canales de sondeo con una fuente y un CloudTrail seguimiento (CLI) de S3 oMigre los canales de sondeo con una fuente y un seguimiento de CloudTrail S3 (AWS CloudFormation plantilla).importante
Si tiene intención de configurar CloudWatch los eventos, debe configurarlos
PollForSourceChanges
false
para evitar la duplicación de ejecuciones en canalización.Los valores válidos para este parámetro son:
-
true
: Si está configurado, CodePipeline sondea la ubicación de origen para ver si hay cambios en la fuente.nota
Si lo omite
PollForSourceChanges
, de CodePipeline forma predeterminada sondea la ubicación de origen para comprobar si hay cambios en la fuente. Este comportamiento es el mismo que si se incluyePollForSourceChanges
y se establece entrue
. -
false
: Si está configurado, CodePipeline no sondea la ubicación de origen para detectar cambios en la fuente. Utilice este ajuste si pretende configurar una regla de CloudWatch eventos para detectar los cambios en la fuente.
-
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 Amazon S3 (ETag y el ID de versión) se muestran CodePipeline como la revisión de origen para la ejecución de la canalización activada.
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 sobre las variables de CodePipeline, consulteReferencia 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. ETag Es un MD5 hash del objeto. ETag refleja solo los cambios en el contenido de un objeto, no sus 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.
Permisos de rol de servicio: acción fuente de S3
Para admitir las acciones de origen de S3, añada lo siguiente a su declaración de política:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"s3:GetObject",
"s3:GetObjectVersion",
"s3:GetBucketVersioning",
"s3:GetBucketAcl",
"s3:GetBucketLocation",
"s3:GetObjectTagging",
"s3:GetObjectVersionTagging"
],
"Resource": [
"arn:aws:s3:::[[S3Bucket]]",
"arn:aws:s3:::[[S3Bucket]]/*"
],
"Condition": {
"StringEquals": {
"aws:ResourceAccount": "{{customerAccountId}}"
}
}
}
]
}
Declaración de acciones
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: []
Véase también
Los recursos relacionados siguientes pueden serle de ayuda cuando trabaje con esta acción.
-
Tutorial: Crear una canalización simple (bucket de S3)— Este tutorial proporciona un ejemplo de archivo de especificaciones de la aplicación y un ejemplo de grupo de CodeDeploy aplicaciones y despliegues. Utilice este tutorial para crear una canalización con una fuente de Amazon S3 que se despliegue en las EC2 instancias de Amazon.