name: Build and Deploy Documentation on: push: branches: [main] paths: - 'docs/**' - 'docs_check.py' - 'CHANGELOG.md' - 'RELEASE.md' pull_request: branches: [main] paths: - 'docs/**' - 'docs_check.py' workflow_dispatch: permissions: contents: read pages: write id-token: write concurrency: group: "pages" cancel-in-progress: false jobs: validate: name: Validate Documentation runs-on: ubuntu-latest steps: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7 - uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7 with: python-version: '3.11' - uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7 with: node-version: '20' - run: python docs_check.py deploy: name: Build and Deploy to GitHub Pages if: github.event_name != 'pull_request' runs-on: ubuntu-latest needs: validate steps: - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7 - uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7 with: node-version: '20' - name: Export static site run: | cd docs npx mintlify export --output ../export.zip cd .. unzip -q export.zip -d site - uses: actions/configure-pages@45bfe0192ca1faeb007ade9deae92b16b8254a0d # v6 - uses: actions/upload-pages-artifact@fc324d3547104276b827a68afc52ff2a11cc49c9 # v5 with: path: ./site - name: Deploy to GitHub Pages id: deployment uses: actions/deploy-pages@cd2ce8fcbc39b97be8ca5fce6e763baed58fa128 # v5