

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

# Conexões para GitLab autogerenciamento
<a name="connections-gitlab-managed"></a>

As conexões permitem que você autorize e estabeleça configurações que associem seu provedor terceirizado aos seus AWS recursos. Para associar seu repositório de terceiros como origem do pipeline, use uma conexão. 

**nota**  
Em vez de criar ou usar uma conexão existente na conta, você pode usar uma conexão compartilhada entre outra Conta da AWS. Consulte [Usar uma conexão compartilhada com outra conta](connections-shared.md).

**nota**  
Esse recurso não está disponível nas regiões Ásia-Pacífico (Hong Kong), Ásia-Pacífico (Hyderabad), Ásia-Pacífico (Jacarta), Ásia-Pacífico (Melbourne), Ásia-Pacífico (Osaka), África (Cidade do Cabo), Oriente Médio (Bahrein), Oriente Médio (EAU), Europa (Espanha), Europa (Zurique), Israel (Tel Aviv) ou (Oeste dos EUA). AWS GovCloud Para fazer referência a outras ações disponíveis, consulte [Integrações de produtos e serviços com CodePipeline](integrations.md). Para considerações sobre essa ação na região Europa (Milão), consulte a nota em [CodeStarSourceConnection para Bitbucket Cloud GitHub, GitHub Enterprise Server, GitLab .com e ações GitLab autogerenciadas](action-reference-CodestarConnectionSource.md).

Para adicionar uma ação de origem GitLab autogerenciada CodePipeline, você pode escolher entre: 
+ Use o assistente de **criação de pipeline** do CodePipeline console ou a página **Editar ação** para escolher a opção de provedor **GitLabautogerenciado**. Consulte [Crie uma conexão com o GitLab autogerenciado (console)](#connections-gitlab-managed-console) para adicionar a ação. O console ajuda você a criar um recurso de host e um recurso de conexão.
+ Usar a CLI para adicionar a configuração da ação `CreateSourceConnection` com o provedor `GitLabSelfManaged` e criar seus recursos:
  + Para criar seus recursos de conexão, consulte [Crie um host e uma conexão com o GitLab autogerenciado (CLI)](#connections-gitlab-managed-cli) para criar um recurso de host e um recurso de conexão com a CLI.
  + Use o exemplo de configuração da ação `CreateSourceConnection` em [CodeStarSourceConnection para Bitbucket Cloud GitHub, GitHub Enterprise Server, GitLab .com e ações GitLab autogerenciadas](action-reference-CodestarConnectionSource.md) para adicionar sua ação, conforme mostrado em [Criar um pipeline (CLI)](pipelines-create.md#pipelines-create-cli).

**nota**  
É possível criar uma conexão por meio do console do Developer Tools em **Configurações**. Consulte [Criar uma conexão](https://docs.aws.amazon.com/dtconsole/latest/userguide/connections-create.html).

Antes de começar
+ Você já deve ter criado uma conta GitLab e ter a GitLab Enterprise Edition ou a GitLab Community Edition com uma instalação autogerenciada. Para obter mais informações, consulte [https://docs.gitlab.com/ee/subscriptions/self\$1managed/](https://docs.gitlab.com/ee/subscriptions/self_managed/).
**nota**  
As conexões fornecem acesso à conta usada para criar e autorizar a conexão. 
**nota**  
Você pode criar conexões com um repositório no qual você tem a função de **Proprietário** e GitLab, em seguida, a conexão pode ser usada com recursos como CodePipeline. Para repositórios em grupos, você não precisa ser o proprietário do grupo.
+ Você já deve ter criado um token de acesso GitLab pessoal (PAT) somente com a seguinte permissão reduzida: api. Para obter mais informações, consulte [https://docs.gitlab.com/ee/user/profile/personal\$1access\$1tokens.html](https://docs.gitlab.com/ee/user/profile/personal_access_tokens.html). Para criar e utilizar o PAT, é necessário ser administrador.
**nota**  
O PAT é usado para autorizar o host e não é armazenado ou usado pelas conexões. Para configurar um host, é possível criar um PAT temporário e, depois de configurar o host, você pode excluir o PAT.
+ É possível optar por configurar o host com antecedência. É possível configurar um host com ou sem uma VPC. Para obter detalhes sobre a configuração da VPC e informações adicionais sobre a criação de um host, consulte [Criar um host](https://docs.aws.amazon.com/dtconsole/latest/userguide/connections-host-create.html).

**Topics**
+ [Crie uma conexão com o GitLab autogerenciado (console)](#connections-gitlab-managed-console)
+ [Crie um host e uma conexão com o GitLab autogerenciado (CLI)](#connections-gitlab-managed-cli)

## Crie uma conexão com o GitLab autogerenciado (console)
<a name="connections-gitlab-managed-console"></a>

Use essas etapas para usar o CodePipeline console para adicionar uma ação de conexões ao seu repositório GitLab autogerenciado.

**nota**  
GitLab as conexões autogerenciadas fornecem acesso somente aos repositórios pertencentes à conta GitLab autogerenciada que foi usada para criar a conexão.

**Antes de começar**

Para que uma conexão de host seja GitLab autogerenciada, você deve ter concluído as etapas para criar um recurso de host para sua conexão. Consulte [Gerenciar hosts para conexões](https://docs.aws.amazon.com/dtconsole/latest/userguide/connections-hosts.html).

### Etapa 1: Criar ou editar seu pipeline
<a name="connections-gitlab-managed-console-action"></a>

**Para criar ou editar seu pipeline**

1. Faça login no CodePipeline console.

1. Escolha uma das opções a seguir.
   + Opte por criar um pipeline. Siga as etapas em *Criar um pipeline* para concluir a primeira tela e escolha **Próximo**. Na página **Fonte**, em **Provedor de origem**, escolha **GitLab autogerenciado**.
   + Opte por editar um pipeline existente. Escolha **Editar** e, em seguida, escolha **Editar estágio**. Escolha adicionar ou editar sua ação de origem. Na página **Editar ação**, em **Nome da ação**, insira um nome para a ação. Em **Provedor de ações**, escolha **GitLab autogerenciado**.

1. Execute um destes procedimentos:
   + Em **Conexão**, se você ainda não tiver criado uma conexão com seu provedor, escolha **Conectar ao GitLab autogerenciado**. Prossiga para a Etapa 2: Criar uma conexão com o GitLab autogerenciado.
   + Em **Conexão**, se você já tiver criado uma conexão com seu provedor, escolha a conexão e vá para a Etapa 3: Salvar sua ação de origem GitLab autogerenciada.

### Etapa 2: criar uma conexão com o GitLab autogerenciado
<a name="connections-gitlab-managed-console-create"></a>

Depois de escolher criar a conexão, a página **Connect to GitLab self-managed** é exibida.

**Para se conectar ao GitLab autogerenciado**

1. Em **Connection name** (Nome da conexão), informe um nome para a conexão.

1. Em **URL**, insira o endpoint do seu servidor.
**nota**  
Se o URL fornecido já tiver sido usado para configurar um host para uma conexão, você será solicitado a escolher o ARN de recurso de host criado anteriormente para esse endpoint.

1. Se você tiver iniciado o servidor em uma Amazon VPC e quiser se conectar à VPC, selecione **Usar uma VPC** e preencha as informações da VPC.

1. Escolha **Conectar ao GitLab autogerenciado**. A conexão criada é mostrada com um status **Pending** (Pendente). Um recurso de host é criado para a conexão com as informações do servidor fornecidas. Para o nome do host, o URL é usado.

1. Selecione **Update pending connection** (Atualizar conexão pendente). 

1. Se uma página for aberta com uma mensagem de redirecionamento confirmando que você deseja continuar com o provedor, selecione **Continuar**. Insira a autorização para o provedor.

1. Uma *host\$1name* página **de configuração** é exibida. Em **Fornecer token de acesso pessoal**, forneça GitLab ao seu PAT apenas a seguinte permissão reduzida:. `api`
**nota**  
Apenas administradores podem criar e utilizar o PAT.

   Escolha **Continuar**.  
![\[Captura de tela do console mostrando a entrada do token de acesso pessoal GitLab autogerenciado para o novo host\]](http://docs.aws.amazon.com/pt_br/codepipeline/latest/userguide/images/connections-create-glsm-pat.png)

1. A página de conexão mostra a conexão criada em um status **Available** (Disponível).

### Etapa 3: Salve sua GitLab ação de origem autogerenciada
<a name="connections-gitlab-managed-console-save"></a>

Execute estas etapas no assistente ou na página **Editar ação** para salvar a ação de origem com as informações de conexão.

**Para concluir e salvar a ação de origem com a conexão**

1. Em **Repository name (Nome do repositório)**, escolha o nome do repositório de terceiros.

1. Em **Gatilhos do Pipeline**, você pode adicionar gatilhos se sua ação for uma ação. CodeConnections Para definir a configuração de gatilhos do pipeline e, se necessário, aplicar filtros, consulte mais detalhes em [Adicionar gatilho com tipos de eventos code push ou pull request](pipelines-filter.md).

1. Em **Output artifact format (Formato de artefato de saída)**, você deve escolher o formato para seus artefatos. 
   + **Para armazenar artefatos de saída da ação GitLab autogerenciada usando o método padrão, escolha CodePipeline default.** A ação acessa os arquivos no repositório e armazena os artefatos em um arquivo ZIP no armazenamento de artefatos do pipeline.
   + Para armazenar um arquivo JSON que contém uma referência de URL ao repositório para que as ações downstream possam executar comandos Git diretamente, escolha **Full clone (Clone completo)**. Essa opção só pode ser usada por ações CodeBuild posteriores.

1. Escolha **Próximo** no assistente ou **Salvar** na página **Editar ação**.

## Crie um host e uma conexão com o GitLab autogerenciado (CLI)
<a name="connections-gitlab-managed-cli"></a>

Você pode usar o AWS Command Line Interface (AWS CLI) para criar uma conexão. 

Para fazer isso, use o comando **create-connection**. 

**Importante**  
Uma conexão criada por meio do AWS CLI ou AWS CloudFormation está no `PENDING` status por padrão. Depois de criar uma conexão com a CLI ou CloudFormation, use o console para editar a conexão e definir seu status. `AVAILABLE`

Você pode usar o AWS Command Line Interface (AWS CLI) para criar um host para conexões instaladas. 

Você usa um host para representar o endpoint da infraestrutura em que seu provedor de terceiros está instalado. Após concluir a criação do host com a CLI, o host fica no status **Pendente**. Então, você configura ou registra o host para movê-lo para o status **Disponível**. Depois que o host estiver disponível, conclua as etapas para criar uma conexão.

Para fazer isso, use o comando **create-host**. 

**Importante**  
Um host criado por meio do `Pending` status AWS CLI is in por padrão. Após criar um host com a CLI, use o console ou a CLI para configurar o host e tornar seu status `Available`.

**Para criar um host**

1. Abra um terminal (Linux, macOS ou Unix) ou um prompt de comando (Windows). Use o AWS CLI para executar o **create-host** comando, especificando o `--name``--provider-type`, e `--provider-endpoint` para sua conexão. Neste exemplo, o nome do provedor de terceiros é `GitLabSelfManaged` e o endpoint é `my-instance.dev`.

   ```
   aws codestar-connections create-host --name MyHost --provider-type GitLabSelfManaged --provider-endpoint "https://my-instance.dev"
   ```

   Se o comando for bem-sucedido, ele retornará as informações de nome do recurso da Amazon (ARN) do host semelhantes às mostradas a seguir.

   ```
   {
       "HostArn": "arn:aws:codestar-connections:us-west-2:account_id:host/My-Host-28aef605"
   }
   ```

   Após esta etapa, o host estará no status `PENDING`.

1. Use o console para concluir a configuração do host e mova o host para um status `Available`.

**Para criar uma conexão com o GitLab autogerenciado**

1. Abra um terminal (Linux, macOS ou Unix) ou um prompt de comando (Windows). Use o AWS CLI para executar o **create-connection** comando, especificando `--host-arn` e `--connection-name` para sua conexão.

   ```
   aws codestar-connections create-connection --host-arn arn:aws:codestar-connections:us-west-2:account_id:host/MyHost-234EXAMPLE --connection-name MyConnection
   ```

   Se tiver êxito, esse comando gerará as informações do ARN de conexão semelhantes às seguintes.

   ```
   {
       "ConnectionArn": "arn:aws:codestar-connections:us-west-2:account_id:connection/aEXAMPLE-8aad"
   }
   ```

1. Use o console para configurar a conexão pendente.

1. O pipeline assume como padrão a detecção de alterações ao enviar o código por push ao repositório de origem da conexão. Para definir a configuração do gatilho do pipeline para liberação manual ou para tags Git, execute um dos seguintes procedimentos:
   + Para definir a configuração do gatilho do pipeline para início somente por meio de liberação manual, adicione a seguinte linha à configuração: 

     ```
     "DetectChanges": "false",
     ```
   + Para definir a configuração de gatilhos do pipeline e aplicar filtros, consulte mais detalhes em [Adicionar gatilho com tipos de eventos code push ou pull request](pipelines-filter.md). Por exemplo, o trecho a seguir é adicionado ao nível do pipeline na definição JSON do pipeline. Neste exemplo, `release-v0` e `release-v1` são as tags Git a serem incluídas, enquanto `release-v2` são as tags Git a serem excluídas.

     ```
     "triggers": [
                 {
                     "providerType": "CodeStarSourceConnection",
                     "gitConfiguration": {
                         "sourceActionName": "Source",
                         "push": [
                             {
                                 "tags": {
                                     "includes": [
                                         "release-v0", "release-v1"
                                     ],
                                     "excludes": [
                                         "release-v2"
                                     ]
                                 }
                             }
                         ]
                     }
                 }
             ]
     ```