Docs Testing #6089
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 Testing | |
| on: | |
| pull_request: | |
| paths: | |
| - "docs/**" | |
| - "superset/db_engine_specs/**" | |
| - ".github/workflows/superset-docs-verify.yml" | |
| types: [synchronize, opened, reopened, ready_for_review] | |
| workflow_run: | |
| workflows: ["Python-Integration"] | |
| types: [completed] | |
| # cancel previous workflow jobs for PRs | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.event.workflow_run.head_sha || github.run_id }} | |
| cancel-in-progress: true | |
| jobs: | |
| linkinator: | |
| # See docs here: https://github.com/marketplace/actions/linkinator | |
| # Only run on pull_request, not workflow_run | |
| if: github.event_name == 'pull_request' | |
| name: Link Checking | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| # Do not bump this linkinator-action version without opening | |
| # an ASF Infra ticket to allow the new version first! | |
| - uses: JustinBeckwith/linkinator-action@f62ba0c110a76effb2ee6022cc6ce4ab161085e3 # v2.4 | |
| continue-on-error: true # This will make the job advisory (non-blocking, no red X) | |
| with: | |
| paths: "**/*.md, **/*.mdx" | |
| linksToSkip: >- | |
| ^https://github.com/apache/(superset|incubator-superset)/(pull|issues)/\d+, | |
| ^https://github.com/apache/(superset|incubator-superset)/commit/[a-f0-9]+, | |
| superset-frontend/.*CHANGELOG\.md, | |
| http://localhost:8088/, | |
| http://127.0.0.1:3000/, | |
| http://localhost:9001/, | |
| https://charts.bitnami.com/bitnami, | |
| https://www.li.me/, | |
| https://www.fanatics.com/, | |
| https://tails.com/gb/, | |
| https://www.techaudit.info/, | |
| https://avetilearning.com/, | |
| https://www.udemy.com/, | |
| https://trustmedis.com/, | |
| http://theiconic.com.au/, | |
| https://dev.mysql.com/doc/refman/5.7/en/innodb-limits.html, | |
| ^https://img\.shields\.io/.*, | |
| https://vkusvill.ru/, | |
| https://www.linkedin.com/in/mark-thomas-b16751158/, | |
| https://theiconic.com.au/, | |
| https://wattbewerb.de/, | |
| https://timbr.ai/, | |
| https://opensource.org/license/apache-2-0, | |
| https://www.plaidcloud.com/ | |
| build-on-pr: | |
| # Build docs when PR changes docs/** (uses committed databases.json) | |
| if: github.event_name == 'pull_request' | |
| name: Build (PR trigger) | |
| runs-on: ubuntu-24.04 | |
| defaults: | |
| run: | |
| working-directory: docs | |
| steps: | |
| - name: "Checkout ${{ github.ref }} ( ${{ github.sha }} )" | |
| uses: actions/checkout@v6 | |
| with: | |
| persist-credentials: false | |
| submodules: recursive | |
| - name: Set up Node.js | |
| uses: actions/setup-node@v6 | |
| with: | |
| node-version-file: './docs/.nvmrc' | |
| - name: yarn install | |
| run: | | |
| yarn install --check-cache | |
| - name: yarn typecheck | |
| run: | | |
| yarn typecheck | |
| - name: yarn build | |
| run: | | |
| yarn build | |
| build-after-tests: | |
| # Build docs after integration tests complete (uses fresh diagnostics) | |
| # Only runs if integration tests succeeded | |
| if: > | |
| github.event_name == 'workflow_run' && | |
| github.event.workflow_run.conclusion == 'success' | |
| name: Build (after integration tests) | |
| runs-on: ubuntu-24.04 | |
| defaults: | |
| run: | |
| working-directory: docs | |
| steps: | |
| - name: "Checkout PR head: ${{ github.event.workflow_run.head_sha }}" | |
| uses: actions/checkout@v6 | |
| with: | |
| ref: ${{ github.event.workflow_run.head_sha }} | |
| persist-credentials: false | |
| submodules: recursive | |
| - name: Set up Node.js | |
| uses: actions/setup-node@v6 | |
| with: | |
| node-version-file: './docs/.nvmrc' | |
| - name: yarn install | |
| run: | | |
| yarn install --check-cache | |
| - name: Download database diagnostics from integration tests | |
| uses: dawidd6/action-download-artifact@v15 | |
| with: | |
| workflow: superset-python-integrationtest.yml | |
| run_id: ${{ github.event.workflow_run.id }} | |
| name: database-diagnostics | |
| path: docs/src/data/ | |
| - name: Use fresh diagnostics | |
| run: | | |
| if [ -f "src/data/databases-diagnostics.json" ]; then | |
| echo "Using fresh diagnostics from integration tests" | |
| mv src/data/databases-diagnostics.json src/data/databases.json | |
| else | |
| echo "Warning: No diagnostics artifact found, using committed data" | |
| fi | |
| - name: yarn typecheck | |
| run: | | |
| yarn typecheck | |
| - name: yarn build | |
| run: | | |
| yarn build |