Acción de implementación de Amazon S3 - 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.

Acción de implementación de Amazon S3

Utilice una acción de implementación de Amazon S3 para implementar archivos en un bucket de Amazon S3 para alojar o archivar sitios web estáticos. Puede especificar si desea extraer los archivos de implementación antes de subirlos a su bucket.

nota

En este tema de referencia se describe la acción de implementación de Amazon S3 para CodePipeline, donde la plataforma de implementación es un bucket de Amazon EC2 configurado para alojamiento. Para obtener información de referencia sobre la acción de código fuente de Amazon S3 en CodePipeline, consulte Acción de código fuente de Amazon S3.

Tipo de acción

  • Categoría: Deploy

  • Propietario: AWS

  • Proveedor: S3

  • Versión: 1

Parámetros de configuración

BucketName

Obligatorio: sí

El nombre del bucket de Amazon S3 en el que se implementan los archivos.

Extract

Obligatorio: sí

Si es verdadero, especifica que los archivos se deben extraer antes de cargarlos. De lo contrario, los archivos de la aplicación permanecen comprimidos para su carga, como en el caso de un sitio web estático alojado. Si es falso, entonces ObjectKey es obligatoria.

ObjectKey

Condicional. Obligatorio si Extract = false

El nombre de la clave del objeto de Amazon S3 que identifica de forma exclusiva el objeto en el bucket de S3.

KMSEncryptionKeyARN

Obligatorio: no

El ARN de la clave de cifrado de AWS KMS del bucket de host. El parámetro KMSEncryptionKeyARN cifra los artefactos cargados con la AWS KMS key proporcionada. Si se trata de una clave de KMS, puede utilizar el ID de la clave, el ARN de la clave o el ARN del alias.

nota

Los alias se reconocen únicamente en la cuenta que ha creado la clave de KMS. Para las acciones entre cuentas, solo puede utilizar el ID de clave o un ARN de clave para identificar la clave. Las acciones entre cuentas implican el uso del rol de la otra cuenta (AccountB), por lo que al especificar el ID de clave se utilizará la clave de la otra cuenta (AccountB).

importante

CodePipeline solo es compatible con claves de KMS simétricas. No utilice una clave de KMS asimétrica para cifrar los datos en el bucket de S3.

CannedACL

Obligatorio: no

El parámetro CannedACL aplica la ACL predefinida especificada a objetos implementados en Amazon S3. Esto sobreescribe cualquier ACL existente aplicado al objeto.

CacheControl

Obligatorio: no

El parámetro CacheControl controla el comportamiento del caché de las solicitudes/respuestas para objetos del bucket. Para una lista de valores válidos, consulte el Cache-Controlcampo del encabezado para las operaciones HTTP Para introducir varios valores en CacheControl, utilice una coma entre cada valor. Puede añadir un espacio después de cada coma (opcional), tal y como se muestra en este ejemplo para la CLI:

"CacheControl": "public, max-age=0, no-transform"

Artefactos de entrada

  • Número de artefactos: 1

  • Descripción: los archivos para la implementación o el archivado se obtienen del repositorio de código fuente, se comprimen y se cargan mediante CodePipeline.

Artefactos de salida

  • Número de artefactos: 0

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

Ejemplo de configuración de una acción

En el siguiente ejemplo se muestra la configuración de la acción.

Ejemplo de configuración cuando Extract está establecido en false

En el siguiente ejemplo se muestra la configuración de acción predeterminada cuando la acción se crea con el campo Extract establecido en false.

YAML
Name: Deploy Actions: - Name: Deploy ActionTypeId: Category: Deploy Owner: AWS Provider: S3 Version: '1' RunOrder: 1 Configuration: BucketName: website-bucket Extract: 'false' OutputArtifacts: [] InputArtifacts: - Name: SourceArtifact Region: us-west-2 Namespace: DeployVariables
JSON
{ "Name": "Deploy", "Actions": [ { "Name": "Deploy", "ActionTypeId": { "Category": "Deploy", "Owner": "AWS", "Provider": "S3", "Version": "1" }, "RunOrder": 1, "Configuration": { "BucketName": "website-bucket", "Extract": "false" }, "OutputArtifacts": [], "InputArtifacts": [ { "Name": "SourceArtifact" } ], "Region": "us-west-2", "Namespace": "DeployVariables" } ] },

Ejemplo de configuración cuando Extract está establecido en true

En el siguiente ejemplo se muestra la configuración de acción predeterminada cuando la acción se crea con el campo Extract establecido en true.

YAML
Name: Deploy Actions: - Name: Deploy ActionTypeId: Category: Deploy Owner: AWS Provider: S3 Version: '1' RunOrder: 1 Configuration: BucketName: website-bucket Extract: 'true' ObjectKey: MyWebsite OutputArtifacts: [] InputArtifacts: - Name: SourceArtifact Region: us-west-2 Namespace: DeployVariables
JSON
{ "Name": "Deploy", "Actions": [ { "Name": "Deploy", "ActionTypeId": { "Category": "Deploy", "Owner": "AWS", "Provider": "S3", "Version": "1" }, "RunOrder": 1, "Configuration": { "BucketName": "website-bucket", "Extract": "true", "ObjectKey": "MyWebsite" }, "OutputArtifacts": [], "InputArtifacts": [ { "Name": "SourceArtifact" } ], "Region": "us-west-2", "Namespace": "DeployVariables" } ] },

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

  • Tutorial: Crear una canalización que utilice Amazon S3 como proveedor de implementación: en este tutorial, se muestran dos ejemplos para crear una canalización con una acción de implementación de S3. Se descargan los archivos de muestra, se cargan en su repositorio de CodeCommit, se crea el bucket de S3 y se configura el bucket para el alojamiento. A continuación, se utiliza la consola de CodePipeline para crear la canalización y especificar una configuración de implementación de Amazon S3.

  • Acción de código fuente de Amazon S3: en esta referencia de acción proporciona información de referencia y ejemplos de las acciones de código fuente de Amazon S3 en CodePipeline.