Repository navigation
💄 style(pages): Alinhando a página ao git-ia, com guia e sli… #5
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Publicar no GitHub Pages | |
| # ============================================================ | |
| # Este repositório é o de PUBLICAÇÃO. Ele não compila nada. | |
| # | |
| # Os artefatos (guia.pdf, apresentacao.pdf e os materiais) chegam aqui | |
| # por push do workflow do repositório de código: | |
| # https://github.com/ronidomingues/github-training | |
| # | |
| # Este workflow apenas monta o site e o publica. | |
| # | |
| # PRÉ-REQUISITO neste repositório: | |
| # Settings > Pages > Source = "GitHub Actions" | |
| # ============================================================ | |
| on: | |
| push: | |
| branches: [ main ] | |
| paths: | |
| # Só republica quando o conteúdo do site muda. Alterar o README | |
| # ou a documentação interna não precisa disparar um deploy. | |
| - 'index.html' | |
| - 'docs/**.pdf' | |
| - 'materials/**' | |
| - 'assets/**' | |
| - '.github/workflows/pages.yml' | |
| workflow_dispatch: | |
| permissions: | |
| contents: read | |
| pages: write | |
| id-token: write | |
| concurrency: | |
| group: pages | |
| cancel-in-progress: false | |
| jobs: | |
| publicar: | |
| runs-on: ubuntu-latest | |
| environment: | |
| name: github-pages | |
| url: ${{ steps.deployment.outputs.page_url }} | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v7 | |
| # ------------------------------------------------------------ | |
| # Falha cedo e com mensagem clara se um artefato não chegou, | |
| # em vez de publicar um site com link quebrado. | |
| - name: Conferir se os artefatos chegaram | |
| run: | | |
| set -euo pipefail | |
| faltou=0 | |
| for arquivo in index.html docs/guia.pdf docs/apresentacao.pdf materials/main.py materials/jogo-da-memoria.zip materials/modelo-actions.zip; do | |
| if [ ! -f "$arquivo" ]; then | |
| echo "::error::$arquivo não existe — o repositório de código não enviou o artefato" | |
| faltou=1 | |
| else | |
| printf '✓ %-28s %s bytes\n' "$arquivo" "$(stat -c%s "$arquivo")" | |
| fi | |
| done | |
| [ "$faltou" -eq 0 ] | |
| # ------------------------------------------------------------ | |
| # Publica só o que é do site. README, LICENSE e a documentação | |
| # interna ficam de fora — são para quem visita o repositório. | |
| - name: Montar o site | |
| run: | | |
| set -euo pipefail | |
| mkdir -p _site/docs _site/materials _site/assets | |
| cp index.html _site/ | |
| cp docs/*.pdf _site/docs/ | |
| cp materials/* _site/materials/ | |
| cp assets/card.png _site/assets/ | |
| echo "Conteúdo publicado:" | |
| find _site -type f | sed 's/^/ /' | |
| - name: Configurar o Pages | |
| uses: actions/configure-pages@v6 | |
| - name: Enviar o artefato | |
| uses: actions/upload-pages-artifact@v5 | |
| with: | |
| path: _site | |
| - name: Publicar | |
| id: deployment | |
| uses: actions/deploy-pages@v5 |