

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.

# Referencia de acción de implementación de Amazon S3
<a name="action-reference-S3Deploy"></a>

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 despliegue de Amazon S3 CodePipeline cuando la plataforma de despliegue es un bucket de Amazon S3 configurado para el alojamiento. Para obtener información de referencia sobre la acción de origen de Amazon S3 en CodePipeline, consulte[Referencia sobre la acción de origen de Amazon S3](action-reference-S3.md).

**Topics**
+ [

## Tipo de acción
](#action-reference-S3Deploy-type)
+ [

## Parámetros de configuración
](#action-reference-S3Deploy-config)
+ [

## Artefactos de entrada
](#action-reference-S3Deploy-input)
+ [

## Artefactos de salida
](#action-reference-S3Deploy-output)
+ [

## Permisos del rol de servicio: acción de implementación de S3
](#edit-role-s3deploy)
+ [

## Ejemplo de configuración de una acción
](#action-reference-S3Deploy-example)
+ [

## Véase también
](#action-reference-S3Deploy-links)

## Tipo de acción
<a name="action-reference-S3Deploy-type"></a>
+ Categoría: `Deploy`
+ Propietario: `AWS`
+ Proveedor: `S3`
+ Versión: `1` 

## Parámetros de configuración
<a name="action-reference-S3Deploy-config"></a>

**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 AWS KMS cifrado 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.  
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).
CodePipeline solo admite claves 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](https://docs.aws.amazon.com/AmazonS3/latest/userguide/acl-overview.html#canned-acl) especificada a objetos implementados en Amazon S3. Esto sobreescribe cualquier ACL existente aplicado al objeto.

**CacheControl**  
Obligatorio: no  
El `CacheControl` parámetro controla el comportamiento de almacenamiento en caché de requests/responses los objetos del depósito. Para una lista de valores válidos, consulte el [http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9](http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9)campo 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
<a name="action-reference-S3Deploy-input"></a>
+ **Número de artefactos:** `1`
+ **Descripción:** Los archivos para su despliegue o archivado se obtienen del repositorio de origen, se comprimen en un zip y se cargan allí. CodePipeline

## Artefactos de salida
<a name="action-reference-S3Deploy-output"></a>
+ **Número de artefactos:** `0` 
+ **Descripción:** los artefactos de salida no se aplican a este tipo de acción.

## Permisos del rol de servicio: acción de implementación de S3
<a name="edit-role-s3deploy"></a>

Para la compatibilidad con la acción de S3, agregue lo siguiente a su declaración de política:

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "s3:PutObject",
        "s3:PutObjectAcl",
        "s3:PutObjectVersionAcl",
        "s3:GetBucketVersioning",
        "s3:GetBucketAcl",
        "s3:GetBucketLocation"
      ],
      "Resource": [
        "arn:aws:s3:::[[s3DeployBuckets]]",
        "arn:aws:s3:::[[s3DeployBuckets]]/*"
      ],
      "Condition": {
        "StringEquals": {
          "aws:ResourceAccount": "111122223333"
        }
      }
    }
  ]
}
```

------

Para admitir la acción de implementación de S3, si sus objetos de S3 tienen etiquetas, también debe agregar los siguientes permisos a su declaración de política:

```
"s3:GetObjectTagging",
"s3:GetObjectVersionTagging",
"s3:PutObjectTagging"
```

## Ejemplo de configuración de una acción
<a name="action-reference-S3Deploy-example"></a>

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

### Ejemplo de configuración cuando `Extract` está establecido en `false`
<a name="action-reference-S3Deploy-extractfalse"></a>

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'
      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": "false",
                "ObjectKey": "MyWebsite"
                },
            "OutputArtifacts": [],
            "InputArtifacts": [
                {
                    "Name": "SourceArtifact"
                }
            ],
            "Region": "us-west-2",
            "Namespace": "DeployVariables"
        }
    ]
},
```

------

### Ejemplo de configuración cuando `Extract` está establecido en `true`
<a name="action-reference-S3Deploy-extracttrue"></a>

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'
    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"
                },
            "OutputArtifacts": [],
            "InputArtifacts": [
                {
                    "Name": "SourceArtifact"
                }
            ],
            "Region": "us-west-2",
            "Namespace": "DeployVariables"
        }
    ]
},
```

------

## Véase también
<a name="action-reference-S3Deploy-links"></a>

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](tutorials-s3deploy.md): en este tutorial, se muestran dos ejemplos para crear una canalización con una acción de implementación de S3. Descarga los archivos de muestra, los carga en su CodeCommit repositorio, crea su bucket de S3 y configura su bucket para el alojamiento. A continuación, utilice la CodePipeline consola para crear su canalización y especificar una configuración de despliegue de Amazon S3.
+ [Referencia sobre la acción de origen de Amazon S3](action-reference-S3.md)— Esta referencia de acciones proporciona información de referencia y ejemplos de las acciones de origen de Amazon S3 en CodePipeline.