Exemplos: acionadores em fluxos de trabalho - Amazon CodeCatalyst

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

Exemplos: acionadores em fluxos de trabalho

Os exemplos a seguir mostram como adicionar diferentes tipos de gatilhos em um arquivo de definição de CodeCatalyst fluxo de trabalho da Amazon.

Para obter mais informações sobre gatilhos, consulte Iniciando um fluxo de trabalho executado automaticamente usando gatilhos.

Exemplo: um simples gatilho de envio de código

O exemplo a seguir mostra um gatilho que inicia a execução de um fluxo de trabalho sempre que o código é enviado para qualquer ramificação no seu repositório de origem.

Quando esse gatilho é ativado, CodeCatalyst inicia a execução de um fluxo de trabalho usando os arquivos na ramificação para a qual você está enviando (ou seja, a ramificação de destino).

Por exemplo, se você enviar um commit paramain, CodeCatalyst iniciará a execução de um fluxo de trabalho usando o arquivo de definição do fluxo de trabalho e outros arquivos de origem ativados. main

Como outro exemplo, se você enviar um commit parafeature-branch-123, CodeCatalyst iniciará a execução de um fluxo de trabalho usando o arquivo de definição do fluxo de trabalho e outros arquivos de origem ativados. feature-branch-123

Triggers: - Type: PUSH
nota

Se você quiser que a execução de um fluxo de trabalho inicie somente quando você enviar paramain, consulteExemplo: um simples gatilho “push to main”.

Exemplo: um simples gatilho “push to main”

O exemplo a seguir mostra um gatilho que inicia a execução de um fluxo de trabalho sempre que o código é enviado para a main ramificação, e somente para a ramificação, em seu main repositório de origem.

Triggers: - Type: PUSH Branches: - main

Exemplo: um simples gatilho de pull request

O exemplo a seguir mostra um gatilho que inicia a execução de um fluxo de trabalho sempre que uma pull request é criada ou revisada no seu repositório de origem.

Quando esse gatilho é ativado, CodeCatalyst inicia a execução de um fluxo de trabalho usando o arquivo de definição do fluxo de trabalho e outros arquivos de origem na ramificação da qual você está extraindo (ou seja, a ramificação de origem).

Por exemplo, se você criar uma pull request com uma ramificação de origem chamada feature-123 e uma ramificação de destino chamadamain, CodeCatalyst iniciará a execução de um fluxo de trabalho usando o arquivo de definição do fluxo de trabalho e outros arquivos de origem ativados. feature-123

Triggers: - Type: PULLREQUEST Events: - OPEN - REVISION

Exemplo: um simples gatilho de agendamento

O exemplo a seguir mostra um gatilho que inicia a execução de um fluxo de trabalho à meia-noite (UTC+0) de segunda a sexta-feira.

Quando esse gatilho é ativado, CodeCatalyst inicia uma única execução de fluxo de trabalho para cada ramificação em seu repositório de origem que contém um arquivo de definição de fluxo de trabalho com esse gatilho.

Por exemplo, se você tiver três ramificações em seu repositório de origem,,, main release-v1feature-123, e cada uma dessas ramificações contiver um arquivo de definição de fluxo de trabalho com o gatilho a seguir, CodeCatalyst iniciará três execuções de fluxo de trabalho: uma usando os arquivos emmain, outra usando os arquivos em release-v1 e outra usando os arquivos emfeature-123.

Triggers: - Type: SCHEDULE Expression: "0 0 ? * MON-FRI *"

Para obter mais exemplos de expressões cron que você pode usar na Expression propriedade, consulteExpression.

Exemplo: um gatilho com um cronograma e ramificações

O exemplo a seguir mostra um gatilho que inicia a execução de um fluxo de trabalho às 18h15 (UTC+0) todos os dias.

Quando esse gatilho é ativado, CodeCatalyst inicia a execução de um fluxo de trabalho usando os arquivos na main ramificação e inicia execuções adicionais para cada ramificação que começa comrelease-.

Por exemplo, se você tiver ramificações chamadasmain, release-v1bugfix-1, e bugfix-2 no seu repositório de origem, CodeCatalyst iniciará duas execuções de fluxo de trabalho: uma usando os arquivos em main e outra usando os arquivos emrelease-v1. Ele não inicia as execuções do fluxo de trabalho para bugfix-1 as bugfix-1 filiais e.

Triggers: - Type: SCHEDULE Expression: "15 18 * * ? *" Branches: - main - release\-.*

Para obter mais exemplos de expressões cron que você pode usar na Expression propriedade, consulteExpression.

Exemplo: um gatilho com um cronograma, um push e ramificações

O exemplo a seguir mostra um gatilho que inicia a execução de um fluxo de trabalho à meia-noite (UTC+0) todos os dias e sempre que o código é enviado para a main ramificação.

Neste exemplo:

  • A execução do fluxo de trabalho começa à meia-noite todos os dias. A execução do fluxo de trabalho usa o arquivo de definição do fluxo de trabalho e outros arquivos de origem na main ramificação.

  • A execução do fluxo de trabalho também é iniciada sempre que você envia uma confirmação para a main ramificação. A execução do fluxo de trabalho usa o arquivo de definição do fluxo de trabalho e outros arquivos de origem na ramificação de destino (main).

Triggers: - Type: SCHEDULE Expression: "0 0 * * ? *" Branches: - main - Type: PUSH Branches: - main

Para obter mais exemplos de expressões cron que você pode usar na Expression propriedade, consulteExpression.

Exemplo: um gatilho com um puxão e galhos

O exemplo a seguir mostra um gatilho que inicia a execução de um fluxo de trabalho sempre que alguém abre ou modifica uma pull request com uma ramificação de destino chamadamain. Embora a ramificação especificada na Triggers configuração sejamain, a execução do fluxo de trabalho usará o arquivo de definição do fluxo de trabalho e outros arquivos de origem na ramificação de origem (que é a ramificação da qual você está extraindo).

Triggers: - Type: PULLREQUEST Branches: - main Events: - OPEN - REVISION

Exemplo: um gatilho com um puxão, galhos e um evento CLOSED ''

O exemplo a seguir mostra um gatilho que inicia a execução de um fluxo de trabalho sempre que uma pull request é fechada em uma ramificação que começa commain.

Neste exemplo:

  • Quando você fecha uma pull request com uma ramificação de destino que começa commain, a execução de um fluxo de trabalho é iniciada automaticamente usando o arquivo de definição do fluxo de trabalho e outros arquivos de origem na ramificação de origem (agora fechada).

  • Se você configurou seu repositório de origem para excluir ramificações automaticamente após a mesclagem de uma pull request, essas ramificações nunca terão a chance de entrar no CLOSED estado. Isso significa que as ramificações mescladas não ativarão o CLOSED gatilho do pull request. A única maneira de ativar o CLOSED gatilho nesse cenário é fechar a pull request sem mesclá-la.

Triggers: - Type: PULLREQUEST Branches: - main.* Events: - CLOSED

Exemplo: um gatilho com um push, ramificações e arquivos

O exemplo a seguir mostra um gatilho que inicia a execução de um fluxo de trabalho sempre que uma alteração é feita no filename.txt arquivo, ou em qualquer arquivo no src diretório, na main ramificação.

Quando esse gatilho é ativado, CodeCatalyst inicia a execução de um fluxo de trabalho usando o arquivo de definição do fluxo de trabalho e outros arquivos de origem na main ramificação.

Triggers: - Type: PUSH Branches: - main FilesChanged: - filename.txt - src\/.*

Exemplo: um gatilho manual

Para configurar um acionador manual, omita a Triggers seção do arquivo de definição do fluxo de trabalho. Sem essa seção, os usuários são forçados a iniciar o fluxo de trabalho manualmente escolhendo o botão Executar no CodeCatalyst console. Para ter mais informações, consulte Iniciando um fluxo de trabalho executado manualmente.

Exemplo: acionadores em uma configuração de vários fluxos de trabalho de CI/CD

Este exemplo descreve como configurar gatilhos quando você deseja usar CodeCatalyst fluxos de trabalho separados da Amazon para integração contínua (CI) e implantação contínua (CD).

Nesse cenário, você configura dois fluxos de trabalho:

  • um fluxo de trabalho de CI — esse fluxo de trabalho cria e testa seu aplicativo quando uma pull request é criada ou revisada.

  • um fluxo de trabalho de CD — esse fluxo de trabalho cria e implanta seu aplicativo quando uma pull request é mesclada.

O arquivo de definição do fluxo de trabalho de CI seria semelhante a este:

Triggers: - Type: PULLREQUEST Branches: - main Events: - OPEN - REVISION Actions: BuildAction: instructions-for-building-the-app TestAction: instructions-for-test-the-app

O Triggers código indica que um fluxo de trabalho deve ser executado automaticamente sempre que um desenvolvedor de software cria uma pull request (ou modifica uma) solicitando a fusão de sua ramificação de recursos com a main ramificação. CodeCatalyst inicia a execução do fluxo de trabalho usando o código-fonte na ramificação de origem (que é a ramificação do recurso).

O arquivo de definição do fluxo de trabalho do CD seria semelhante a este:

Triggers: - Type: PUSH Branches: - main Actions: BuildAction: instructions-for-building-the-app DeployAction: instructions-for-deploying-the-app

O Triggers código indica que o fluxo de trabalho deve ser iniciado automaticamente quando main ocorre uma mesclagem. CodeCatalyst inicia a execução do fluxo de trabalho usando o código-fonte na main ramificação.