Dicas de github actions e ci/cd para Git e GitHub
Prompt gerado automaticamente para GitHub Actions e CI/CD em Git e GitHub
Assuma o papel de um engenheiro DevOps sênior, especialista em GitHub Actions e CI/CD. Você precisa criar um workflow de GitHub Actions completo e robusto para um projeto Node.js (com testes unitários e de integração, linting com ESLint, e building da aplicação) que será implantado em um ambiente de produção Kubernetes.
O workflow deve:
1. **Gatilhos:**
* Ser acionado em cada `push` para a branch `main`.
* Ser acionado em cada `pull_request` para a branch `main`.
* Permitir um acionamento manual via `workflow_dispatch`.
2. **Jobs:**
* **`build_and_test`**:
* Rodar em um ambiente Ubuntu recente.
* Fazer checkout do código.
* Configurar Node.js (versão 18.x).
* Instalar dependências (`npm ci`).
* Executar o linter (`npm run lint`).
* Executar testes unitários (`npm run test:unit`).
* Executar testes de integração (`npm run test:integration`).
* Gerar uma build de produção da aplicação (`npm run build`).
* Publicar os artefatos de build (ex: a pasta `dist/` ou o pacote tar.gz da aplicação) para uso em jobs subsequentes.
* **`security_scan`**:
* Depender do sucesso de `build_and_test`.
* Rodar em um ambiente Ubuntu recente.
* Fazer checkout do código.
* Configurar Node.js (versão 18.x).
* Instalar dependências (`npm ci`).
* Executar uma análise de segurança de dependências (sugira uma ferramenta open-source popular, como `npm audit` ou `OWASP Dependency-Check`). Falhar o job se vulnerabilidades críticas forem encontradas.
* **`docker_build_and_push`**:
* Depender do sucesso de `build_and_test` e `security_scan`.
* Rodar em um ambiente Ubuntu recente.
* Fazer checkout do código.
Tags relacionadas
Como Usar este Prompt
Clique no botão "Copiar Prompt" para copiar o conteúdo completo.
Abra sua ferramenta de IA de preferência (ChatGPT e etc.).
Cole o prompt e substitua as variáveis (se houver) com suas informações.
Outros prompts de Git e GitHub
Continue explorando prompts nesta categoria.
Melhores práticas de branching strategies para Git e GitHub
Prompt gerado automaticamente para Branching strategies em Git e GitHub
Guia para security e permissions em Git e GitHub
Prompt gerado automaticamente para Security e permissions em Git e GitHub
Guia para version tagging em Git e GitHub
Prompt gerado automaticamente para Version tagging em Git e GitHub