

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á.

# CodeCommit referência da ação de origem
<a name="action-reference-CodeCommit"></a>

Inicia o pipeline quando uma nova confirmação é feita no CodeCommit repositório e na ramificação configurados.

Se você usa o console para criar ou editar o pipeline, CodePipeline cria uma EventBridge regra que inicia seu pipeline quando ocorre uma alteração no repositório.

**nota**  
Para Amazon ECR, Amazon S3 CodeCommit ou fontes, você também pode criar uma substituição de origem usando a entrada de transformação de entrada para usar `revisionValue` o EventBridge in para seu evento de pipeline, onde `revisionValue` o é derivado da variável de evento de origem para sua chave de objeto, confirmação ou ID de imagem. Para saber mais, consulte a etapa opcional da entrada da transformação de entrada incluída nos procedimentos em [Recursos e ações de origem do Amazon ECR EventBridge](create-cwe-ecr-source.md), [Conexão a ações de origem do Amazon S3 com uma fonte habilitada para eventos](create-S3-source-events.md) ou [CodeCommit ações de origem e EventBridge](triggering.md).

Você já deve ter criado um CodeCommit repositório antes de conectar o pipeline por meio de uma CodeCommit ação.

Depois que uma alteração de código é detectada, você tem as seguintes opções para passar o código para ações subsequentes:
+ **Padrão** — Configura a ação de CodeCommit origem para gerar um arquivo ZIP com uma cópia superficial do seu commit.
+ **Clone completo:** configura a ação de origem para gerar uma referência de URL do Git para o repositório nas ações subsequentes.

  Atualmente, a referência de URL do Git só pode ser usada por CodeBuild ações downstream para clonar o repositório e os metadados do Git associados. A tentativa de passar uma referência de URL do Git para CodeBuild não-ações resulta em um erro.

**Topics**
+ [Tipo de ação](#action-reference-CodeCommit-type)
+ [Parâmetros de configuração](#action-reference-CodeCommit-config)
+ [Input artifacts (Artefatos de entrada)](#action-reference-CodeCommit-input)
+ [Artefatos de saída](#action-reference-CodeCommit-output)
+ [Variáveis de saída](#action-reference-CodeCommit-variables)
+ [Permissões da função de serviço: CodeCommit ação](#edit-role-codecommit)
+ [Exemplo de configuração da ação](#action-reference-CodeCommit-example)
+ [Consulte também](#action-reference-CodeCommit-links)

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

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

**RepositoryName**  
Obrigatório: Sim  
O nome do repositório onde as alterações de origem devem ser detectadas.

**BranchName**  
Obrigatório: Sim  
O nome da ramificação onde as alterações de origem devem ser detectadas.

**PollForSourceChanges**  
Obrigatório: não  
`PollForSourceChanges`controla se CodePipeline pesquisa o CodeCommit repositório em busca de alterações na fonte. Em vez disso, recomendamos que você use CloudWatch Eventos para detectar alterações na fonte. Para obter mais informações sobre como configurar CloudWatch eventos, consulte [Migrar pipelines de pesquisa (CodeCommit fonte) (CLI)](update-change-detection.md#update-change-detection-cli-codecommit) ou[Migrar canais de votação (CodeCommit fonte) (modelo)CloudFormation](update-change-detection.md#update-change-detection-cfn-codecommit).  
Se você pretende configurar uma regra de CloudWatch eventos, deve defini-la `PollForSourceChanges` `false` para evitar execuções duplicadas no pipeline.
Os valores válidos para esse parâmetro:  
+ `true`: se definido, CodePipeline pesquisa seu repositório em busca de alterações na fonte.
**nota**  
Se você omitir`PollForSourceChanges`, o CodePipeline padrão é pesquisar seu repositório em busca de alterações na fonte. Esse comportamento será o mesmo quando o `PollForSourceChanges` estiver incluído e definido como `true`.
+ `false`: se definido, CodePipeline não pesquisa seu repositório em busca de alterações na fonte. Use essa configuração se você pretende configurar uma regra de CloudWatch Eventos para detectar alterações na origem.

****OutputArtifactFormat****  
Obrigatório: não  
Formato do artefato de saída. Os valores podem ser `CODEBUILD_CLONE_REF` ou `CODE_ZIP`. Se não especificado, o padrão será `CODE_ZIP`.  
A opção `CODEBUILD_CLONE_REF` só pode ser usada por ações downstream do CodeBuild.  
Se você escolher essa opção, precisará adicionar a `codecommit:GitPull` permissão à sua função de CodeBuild serviço, conforme mostrado em[Adicionar CodeBuild GitClone permissões para ações CodeCommit de origem](troubleshooting.md#codebuild-role-codecommitclone). Você também precisa adicionar a `codecommit:GetRepository` permissão à sua função CodePipeline de serviço, conforme mostrado em[Adicionar permissões à função CodePipeline de serviço](how-to-custom-role.md#how-to-update-role-new-services). Para assistir a um tutorial que mostre como usar a opção **Clone completo**, consulte [Tutorial: use o clone completo com uma fonte de CodeCommit pipeline](tutorials-codecommit-gitclone.md).

## Input artifacts (Artefatos de entrada)
<a name="action-reference-CodeCommit-input"></a>
+ **Número de artefatos:** `0`
+ **Descrição:** os artefatos de entrada não se aplicam a esse tipo de ação.

## Artefatos de saída
<a name="action-reference-CodeCommit-output"></a>
+ **Número de artefatos:** `1` 
+ **Descrição:** O artefato de saída desta ação é um arquivo ZIP que contém o conteúdo do repositório e ramificação configurados na confirmação especificada como a revisão de origem para a execução do pipeline. Os artefatos gerados do repositório são os artefatos de saída da ação. CodeCommit O ID de confirmação do código-fonte é exibido CodePipeline como a revisão da fonte para a execução do pipeline acionado.

## Variáveis de saída
<a name="action-reference-CodeCommit-variables"></a>

Quando configurada, essa ação produz variáveis que podem ser referenciadas pela configuração de ação de uma ação downstream no pipeline. Esta ação produz variáveis que podem ser visualizadas como variáveis de saída, mesmo que a ação não tenha um namespace. Configure uma ação com um namespace a fim de disponibilizar as variáveis para a configuração de ações downstream.

Para obter mais informações, consulte [Referência de variáveis](reference-variables.md).

**CommitId**  
O ID do CodeCommit commit que acionou a execução do pipeline. IDs Os commits são o SHA completo do commit.

**CommitMessage**  
A mensagem da descrição, se houver, associada à confirmação que acionou a execução do pipeline.

**RepositoryName**  
O nome do CodeCommit repositório em que o commit que acionou o pipeline foi feito.

**BranchName**  
O nome da ramificação do CodeCommit repositório em que a alteração na fonte foi feita.

**AuthorDate**  
A data em que a confirmação foi criada, no formato de timestamp.

**CommitterDate**  
A data em que a confirmação foi confirmada, no formato de timestamp.

## Permissões da função de serviço: CodeCommit ação
<a name="edit-role-codecommit"></a>

Ao CodePipeline executar a ação, a política de função de CodePipeline serviço exige as seguintes permissões, com escopo adequado até o ARN do recurso do pipeline, a fim de manter o acesso com menos privilégios. Por exemplo, adicione o seguinte à declaração da política:

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "codecommit:CancelUploadArchive",
                "codecommit:GetBranch",
                "codecommit:GetCommit",
                "codecommit:GetRepository",
                "codecommit:GetUploadArchiveStatus",
                "codecommit:UploadArchive"
            ],
            "Resource": [
                "arn:aws:codecommit:*:111122223333:[[codecommitRepostories]]"
            ]
        }
    ]
}
```

------



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

### Exemplo de formato de artefato de saída padrão
<a name="w2aac56c49c29b3"></a>

------
#### [ YAML ]

```
name: Source
actionTypeId:
  category: Source
  owner: AWS
  provider: CodeCommit
  version: '1'
runOrder: 1
configuration:
  BranchName: main
  PollForSourceChanges: 'false'
  RepositoryName: MyWebsite
outputArtifacts:
  - name: Artifact_MyWebsiteStack
inputArtifacts: []
region: us-west-2
namespace: SourceVariables
```

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

```
{
    "name": "Source",
    "actionTypeId": {
        "category": "Source",
        "owner": "AWS",
        "provider": "CodeCommit",
        "version": "1"
    },
    "runOrder": 1,
    "configuration": {
        "BranchName": "main",
        "PollForSourceChanges": "false",
        "RepositoryName": "MyWebsite"
    },
    "outputArtifacts": [
        {
            "name": "Artifact_MyWebsiteStack"
        }
    ],
    "inputArtifacts": [],
    "region": "us-west-2",
    "namespace": "SourceVariables"
}
```

------

### Exemplo de formato de artefato de saída de clonagem completa
<a name="w2aac56c49c29b5"></a>

------
#### [ YAML ]

```
name: Source
actionTypeId:
  category: Source
  owner: AWS
  provider: CodeCommit
  version: '1'
runOrder: 1
configuration:
  BranchName: main
  OutputArtifactFormat: CODEBUILD_CLONE_REF
  PollForSourceChanges: 'false'
  RepositoryName: MyWebsite
outputArtifacts:
  - name: SourceArtifact
inputArtifacts: []
region: us-west-2
namespace: SourceVariables
```

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

```
{
    "name": "Source",
    "actionTypeId": {
        "category": "Source",
        "owner": "AWS",
        "provider": "CodeCommit",
        "version": "1"
    },
    "runOrder": 1,
    "configuration": {
        "BranchName": "main",
        "OutputArtifactFormat": "CODEBUILD_CLONE_REF",
        "PollForSourceChanges": "false",
        "RepositoryName": "MyWebsite"
    },
    "outputArtifacts": [
        {
            "name": "SourceArtifact"
        }
    ],
    "inputArtifacts": [],
    "region": "us-west-2",
    "namespace": "SourceVariables"
}
```

------

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

Os recursos relacionados a seguir podem ajudar você à medida que trabalha com esta ação.
+ [Tutorial: criar um pipeline simples (CodeCommit repositório)](tutorials-simple-codecommit.md)— Este tutorial fornece um exemplo de arquivo de especificação do aplicativo e um exemplo de grupo de implantação e CodeDeploy aplicativo. Use este tutorial para criar um pipeline com uma CodeCommit fonte que é implantada em instâncias do Amazon EC2.