

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

# Tutorial: Usar variáveis no nível do pipeline
<a name="tutorials-pipeline-variables"></a>

Neste tutorial, você criará um pipeline em que adicionará uma variável no nível do pipeline e executará uma ação de CodeBuild criação que gera o valor da variável.

**Importante**  
Como parte da criação de um pipeline, um bucket de artefatos S3 fornecido pelo cliente será usado CodePipeline por for artefacts. (Este bucket não é o mesmo utilizado para uma ação de origem do S3.) Se o bucket de artefatos do S3 estiver em uma conta diferente da conta do seu pipeline, certifique-se de que o bucket de artefatos do S3 Contas da AWS seja de propriedade de quem é seguro e confiável.

**Topics**
+ [Pré-requisitos](#tutorials-pipeline-variables-prereq)
+ [Etapa 1: Criar seu pipeline e compilar o projeto](#tutorials-pipeline-variables-pipeline)
+ [Etapa 2: Lançar alterações e visualizar logs](#tutorials-pipeline-variables-view)

## Pré-requisitos
<a name="tutorials-pipeline-variables-prereq"></a>

Antes de começar, é necessário fazer o seguinte:
+ Crie um CodeCommit repositório.
+ Adicione um arquivo .txt a um repositório.

## Etapa 1: Criar seu pipeline e compilar o projeto
<a name="tutorials-pipeline-variables-pipeline"></a>

Nesta seção, você criará um pipeline com as seguintes ações:
+ Um estágio de origem com uma conexão com seu CodeCommit repositório.
+ Um estágio de construção com uma ação de AWS CodeBuild construção.

**Criar um pipeline com o assistente**

1. Faça login no CodePipeline console em [https://console.aws.amazon.com/codepipeline/](https://console.aws.amazon.com/codepipeline/).

1. Na página **Welcome (Bem-vindo)**, **Getting started (Conceitos básicos)** ou **Pipelines**, selecione **Create pipeline (Criar pipeline)**.

1. Na página **Etapa 1: Escolher opção de criação**, em **Opções de criação**, selecione a opção **Criar pipeline personalizado**. Escolha **Próximo**.

1. Em **Etapa 2: Escolher as configurações do pipeline**, em **Nome do pipeline**, insira **MyVariablesPipeline**.

1. Em **Tipo de pipeline**, mantenha a seleção padrão em **V2**. Os tipos de pipeline diferem em características e preços. Para obter mais informações, consulte [Tipos de pipeline](pipeline-types.md).

1. Em **Service role (Função do serviço)**, selecione **New service role (Nova função de serviço)**.
**nota**  
Se você optar por usar sua função de CodePipeline serviço existente, certifique-se de ter adicionado a permissão do `codeconnections:UseConnection` IAM à sua política de função de serviço. Para obter instruções sobre a função de CodePipeline serviço, consulte [Adicionar permissões à função CodePipeline de serviço](https://docs.aws.amazon.com/codepipeline/latest/userguide/security-iam.html#how-to-update-role-new-services).

1. Em **Variáveis**, selecione **Adicionar variável**. Em **Nome**, insira `timeout`. Em **Padrão**, insira 1000. Em Descrição, insira a seguinte descrição: **Timeout**.

   Isso criará uma variável na qual você poderá declarar o valor quando a execução do pipeline começar. Os nomes das variáveis devem corresponder a `[A-Za-z0-9@\-_]+` e podem ser qualquer coisa, exceto uma string vazia.

1. Em **Configurações avançadas** mantenha os padrões. Em **Artifact store** (Armazenamento de artefatos), selecione **Default location** (Local padrão) para usar o armazenamento de artefatos padrão, como o bucket de artefatos do Amazon S3 designado como padrão, para o pipeline na região que você selecionou.
**nota**  
Este não é o bucket de origem para seu código-fonte. Este é o armazenamento de artefatos para o pipeline. Um armazenamento de artefatos separado, como um bucket do S3, é necessário para cada pipeline.

   Escolha **Próximo**.

1. Na página **Etapa 3: Adicionar etapa de origem**, adicione uma etapa de origem:

   1. Em **Source provider (Provedor de código-fonte)**, selecione **AWS CodeCommit**.

   1. Em **Nome do repositório** e **Nome da ramificação**, selecione o repositório e a ramificação.

   Escolha **Próximo**.

1. Em **Etapa 4: Adicionar etapa de compilação**, adicione um estágio de compilação:

   1. Em **Build provider (Provedor de compilação)**, escolha **AWS CodeBuild**. Permita que **Region (Região)** seja definida para a região do pipeline.

   1. Escolha **Criar projeto**.

   1. Em **Nome do projeto**, insira um nome para esse projeto de compilação.

   1. Em **Environment image (Imagem do ambiente)**, escolha **Managed image (Imagem gerenciada)**. Para **Operating system**, selecione **Ubuntu**.

   1. Em **Runtime (Tempo de execução)**, selecione **Standard (Padrão)**. **Para **Imagem**, escolha: 5.0aws/codebuild/standard.**

   1. Em **Service role (Função de serviço)**, selecione **New service role (Nova função de serviço)**.
**nota**  
Anote o nome da sua função CodeBuild de serviço. Você precisará do nome do perfil para a etapa final deste tutorial.

   1. Em **Buildspec**, para **Build specifications** (Especificações da compilação), escolha **Insert build commands** (Inserir comandos de compilação). Selecione **Alternar para o editor** e cole o seguinte em **Comandos de compilação**. No buildspec, a variável do cliente `$CUSTOM_VAR1` será usada para gerar a variável do pipeline no log de criação. Você criará a variável de saída `$CUSTOM_VAR1` como uma variável de ambiente na etapa a seguir.

      ```
      version: 0.2
      #env:
        #variables:
           # key: "value"
           # key: "value"
        #parameter-store:
           # key: "value"
           # key: "value"
        #git-credential-helper: yes
      phases:
        install:
          #If you use the Ubuntu standard image 2.0 or later, you must specify runtime-versions.
          #If you specify runtime-versions and use an image other than Ubuntu standard image 2.0, the build fails.
          runtime-versions:
            nodejs: 12
          #commands:
            # - command
            # - command
        #pre_build:
          #commands:
            # - command
            # - command
        build:
          commands:
            - echo $CUSTOM_VAR1
        #post_build:
          #commands:
            # - command
            # - command
      artifacts:
        files:
           - '*'
          # - location
        name: $(date +%Y-%m-%d)
        #discard-paths: yes
        #base-directory: location
      #cache:
        #paths:
          # - paths
      ```

   1. Escolha **Continuar para CodePipeline**. Isso retorna ao CodePipeline console e cria um CodeBuild projeto que usa seus comandos de compilação para configuração. O projeto de compilação usa uma função de serviço para gerenciar AWS service (Serviço da AWS) permissões. Essa etapa pode levar alguns minutos.

   1. Em **Variáveis de ambiente *- opcional***, para criar uma variável de ambiente como uma variável de entrada para a ação de criação que será resolvida pela variável em nível de pipeline, selecione **Adicionar variável de ambiente**. Isso criará a variável especificada no buildspec como `$CUSTOM_VAR1`. Em **Nome**, insira `CUSTOM_VAR1`. Em **Valor**, informe `#{variables.timeout}`. Em **Tipo**, escolha`Plaintext`.

      O `#{variables.timeout}` valor da variável de ambiente é baseado no namespace da variável no nível do pipeline `variables` e na variável no nível do pipeline criada para o pipeline na etapa 7. `timeout`

   1. Escolha **Próximo**.

1. Em **Etapa 5: Adicionar etapa de teste**, escolha **Ignorar etapa de teste** e aceite a mensagem de aviso escolhendo **Ignorar** novamente. 

   Escolha **Próximo**.

1. Na página **Etapa 6: Adicionar estágio de implantação**, escolha **Ignorar estágio de implantação** e, em seguida, aceite a mensagem de aviso escolhendo **Ignorar** novamente. Escolha **Próximo**.

1. Na **Etapa 7: Revisão**, escolha **Criar funil**.

## Etapa 2: Lançar alterações e visualizar logs
<a name="tutorials-pipeline-variables-view"></a>

1. Depois que o pipeline for executado com êxito, no estágio de criação bem-sucedido, selecione **Visualizar detalhes**.

   Na página de detalhes, selecione a guia **Logs**. Veja a saída da CodeBuild compilação. Os comandos geram o valor da variável inserida.

1. No painel de navegação à esquerda, selecione **Histórico**.

   Escolha a execução recente e, depois, selecione a guia **Variáveis**. Visualize o valor resolvido para a variável do pipeline.