name: deploy:docs:lib on: push: branches: - main jobs: # Build job build: # Specify runner + build & upload the static files as an artifact runs-on: ubuntu-latest steps: - uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v4.1.7 - uses: actions/setup-node@2028fbc5c25fe9cf00d9f06a71cc4710d4507903 # v4.0.3 with: node-version-file: '.tool-versions' - name: Install Dependencies & Build Library run: | npm install npm run build working-directory: lib/ - name: Build static files id: build run: npm run docs:generate working-directory: lib/ - name: Generate coverage id: coverage run: npm run test:unit working-directory: lib/ - name: Create coverage badges id: coverage-badge uses: jaywcjlove/coverage-badges-cli@main with: style: flat source: lib/coverage/coverage-summary.json output: lib/docs/test-coverage.svg jsonPath: total.lines.pct - name: Upload static files as artifact id: deployment uses: actions/upload-pages-artifact@v4.0.0 with: path: lib/docs/ # Deploy job deploy: # Add a dependency to the build job needs: build # Grant GITHUB_TOKEN the permissions required to make a Pages deployment permissions: pages: write # to deploy to Pages id-token: write # to verify the deployment originates from an appropriate source # Deploy to the github-pages environment environment: name: github-pages url: ${{ steps.deployment.outputs.page_url }} # Specify runner + deployment step runs-on: ubuntu-latest steps: - name: Deploy to GitHub Pages id: deployment uses: actions/deploy-pages@v4.0.5