feat: Adicionando Github Pages no workflow e README #4
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: Pipeline Testes Automatizados API ServeRest Postman Newman | |
# executa o workflow toda vez que for realizado um push ou pull-request no repositório | |
on: | |
push: | |
branches: [ "main" ] | |
pull_request: | |
branches: [ "main" ] | |
# permite também executar esse workflow manualmente na aba "Actions" do GitHub | |
workflow_dispatch: | |
jobs: | |
postman-newman-api-serve-rest: | |
# agente de execução/runner | |
runs-on: ubuntu-latest | |
permissions: | |
contents: read | |
pages: write | |
id-token: write | |
environment: | |
name: github-pages | |
url: https://andressakarla.github.io/testes-automatizados-api-serve-rest_postman/postman-api-serve-rest-report-htmlextra-newman.html | |
steps: | |
- name: Passo 1 - Obter cópia do código-fonte do repositório | |
uses: actions/checkout@v3 | |
- name: Passo 2 - Verificar versões do Node e Newman | |
run: | | |
node --version | |
newman --version | |
- name: Passo 3 - Instalar newman-reporter-htmlextra | |
run: sudo npm install -g newman-reporter-htmlextra | |
- name: Passo 4 - Executar com Newman testes automatizados de API REST em um ambiente de produção do "ServeRest" da collection e environment do Postman e Gerar report html | |
run: newman run ./api-serve-rest_collection.json -e ./api-serve-rest_prod-environment.json --delay-request 2 --reporters cli, -r htmlextra --reporter-htmlextra-export ./reports/postman-api-serve-rest-report-htmlextra-newman.html | |
- name: Passo 5 - Armazenar report html | |
# expressão condicional para que sempre seja executado independentemente dos resultados dos steps anteriores | |
if: ${{ always() }} | |
uses: actions/upload-artifact@v4 | |
with: | |
name: postman-api-serve-rest-report-html-newman | |
path: ./reports | |
# armazena o report html por 30 dias | |
retention-days: 30 | |
- name: Passo 6 - Configurar pages | |
if: ${{ always() }} | |
uses: actions/configure-pages@v2 | |
- name: Passo 7 - Baixar report html armazenado no "Passo 5 - Armazenar report html" | |
if: ${{ always() }} | |
uses: actions/download-artifact@v4 | |
with: | |
name: postman-api-serve-rest-report-html-newman | |
path: ./reports | |
- name: Passo 8 - Armazenar pages | |
if: ${{ always() }} | |
uses: actions/upload-pages-artifact@v1 | |
with: | |
path: ./reports | |
retention-days: 30 | |
- name: Passo 9 - Deploy/Publicar no Github Pages na "url" configurada em "postman-newman-api-serve-rest > environment" | |
if: ${{ always() }} | |
id: deployment | |
uses: actions/deploy-pages@v1 |