Skip to content

Conversation

Copy link
Contributor

Copilot AI commented Nov 26, 2025

  • Understand the issue: deploy-github-pages job runs on all events, causing deployment errors from branches other than main
  • Review current workflow file .github/workflows/main.yml
  • Add if condition to deploy-github-pages job to only run when github.ref == 'refs/heads/main'
  • Verify the YAML syntax is valid
  • Run code review (passed)
  • Run CodeQL security check (no alerts)
Original prompt

Objetivo

  • Atualizar o workflow .github/workflows/main.yml para que o job deploy-github-pages só seja executado quando for um push para o branch main, ou quando a execução manual (workflow_dispatch) especificar ref vazio ou igual a "main". Isso evita tentativas de deploy vindas de PRs/branches como dev que são bloqueadas pelas regras de ambiente.

Contexto

  • Atualmente o workflow roda em push e pull_request e o job deploy-github-pages é executado em PRs, causando erro de proteção do ambiente: "Branch 'dev' is not allowed to deploy to github-pages". Veja captura de tela anexada: image1

Requisitos da mudança

  • Alterar somente o arquivo .github/workflows/main.yml.
  • Adicionar uma condição if no job deploy-github-pages para que o job execute apenas quando:
    • o evento for push e github.ref == 'refs/heads/main', OU
    • o evento for workflow_dispatch e github.event.inputs.ref for vazio ou igual a main.
  • Preservar needs: run-job-newman, permissões e configuração do ambiente.
  • Não alterar nenhum outro arquivo do repositório.

Condição sugerida (exemplo a ser aplicada no job deploy-github-pages):
if: >-
(github.event_name == 'push' && github.ref == 'refs/heads/main') ||
(github.event_name == 'workflow_dispatch' && (github.event.inputs.ref == '' || github.event.inputs.ref == 'main'))

Detalhes de implementação

  • Criar um branch novo a partir de main, por exemplo chore/deploy-only-main.
  • Aplicar a alteração no arquivo .github/workflows/main.yml (substituir o job deploy-github-pages adicionando a condição if conforme acima).
  • Comitar com a mensagem: "chore: deploy-github-pages only on main or manual dispatch for main".
  • Abrir um Pull Request contra main com título: "Deploy to GitHub Pages only from main branch".
  • No corpo do PR incluir uma descrição curta do problema (deploy em PRs causa erro de proteção do ambiente) e explicar que a mudança faz o deploy apenas em push para main ou dispatch manual para main. Referenciar que foi testado localmente/visualmente e que a execução do job de deploy será pulada em PRs.

Teste/Validação esperada

  • Em uma execução de PR originada de dev, o job deploy-github-pages deve ser marcado como skipped (ou não executado) devido à condição if.
  • Em um push para main, o job deploy-github-pages deve rodar normalmente após run-job-newman.

Notas

  • Incluir a captura de tela no corpo do PR se possível (ou referenciar a imagem anexada aqui).
  • Não tocar em outras configurações de ambiente ou regras do repositório.

Imagens relevantes

  • image1

Obrigado — por favor crie o branch, commit e PR com essa alteração.

This pull request was created as a result of the following prompt from Copilot chat.

Objetivo

  • Atualizar o workflow .github/workflows/main.yml para que o job deploy-github-pages só seja executado quando for um push para o branch main, ou quando a execução manual (workflow_dispatch) especificar ref vazio ou igual a "main". Isso evita tentativas de deploy vindas de PRs/branches como dev que são bloqueadas pelas regras de ambiente.

Contexto

  • Atualmente o workflow roda em push e pull_request e o job deploy-github-pages é executado em PRs, causando erro de proteção do ambiente: "Branch 'dev' is not allowed to deploy to github-pages". Veja captura de tela anexada: image1

Requisitos da mudança

  • Alterar somente o arquivo .github/workflows/main.yml.
  • Adicionar uma condição if no job deploy-github-pages para que o job execute apenas quando:
    • o evento for push e github.ref == 'refs/heads/main', OU
    • o evento for workflow_dispatch e github.event.inputs.ref for vazio ou igual a main.
  • Preservar needs: run-job-newman, permissões e configuração do ambiente.
  • Não alterar nenhum outro arquivo do repositório.

Condição sugerida (exemplo a ser aplicada no job deploy-github-pages):
if: >-
(github.event_name == 'push' && github.ref == 'refs/heads/main') ||
(github.event_name == 'workflow_dispatch' && (github.event.inputs.ref == '' || github.event.inputs.ref == 'main'))

Detalhes de implementação

  • Criar um branch novo a partir de main, por exemplo chore/deploy-only-main.
  • Aplicar a alteração no arquivo .github/workflows/main.yml (substituir o job deploy-github-pages adicionando a condição if conforme acima).
  • Comitar com a mensagem: "chore: deploy-github-pages only on main or manual dispatch for main".
  • Abrir um Pull Request contra main com título: "Deploy to GitHub Pages only from main branch".
  • No corpo do PR incluir uma descrição curta do problema (deploy em PRs causa erro de proteção do ambiente) e explicar que a mudança faz o deploy apenas em push para main ou dispatch manual para main. Referenciar que foi testado localmente/visualmente e que a execução do job de deploy será pulada em PRs.

Teste/Validação esperada

  • Em uma execução de PR originada de dev, o job deploy-github-pages deve ser marcado como skipped (ou não executado) devido à condição if.
  • Em um push para main, o job deploy-github-pages deve rodar normalmente após run-job-newman.

Notas

  • Incluir a captura de tela no corpo do PR se possível (ou referenciar a imagem anexada aqui).
  • Não tocar em outras configurações de ambiente ou regras do repositório.

Imagens relevantes

  • image1

Obrigado — por favor crie o branch, commit e PR com essa alteração.


✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.

@sthefanyricardo sthefanyricardo marked this pull request as ready for review November 26, 2025 04:49
@sthefanyricardo sthefanyricardo merged commit d12a374 into main Nov 26, 2025
1 of 3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants