Trabalhar com variáveis - AWS CodePipeline

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

Trabalhar com variáveis

Algumas ações na CodePipeline geração de variáveis. Para usar variáveis:

  • Atribua um namespace a uma ação a fim de disponibilizar as variáveis que ele produz para uma configuração de ação downstream.

  • Configure a ação downstream para consumir as variáveis geradas pela ação.

    Você pode visualizar os detalhes de cada execução de ação para ver os valores de cada variável de saída gerada pela ação em tempo de execução.

Para ver step-by-step exemplos de uso de variáveis:

Configurar ações de variáveis

Ao adicionar uma ação ao pipeline, você pode atribuir-lhe um namespace e configurá-lo para consumir variáveis de ações anteriores.

Configurar ações com variáveis (console)

Este exemplo cria um pipeline com uma ação CodeCommit de origem e uma ação de CodeBuild construção. A CodeBuild ação é configurada para consumir as variáveis produzidas pela CodeCommit ação.

Se o namespace não for especificado, as variáveis não estarão disponíveis para referência na configuração da ação. Quando você usa o console para criar um pipeline, o namespace de cada ação é gerado automaticamente.

Como criar um pipeline com variáveis
  1. Faça login no AWS Management Console e abra o CodePipeline console em http://console.aws.amazon.com/codesuite/codepipeline/home.

  2. Selecione Criar pipeline. Insira um nome para o pipeline e escolha Next (Próximo).

  3. Em Fonte, em Provedor, escolha CodeCommit. Escolha o CodeCommit repositório e a ramificação para a ação de origem e, em seguida, escolha Avançar.

  4. Em Build, em Provider, escolha CodeBuild. Escolha um nome de projeto de CodeBuild construção existente ou escolha Criar projeto. Em Criar projeto de compilação, crie um projeto de compilação e escolha Retornar para CodePipeline.

    Em Environment variables (Variáveis de ambiente), escolha Add environment variables (Adicionar variáveis de ambiente). Por exemplo, insira o ID de execução com a sintaxe de variável #{codepipeline.PipelineExecutionId} e o ID de confirmação com a sintaxe da variável #{SourceVariables.CommitId}.

    nota

    Você pode inserir sintaxe variável em qualquer campo de configuração de ação no assistente.

  5. Escolha Criar.

  6. Depois que o pipeline é criado, você pode visualizar o namespace criado pelo assistente. No pipeline, escolha o ícone do estágio cujo namespace você deseja visualizar. Neste exemplo, o namespace gerado automaticamente da ação de origem, SourceVariables, é exibido.

    Exemplo: tela de Informações de ação
Para editar o namespace de uma ação existente
  1. Faça login no AWS Management Console e abra o CodePipeline console em http://console.aws.amazon.com/codesuite/codepipeline/home.

  2. Escolha o pipeline que você deseja editar e escolha Edit (Editar). No estágio de origem, escolha Edit stage (Editar estágio). Adicione a CodeCommit ação.

  3. Em Edit action (Editar ação), visualize o campo Variable namespace (Namespace de variável) . Se a ação existente foi criada anteriormente ou sem usar o assistente, você deverá adicionar um namespace. Em Variable namespace (Namespace de variável), insira um nome de namespace e escolha Save (Salvar).

Como visualizar as variáveis de saída
  1. Faça login no AWS Management Console e abra o CodePipeline console em http://console.aws.amazon.com/codesuite/codepipeline/home.

  2. Depois que o pipeline for criado e executado com êxito, você poderá visualizar as variáveis na página Action execution details (Detalhes da execução da ação). Para mais informações, consulte Visualizar variáveis (console).

Configurar ações para variáveis (CLI)

Ao usar o comando create-pipeline para criar um pipeline ou o comando update-pipeline para editar um pipeline, você pode fazer referência/usar variáveis na configuração de uma ação.

Se o namespace não for especificado, as variáveis produzidas pela ação não estarão disponíveis para serem referenciadas em qualquer configuração de ação downstream.

Como configurar uma ação com um namespace
  1. Siga as etapas em Crie um pipeline em CodePipeline para criar um pipeline usando a CLI. Inicie um arquivo de entrada para fornecer o comando create-pipeline com o parâmetro --cli-input-json. Na estrutura do pipeline, adicione o parâmetro namespace e especifique um nome, como SourceVariables.

    . . . { "inputArtifacts": [], "name": "Source", "region": "us-west-2", "namespace": "SourceVariables", "actionTypeId": { "category": "Source", "owner": "AWS", "version": "1", "provider": "CodeCommit" }, "outputArtifacts": [ . . .
  2. Salve o arquivo com um nome como MyPipeline.json.

  3. Em um terminal (Linux, macOS ou Unix) ou prompt de comando (Windows), execute o comando create-pipeline e crie o pipeline.

    Invoque o arquivo que você criou quando executou o comando create-pipeline. Por exemplo: .

    aws codepipeline create-pipeline --cli-input-json file://MyPipeline.json
Como configurar ações downstream para consumir variáveis
  1. Edite um arquivo de entrada para fornecer o comando update-pipeline com o parâmetro --cli-input-json. Na ação downstream, adicione a variável à configuração dessa ação. Uma variável é composta de um namespace e uma chave, separados por um ponto. Por exemplo, para adicionar variáveis para o ID de execução do pipeline e o ID de confirmação de origem, especifique o namespace codepipeline para a variável #{codepipeline.PipelineExecutionId}. Especifique o namespace SourceVariables para a variável #{SourceVariables.CommitId}.

    { "name": "Build", "actions": [ { "outputArtifacts": [ { "name": "BuildArtifacts" } ], "name": "Build", "configuration": { "EnvironmentVariables": "[{\"name\":\"Execution_ID\",\"value\":\"#{codepipeline.PipelineExecutionId}\",\"type\":\"PLAINTEXT\"},{\"name\":\"Commit_ID\",\"value\":\"#{SourceVariables.CommitId}\",\"type\":\"PLAINTEXT\"}]", "ProjectName": "env-var-test" }, "inputArtifacts": [ { "name": "SourceArtifact" } ], "region": "us-west-2", "actionTypeId": { "provider": "CodeBuild", "category": "Build", "version": "1", "owner": "AWS" }, "runOrder": 1 } ] },
  2. Salve o arquivo com um nome como MyPipeline.json.

  3. Em um terminal (Linux, macOS ou Unix) ou prompt de comando (Windows), execute o comando create-pipeline e crie o pipeline.

    Invoque o arquivo que você criou quando executou o comando create-pipeline. Por exemplo: .

    aws codepipeline create-pipeline --cli-input-json file://MyPipeline.json

Visualizar variáveis de saída

Você pode visualizar os detalhes da execução da ação para visualizar as variáveis dessa ação, específicas de cada execução.

Visualizar variáveis (console)

Você pode usar o console para visualizar variáveis de uma ação.

  1. Faça login no AWS Management Console e abra o CodePipeline console em http://console.aws.amazon.com/codesuite/codepipeline/home.

    Os nomes de todos os pipelines associados à sua AWS conta são exibidos.

  2. Em Nome, selecione o nome do pipeline.

  3. Escolha View history (Exibir histórico).

  4. Depois que o pipeline for executado com êxito, você poderá exibir as variáveis produzidas pela ação de origem. Escolha View history (Exibir histórico). Escolha Origem na lista de ações para a execução do pipeline para ver os detalhes da execução da CodeCommit ação. Na tela de detalhes da ação, exiba as variáveis em Output variables (Variáveis de saída).

    Exemplo: variáveis de saída de origem
  5. Depois que o pipeline for executado com êxito, você poderá exibir as variáveis consumidas pela ação de compilação. Escolha View history (Exibir histórico). Na lista de ações para a execução do pipeline, escolha Criar para visualizar os detalhes da execução da CodeBuild ação. Na página de detalhes da ação, exiba as variáveis em Action configuration (Configuração de ação). O namespace gerado automaticamente é exibido.

    Exemplo: variáveis de configuração de ação

    Por padrão, a Action configuration (Configuração de ação) exibe a sintaxe da variável. Você pode escolher Show resolved configuration (Mostrar configuração resolvida) para alternar a lista para exibir os valores que foram produzidos durante a execução da ação

    Exemplo: variáveis de configuração de ação resolvida

Visualizar variáveis (CLI)

Você pode usar o comando list-action-executions para exibir as variáveis de uma ação.

  1. Use o seguinte comando:

    aws codepipeline list-action-executions

    A saída mostra o parâmetro outputVariables conforme mostrado aqui.

    "outputVariables": { "BranchName": "main", "CommitMessage": "Updated files for test", "AuthorDate": "2019-11-08T22:24:34Z", "CommitId": "d99b0083cc10EXAMPLE", "CommitterDate": "2019-11-08T22:24:34Z", "RepositoryName": "variables-repo" },
  2. Use o seguinte comando:

    aws codepipeline get-pipeline --name <pipeline-name>

    Na configuração da CodeBuild ação, você pode visualizar as variáveis:

    { "name": "Build", "actions": [ { "outputArtifacts": [ { "name": "BuildArtifact" } ], "name": "Build", "configuration": { "EnvironmentVariables": "[{\"name\":\"Execution_ID\",\"value\":\"#{codepipeline.PipelineExecutionId}\",\"type\":\"PLAINTEXT\"},{\"name\":\"Commit_ID\",\"value\":\"#{SourceVariables.CommitId}\",\"type\":\"PLAINTEXT\"}]", "ProjectName": "env-var-test" }, "inputArtifacts": [ { "name": "SourceArtifact" } ], "region": "us-west-2", "actionTypeId": { "provider": "CodeBuild", "category": "Build", "version": "1", "owner": "AWS" }, "runOrder": 1 } ] },

Exemplo: Usar variáveis em aprovações manuais

Quando você especifica um namespace para uma ação e essa ação produz variáveis de saída, você pode adicionar uma aprovação manual que exibe variáveis na mensagem de aprovação. Este exemplo mostra como adicionar sintaxe variável a uma mensagem de aprovação manual.

  1. Faça login no AWS Management Console e abra o CodePipeline console em http://console.aws.amazon.com/codesuite/codepipeline/home.

    Os nomes de todos os pipelines associados à sua AWS conta são exibidos. Escolha o pipeline ao qual deseja adicionar a aprovação.

  2. Para editar o pipeline, escolha Edit (Editar). Adicione uma aprovação manual após a ação de origem. Em Action name (Nome da ação), insira o nome da ação de aprovação.

  3. Em Action provider (Provedor de ação), escolha Manual approval (Aprovação manual).

  4. Em URL para revisão, adicione a sintaxe da variável CommitId para sua CodeCommit URL. Certifique-se de usar o namespace atribuído à ação de origem. Por exemplo, a sintaxe da variável para uma CodeCommit ação com o namespace SourceVariables padrão é. #{SourceVariables.CommitId}

    Em Comentários, em CommitMessage, insira a mensagem de confirmação:

    Please approve this change. Commit message: #{SourceVariables.CommitMessage}
  5. Depois que o pipeline for executado com êxito, você poderá exibir os valores das variáveis na mensagem de aprovação.

Exemplo: use uma BranchName variável com variáveis de CodeBuild ambiente

Ao adicionar uma CodeBuild ação ao seu pipeline, você pode usar variáveis de CodeBuild ambiente para referenciar uma variável de BranchName saída de uma ação de origem ascendente. Com uma variável de saída de uma ação em CodePipeline, você pode criar suas próprias variáveis de CodeBuild ambiente para uso em seus comandos de compilação.

Este exemplo mostra como adicionar a sintaxe da variável de saída de uma ação de GitHub origem a uma variável de CodeBuild ambiente. A sintaxe da variável de saída neste exemplo representa a variável de saída da ação de GitHub origem paraBranchName. Depois que a ação for executada com êxito, a variável será resolvida para mostrar o nome da GitHub ramificação.

  1. Faça login no AWS Management Console e abra o CodePipeline console em http://console.aws.amazon.com/codesuite/codepipeline/home.

    Os nomes de todos os pipelines associados à sua AWS conta são exibidos. Escolha o pipeline ao qual deseja adicionar a aprovação.

  2. Para editar o pipeline, escolha Edit (Editar). No estágio que contém sua CodeBuild ação, escolha Editar estágio.

  3. Escolha o ícone para editar sua CodeBuild ação.

  4. Na página Editar ação, em Variáveis de ambiente, insira o seguinte:

    • Em Nome, insira um nome para a variável de ambiente.

    • Em Valor, insira a sintaxe da variável de saída do pipeline, que inclui o namespace atribuído à sua ação de origem. Por exemplo, a sintaxe da variável de saída para uma GitHub ação com o namespace SourceVariables padrão é. #{SourceVariables.BranchName}

    • Em Tipo, escolha Texto sem formatação.

  5. Depois que o pipeline for executado com êxito, você poderá ver como a variável de saída resolvida é o valor na variável de ambiente. Escolha uma das seguintes opções:

    • CodePipeline console: escolha seu funil e, em seguida, escolha Histórico. Escolha a execução mais recente do pipeline.

      • Em Linha do tempo, escolha o seletor de Origem. Essa é a ação de origem que gera variáveis GitHub de saída. Escolha Visualizar detalhes da execução. Em Variáveis de saída, visualize a lista de variáveis de saída geradas por essa ação.

      • Em Linha do tempo, escolha o seletor de Origem. Essa é a ação de construção que especifica as variáveis de CodeBuild ambiente para seu projeto de construção. Escolha Visualizar detalhes da execução. Em Configuração da ação, visualize suas variáveis de CodeBuild ambiente. Escolha Mostrar a configuração resolvida. O valor da variável de ambiente é a variável BranchName de saída resolvida da ação de GitHub origem. Neste exemplo, esse valor resolvido é main.

        Para ter mais informações, consulte Visualizar variáveis (console).

    • CodeBuild console: escolha seu projeto de compilação e escolha o link para sua execução de compilação. Em Variáveis de ambiente, sua variável de saída resolvida é o valor da variável de CodeBuild ambiente. Neste exemplo, a variável de ambiente Name é BranchName e o Value é a variável BranchName de saída resolvida da ação de GitHub origem. Neste exemplo, o valor resolvido é main.