Varifications and website updates #55
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: Docs Website | |
| on: | |
| push: | |
| branches: | |
| - main | |
| paths: | |
| - "docs/website/**" | |
| - ".github/workflows/pages.yml" | |
| pull_request: | |
| paths: | |
| - "docs/website/**" | |
| - ".github/workflows/pages.yml" | |
| workflow_dispatch: | |
| permissions: | |
| contents: read | |
| concurrency: | |
| group: pages | |
| cancel-in-progress: true | |
| jobs: | |
| build: | |
| name: Build Docs Website | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 15 | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v5 | |
| - name: Set up Node.js | |
| uses: actions/setup-node@v5 | |
| with: | |
| node-version: "22" | |
| - name: Validate docs website shell | |
| shell: bash | |
| run: | | |
| for file in docs/website/js/core/*.js docs/website/js/features/*.js docs/website/js/bootstrap/*.js; do | |
| node --check "$file" | |
| done | |
| test -f docs/website/index.html | |
| test -f docs/website/download.html | |
| test -f docs/website/development.html | |
| test -f docs/website/css/core/base.css | |
| test -f docs/website/css/layout/topbar.css | |
| test -f docs/website/css/layout/sidebar.css | |
| test -f docs/website/css/layout/content.css | |
| test -f docs/website/css/layout/responsive.css | |
| test -f docs/website/css/components/workflow.css | |
| test -f docs/website/css/components/modules.css | |
| test -f docs/website/css/components/development.css | |
| test -f docs/website/js/core/site-data.js | |
| test -f docs/website/js/core/helpers.js | |
| test -f docs/website/js/features/sidebar.js | |
| test -f docs/website/js/features/easter-eggs.js | |
| test -f docs/website/js/features/search.js | |
| test -f docs/website/js/features/contact-panel.js | |
| test -f docs/website/js/features/workflow-visual.js | |
| test -f docs/website/js/features/raw-popup.js | |
| test -f docs/website/js/features/development-feed.js | |
| test -f docs/website/js/bootstrap/app.js | |
| test -f docs/website/web_assets/media/favicon.ico | |
| test -f docs/website/web_assets/media/asrfacet-rb-site-preview.png | |
| test -f docs/website/web_assets/installers/asrfacet-rb-installer-linux.sh | |
| test -f docs/website/web_assets/installers/asrfacet-rb-installer-macos.sh | |
| test -f docs/website/web_assets/installers/asrfacet-rb-installer-windows.ps1 | |
| test -f docs/website/web_assets/installers/asrfacet-rb-installer-windows.cmd | |
| test -f docs/website/.nojekyll | |
| - name: Validate website page wiring | |
| shell: bash | |
| run: | | |
| shopt -s nullglob | |
| pages=(docs/website/*.html) | |
| [ ${#pages[@]} -gt 0 ] | |
| for page in "${pages[@]}"; do | |
| grep -q 'topbar-contact-popover" hidden' "${page}" | |
| grep -q 'css/core/base.css?v=' "${page}" | |
| grep -q 'css/layout/topbar.css?v=' "${page}" | |
| grep -q 'css/layout/sidebar.css?v=' "${page}" | |
| grep -q 'css/layout/content.css?v=' "${page}" | |
| grep -q 'css/components/workflow.css?v=' "${page}" | |
| grep -q 'css/components/modules.css?v=' "${page}" | |
| grep -q 'css/components/development.css?v=' "${page}" | |
| grep -q 'css/layout/responsive.css?v=' "${page}" | |
| grep -q 'js/core/site-data.js?v=' "${page}" | |
| grep -q 'js/core/helpers.js?v=' "${page}" | |
| grep -q 'js/features/sidebar.js?v=' "${page}" | |
| grep -q 'js/features/easter-eggs.js?v=' "${page}" | |
| grep -q 'js/features/search.js?v=' "${page}" | |
| grep -q 'js/features/contact-panel.js?v=' "${page}" | |
| grep -q 'js/features/workflow-visual.js?v=' "${page}" | |
| grep -q 'js/features/raw-popup.js?v=' "${page}" | |
| grep -q 'js/features/development-feed.js?v=' "${page}" | |
| grep -q 'js/bootstrap/app.js?v=' "${page}" | |
| done | |
| - name: Validate download center wiring | |
| shell: bash | |
| run: | | |
| grep -q 'data-page="download.html"' docs/website/download.html | |
| grep -q 'id="download-home"' docs/website/download.html | |
| grep -q 'id="download-scripts"' docs/website/download.html | |
| grep -q 'id="download-usage"' docs/website/download.html | |
| grep -q 'id="download-paths"' docs/website/download.html | |
| grep -q 'web_assets/installers/asrfacet-rb-installer-linux.sh' docs/website/download.html | |
| grep -q 'web_assets/installers/asrfacet-rb-installer-macos.sh' docs/website/download.html | |
| grep -q 'web_assets/installers/asrfacet-rb-installer-windows.ps1' docs/website/download.html | |
| grep -q 'web_assets/installers/asrfacet-rb-installer-windows.cmd' docs/website/download.html | |
| grep -q '"download.html": { title: "Download Center"' docs/website/js/core/site-data.js | |
| - name: Upload static site artifact | |
| uses: actions/upload-pages-artifact@v3 | |
| with: | |
| path: docs/website | |
| deploy: | |
| name: Deploy Docs Website | |
| runs-on: ubuntu-latest | |
| needs: build | |
| if: github.event_name != 'pull_request' && github.ref == 'refs/heads/main' | |
| timeout-minutes: 15 | |
| permissions: | |
| contents: read | |
| pages: write | |
| id-token: write | |
| environment: | |
| name: github-pages | |
| url: ${{ steps.deployment.outputs.page_url }} | |
| steps: | |
| - name: Configure Pages | |
| uses: actions/configure-pages@v5 | |
| - name: Deploy to GitHub Pages | |
| id: deployment | |
| uses: actions/deploy-pages@v4 |