

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Referência da ação de implantação do Amazon S3
<a name="action-reference-S3Deploy"></a>

Você usa uma ação de implantação do Amazon S3 para implantar arquivos em um bucket do Amazon S3 para hospedagem ou arquivamento de sites estáticos. Você pode especificar se deseja extrair os arquivos de implantação antes de fazer upload para seu bucket.

**nota**  
Este tópico de referência descreve a ação de implantação do Amazon S3 em CodePipeline que a plataforma de implantação é um bucket do Amazon S3 configurado para hospedagem. Para obter informações de referência sobre a ação de origem do Amazon S3 em CodePipeline, consulte. [Referência da ação de origem do Amazon S3](action-reference-S3.md)

**Topics**
+ [Tipo de ação](#action-reference-S3Deploy-type)
+ [Parâmetros de configuração](#action-reference-S3Deploy-config)
+ [Input artifacts (Artefatos de entrada)](#action-reference-S3Deploy-input)
+ [Artefatos de saída](#action-reference-S3Deploy-output)
+ [Permissões do perfil de serviço: ação de implantação do S3](#edit-role-s3deploy)
+ [Exemplo de configuração da ação](#action-reference-S3Deploy-example)
+ [Consulte também](#action-reference-S3Deploy-links)

## Tipo de ação
<a name="action-reference-S3Deploy-type"></a>
+ Categoria: `Deploy`
+ Proprietário: `AWS`
+ Fornecedor: `S3`
+ Versão: `1`

## Parâmetros de configuração
<a name="action-reference-S3Deploy-config"></a>

**BucketName**  
Obrigatório: Sim  
O nome do bucket do Amazon S3 em que os arquivos serão implantados.

**Extract**  
Obrigatório: Sim  
Se for true, especifica que os arquivos serão extraídos antes do upload. Caso contrário, os arquivos da aplicação permanecerão compactados para upload, como acontece no caso de um site estático hospedado. Se for false, `ObjectKey` será obrigatório.

**ObjectKey**  
Condicional. Obrigatório se `Extract` = falso  
O nome da chave de objeto do Amazon S3 que identifica exclusivamente o objeto no bucket do S3.

**KMSEncryptionKEYarn**  
Obrigatório: não  
O ARN da chave de AWS KMS criptografia do bucket do host. O parâmetro `KMSEncryptionKeyARN` criptografa os artefatos carregados com a AWS KMS key fornecida. Para uma chave do KMS, você pode usar o ID da chave, o ARN da chave ou o ARN do alias.  
Os aliases são reconhecidos apenas na conta que criou a chave do KMS. Para ações entre contas, você só pode usar o ID ou o ARN da chave para identificar a chave. As ações entre contas envolvem o uso do perfil da outra conta (AccountB), portanto, a especificação do ID da chave usará a chave da outra conta (AccountB).
CodePipeline só oferece suporte a chaves KMS simétricas. Não use uma chave assimétrica do KMS para criptografar os dados no bucket do S3.

**CannedACL**  
Obrigatório: não  
O parâmetro `CannedACL` aplica a [ACL pré-configurada](https://docs.aws.amazon.com/AmazonS3/latest/userguide/acl-overview.html#canned-acl) especificada aos objetos implantados no Amazon S3. Isso substitui todas as ACLs existentes que foram aplicadas ao objeto.

**CacheControl**  
Obrigatório: não  
O `CacheControl` parâmetro controla o comportamento de armazenamento em cache requests/responses para objetos no bucket. Para obter uma lista de valores válidos, consulte o campo de cabeçalho [http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9](http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9) para operações HTTP. Para inserir vários valores em `CacheControl`, use uma vírgula entre cada valor. É possível adicionar um espaço após cada vírgula (opcional), conforme mostrado neste exemplo para a CLI:  

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

## Input artifacts (Artefatos de entrada)
<a name="action-reference-S3Deploy-input"></a>
+ **Número de artefatos:** `1`
+ **Descrição:** Os arquivos para implantação ou arquivamento são obtidos do repositório de origem, compactados e enviados por. CodePipeline

## Artefatos de saída
<a name="action-reference-S3Deploy-output"></a>
+ **Número de artefatos:** `0` 
+ **Descrição:** os artefatos de saída não se aplicam a esse tipo de ação.

## Permissões do perfil de serviço: ação de implantação do S3
<a name="edit-role-s3deploy"></a>

Para suporte à ação de implantação do S3, adicione o seguinte à declaração da 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 respaldar a ação de implantação do S3, se os objetos do S3 tiverem tags, você também deverá adicionar as seguintes permissões à declaração da política:

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

## Exemplo de configuração da ação
<a name="action-reference-S3Deploy-example"></a>

O exemplo a seguir mostra exemplos da configuração da ação.

### Exemplo de configuração quando `Extract` é definido como `false`
<a name="action-reference-S3Deploy-extractfalse"></a>

O exemplo a seguir mostra a configuração de ação padrão quando a ação é criada com o campo `Extract` definido como `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"
        }
    ]
},
```

------

### Exemplo de configuração quando `Extract` é definido como `true`
<a name="action-reference-S3Deploy-extracttrue"></a>

O exemplo a seguir mostra a configuração de ação padrão quando a ação é criada com o campo `Extract` definido como `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"
        }
    ]
},
```

------

## Consulte também
<a name="action-reference-S3Deploy-links"></a>

Os recursos relacionados a seguir podem ajudar você à medida que trabalha com esta ação.
+ [Tutorial: Criar um pipeline que usa o Amazon S3 como um provedor de implantação](tutorials-s3deploy.md): este tutorial mostra dois exemplos de criação de um pipeline com uma ação de implantação do S3. Você baixa arquivos de amostra, carrega os arquivos no seu CodeCommit repositório, cria seu bucket S3 e configura seu bucket para hospedagem. Em seguida, você usa o CodePipeline console para criar seu pipeline e especificar uma configuração de implantação do Amazon S3.
+ [Referência da ação de origem do Amazon S3](action-reference-S3.md)— Essa referência de ação fornece informações de referência e exemplos de ações de origem do Amazon S3 em. CodePipeline