Pular para o conteúdo principal

GitHub Actions: Workflow Dispatch e Trigger Manual

 

GitHub Actions: Workflow Dispatch e Trigger Manual

O workflow_dispatch é uma funcionalidade do GitHub Actions que permite disparar manualmente um workflow, ou seja, executar um pipeline de ações de forma controlada, sem a necessidade de um evento específico, como um push ou pull request. Esse recurso é muito útil quando você quer ter o controle sobre quando um workflow deve ser executado, como em implantações de produção, execução de tarefas de manutenção ou validações específicas em momentos precisos.

Neste post, vamos explorar como funciona o trigger manual workflow_dispatch, como configurar e disparar workflows manualmente e apresentar exemplos de como utilizá-lo no seu repositório GitHub.



Como Funciona o Workflow Dispatch

O workflow_dispatch é utilizado para permitir que você execute workflows manualmente através da interface do GitHub, com a possibilidade de fornecer parâmetros personalizados para o workflow no momento da execução. Ele é adicionado ao arquivo de configuração do workflow, no formato YAML, na seção on.

Ao configurar o workflow_dispatch, você pode criar um botão na interface do GitHub para disparar o workflow sempre que necessário, e também pode incluir entradas personalizadas (inputs) que permitem fornecer parâmetros específicos ao workflow durante a execução.

Veja abaixo um exemplo básico de como configurar e usar o workflow_dispatch.


Exemplo de Código: Workflow Dispatch

Abaixo está um exemplo de como configurar um workflow no GitHub Actions que pode ser disparado manualmente usando workflow_dispatch.


name: Manual Trigger Example

on:
  workflow_dispatch:
    inputs:
      deploy_environment:
        description: 'Escolha o ambiente de deploy'
        required: true
        default: 'staging'

jobs:
  deploy:
    runs-on: ubuntu-latest
    steps:
      - name: Check out code
        uses: actions/checkout@v2

      - name: Deploy to environment
        run: |
          echo "Deploying to ${{ github.event.inputs.deploy_environment }} environment"

Explicando o Workflow

  1. name: Define o nome do workflow (neste caso, "Manual Trigger Example").
  2. on: Define o evento que dispara o workflow. Aqui, ele é acionado quando um usuário clica no botão para disparar o workflow manualmente, utilizando o workflow_dispatch.
  3. inputs: Definimos um parâmetro de entrada chamado deploy_environment, que o usuário pode fornecer ao disparar o workflow. Esse parâmetro pode ser utilizado no workflow para controlar, por exemplo, o ambiente de deploy (como 'staging' ou 'production').
  4. jobs: Define o trabalho a ser realizado. No exemplo, o job é chamado de deploy.
  5. steps: Define as etapas dentro do job. No exemplo, temos:
    • Checar o código do repositório com actions/checkout@v2.
    • Exibir a mensagem de deploy para o ambiente escolhido pelo usuário.

Como Acionar o Workflow

Depois de configurar o arquivo de workflow no repositório, você pode disparar o workflow manualmente diretamente pela interface do GitHub. Siga os seguintes passos:

  1. Vá para a página do seu repositório no GitHub.
  2. Clique na aba Actions no topo da página.
  3. Selecione o workflow que você configurou (por exemplo, "Manual Trigger Example").
  4. Clique no botão Run workflow.
  5. Escolha o valor do parâmetro deploy_environment (por exemplo, 'staging' ou 'production').
  6. Clique em Run workflow novamente para disparar o workflow manualmente.

Saída Esperada

Após disparar o workflow, você verá a saída do workflow na interface do GitHub. Abaixo está um exemplo do que você verá no log de execução:


Run actions/checkout@v2
  ...
  Run Deploy to environment
  Deploying to staging environment

O workflow executará a etapa de deploy e imprimirá a mensagem de deploy para o ambiente escolhido (neste caso, "staging").


Benefícios de Usar o Trigger Manual

  • Controle total sobre a execução: O workflow_dispatch permite que você decida exatamente quando o workflow deve ser executado, tornando-o ideal para tarefas manuais como deploys ou manutenções.
  • Parâmetros personalizados: Com inputs personalizados, você pode permitir que o usuário forneça parâmetros específicos para o workflow, o que torna o processo mais flexível.
  • Facilidade de uso: O GitHub Actions facilita a execução manual de workflows com uma interface simples e intuitiva.

Agora que você aprendeu como configurar e usar o workflow_dispatch, experimente adicionar workflows manuais ao seu repositório GitHub para automatizar tarefas de forma controlada e personalizada. Se tiver dúvidas ou quiser compartilhar suas experiências, deixe nos comentários.

Comentários

Postagens mais visitadas deste blog

Funções de Ativação em Redes Neurais: Tipos, Contextos e Aplicações

  Funções de Ativação em Redes Neurais: Tipos, Contextos e Aplicações As funções de ativação são componentes essenciais das redes neurais, permitindo que os modelos aprendam e representem relações complexas nos dados. Neste post, exploraremos os principais tipos de funções de ativação, suas características e como escolher a melhor para diferentes cenários. O Que São Funções de Ativação? As funções de ativação transformam as saídas lineares dos neurônios em representações não lineares, permitindo que as redes aprendam padrões complexos. Sem essas funções, as redes seriam equivalentes a simples regressões lineares. Principais Tipos de Funções de Ativação 1. Sigmoid A função sigmoid transforma valores em uma faixa entre 0 e 1: σ(x) = 1 / (1 + e^(-x)) Características: Boa para modelar probabilidades. Propensa ao problema de vanishing gradient em redes profundas. Aplicações: Classificação binária. 2. Tanh (Tangente Hiperbólica) A função tanh transfor...

Temperatura na Inteligência Artificial Generativa: O Que é e Como Afeta os Resultados

Temperatura na Inteligência Artificial Generativa: O Que é e Como Afeta os Resultados No contexto da Inteligência Artificial generativa, especialmente em modelos de linguagem como o GPT, a "temperatura" é um parâmetro que controla a aleatoriedade nas previsões do modelo. Esse controle influencia a qualidade e a criatividade das respostas geradas, sendo uma ferramenta essencial para personalizar os resultados conforme a necessidade do usuário. O Que é Temperatura? Em modelos de IA generativa, a temperatura é um parâmetro utilizado durante o processo de amostragem de probabilidades para gerar tokens (palavras ou caracteres). O modelo gera uma distribuição de probabilidade para o próximo token com base no contexto atual. A temperatura ajusta a "curvatura" dessa distribuição, controlando a diversidade das respostas geradas. Em termos simples, a temperatura pode ser vista como uma forma de controlar o "nível de criatividade" de uma resposta. Quanto mais ba...

Introdução aos Vector Databases: A Base de Dados para Embeddings em IA Generativa

Os bancos de dados vetoriais (Vector Databases) emergiram como uma tecnologia essencial no processamento de informações em alta dimensão, especialmente no contexto de embeddings. Neste artigo, explicamos o conceito de bancos de dados vetoriais, como eles funcionam e sua importância para aplicações de IA generativa. O que são Bancos de Dados Vetoriais? Bancos de dados vetoriais são sistemas projetados para armazenar, indexar e buscar dados representados como vetores em espaços de alta dimensão. Em vez de dados tradicionais estruturados (como tabelas relacionais), esses bancos armazenam representações matemáticas de objetos, como embeddings gerados por modelos de machine learning. Um embedding é uma representação numérica de um objeto (como palavras, imagens ou usuários) em um espaço vetorial, onde a proximidade entre vetores reflete a similaridade semântica ou estrutural dos objetos originais. Como Funcionam os Bancos de Dados Vetoriais? Esses bancos de dados empregam algoritmos...