Introdução ao GitHub Actions
Entenda os conceitos fundamentais do GitHub Actions, incluindo fluxos de trabalho, eventos, tarefas e etapas.
Introdução ao GitHub Actions é uma aula grátis de Git & GitHub Professional Workflow no CoddyKit. Esta é a aula 1 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Git & GitHub Professional Workflow, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Git & GitHub Professional Workflow inclui 4 aulas no total.
Introdução ao GitHub Actions
Boas-vindas ao GitHub Actions! Esse recurso poderoso do GitHub permite automatizar tarefas diretamente no seu repositório.
Pense nele como seu assistente robótico pessoal para código. Ele pode compilar seus projetos, executar testes ou até mesmo publicar seu site automaticamente sempre que você fizer alterações.
Nesta lição, exploraremos os conceitos básicos: fluxos de trabalho, eventos, tarefas e etapas.
Fluxos de trabalho: seu plano de automação
No centro do GitHub Actions está o fluxo de trabalho. Um fluxo de trabalho é um procedimento automatizado que executa uma ou mais tarefas.
- Os fluxos de trabalho são definidos em arquivos YAML.
- Esses arquivos ficam no diretório
.github/workflowsdo seu repositório. - Cada arquivo de fluxo de trabalho representa um processo de automação separado.
Quando determinados eventos ocorrem, como o envio de código, seus fluxos de trabalho entram em ação!
Anatomia de um arquivo de fluxo de trabalho
Os fluxos de trabalho do GitHub Actions são escritos em YAML, um padrão de serialização de dados fácil de ler para as pessoas. Esta é uma estrutura básica:
name: My First Workflow
on: [push]
jobs:
my_first_job:
runs-on: ubuntu-latest
steps:
- name: Greet Me
run: echo "Hello CoddyKit!"Eventos: gatilhos para automação
Eventos são atividades específicas que acionam a execução do seu fluxo de trabalho. Eles informam ao GitHub Actions quando iniciar o processo de automação.
Entre os eventos comuns estão:
push: quando o código é enviado para o repositório.pull_request: quando uma solicitação de alteração é aberta, atualizada ou fechada.schedule: para executar em horários específicos, como uma tarefa cron.
Você pode especificar um ou mais eventos no arquivo do fluxo de trabalho usando a palavra-chave on:.
name: On Push Example
on: [push, pull_request] # This workflow runs on push or pull request events
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Run a simple command
run: echo "Code was pushed or PR updated!"Tarefas: atividades organizadas
Uma tarefa é um conjunto de etapas executadas no mesmo executor. Os fluxos de trabalho são compostos por uma ou mais tarefas, que podem ser executadas em paralelo ou em sequência.
- Cada tarefa é executada em uma nova instância do ambiente virtual especificado por
runs-on. - Valores comuns de
runs-onincluemubuntu-latest,windows-latestemacos-latest.
As tarefas definem o que precisa ser feito, como compilar um aplicativo ou executar testes.
Etapas: instruções individuais
Dentro de uma tarefa, as etapas são atividades individuais executadas pelo sistema. Uma etapa pode ser:
- Um script de linha de comando, usando
run. - Uma ação, usando
uses— um trecho de código reutilizável.
As etapas são executadas na ordem em que são definidas. Se uma etapa falhar, por padrão, a tarefa falhará e as etapas seguintes serão ignoradas.
name: Steps Demo
on: [push]
jobs:
my_job:
runs-on: ubuntu-latest
steps:
- name: Step 1: Say Hello
run: echo "Hello from Step 1!"
- name: Step 2: List files
run: ls -la
- name: Step 3: Echo another message
run: echo "Step 3 completed."Ações: blocos de código reutilizáveis
As ações são a unidade mais granular da automação. Elas são trechos de código reutilizáveis que realizam uma tarefa específica.
Em vez de escrever scripts complexos para tarefas comuns, você pode usar ações existentes do GitHub Marketplace ou criar as suas próprias.
- Use a palavra-chave
uses:para fazer referência a uma ação. - As ações podem ser do GitHub, como
actions/checkout, de uma imagem do Docker ou de um arquivo JavaScript.
Isso economiza tempo e promove a consistência!
name: Using Actions
on: [push]
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout repository code
uses: actions/checkout@v4 # This action checks out your repo
- name: Setup Node.js environment
uses: actions/setup-node@v4
with:
node-version: '20'
- name: Install dependencies
run: npm installCriando um fluxo de trabalho completo
Vamos reunir tudo o que aprendemos em um único exemplo de fluxo de trabalho executável. Esse fluxo de trabalho simplesmente fará o checkout do seu código e exibirá uma saudação.
Este arquivo YAML seria salvo como .github/workflows/greeting.yml no seu repositório.
name: Simple Greeting Workflow
on: [push] # Triggers on any push to the repository
jobs:
greet_job:
runs-on: ubuntu-latest # Runs on a fresh Ubuntu virtual machine
steps:
- name: Checkout the repository
uses: actions/checkout@v4 # Action to get your code
- name: Say hello
run: echo "Hello, GitHub Actions User!" # A simple command-line step
- name: Show current directory
run: pwd # Another command to show where we areComo um fluxo de trabalho é executado
Quando ocorre um evento, como um push, o GitHub Actions:
- Lê o arquivo YAML de fluxo de trabalho relevante em
.github/workflows/. - Inicializa uma máquina virtual, chamada de executor, para cada tarefa.
- Executa sequencialmente cada etapa dentro da tarefa.
- Informa o status, sucesso ou falha, de cada etapa e da tarefa como um todo.
Você pode acompanhar esse processo na aba "Actions" do seu repositório do GitHub.
Verificação rápida: componentes do fluxo de trabalho
Quais das opções a seguir são componentes essenciais encontrados em um arquivo de fluxo de trabalho do GitHub Actions?
Recapitulação: introdução ao GitHub Actions
Parabéns! Você aprendeu os conceitos fundamentais do GitHub Actions:
- Fluxos de trabalho: seus planos de automação em arquivos YAML.
- Eventos: gatilhos que iniciam seus fluxos de trabalho.
- Tarefas: conjuntos de etapas executados em um executor.
- Etapas: comandos individuais ou ações reutilizáveis.
- Ações: unidades reutilizáveis de trabalho para tarefas comuns.
Em seguida, vamos nos aprofundar na criação de fluxos de trabalho de CI/CD mais práticos!
Perguntas Frequentes
A aula “Introdução ao GitHub Actions” é grátis?
Sim — o texto completo de “Introdução ao GitHub Actions” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Git & GitHub Professional Workflow, atualize para CoddyKit PRO. O curso de Git & GitHub Professional Workflow inclui 4 aulas no total.
O que vou aprender em “Introdução ao GitHub Actions”?
Entenda os conceitos fundamentais do GitHub Actions, incluindo fluxos de trabalho, eventos, tarefas e etapas. Você pratica Git & GitHub Professional Workflow com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar Git & GitHub Professional Workflow?
Nenhuma experiência prévia é necessária. Git & GitHub Professional Workflow no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 1 de 4.
Quanto tempo leva a aula “Introdução ao GitHub Actions”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de Git & GitHub Professional Workflow?
Sim. Cada aula de Git & GitHub Professional Workflow inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- Introdução ao GitHub Actions
- Criando fluxos de trabalho de CI/CD
- Actions personalizadas e Marketplace
- Segredos e Variáveis de Ambiente nas Actions