Add MySQL and Postgres port precedence tests; refactor environment variable checks #638
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: Documentation CI/CD | |
| on: | |
| workflow_dispatch: | |
| pull_request: | |
| push: | |
| branches: | |
| - main | |
| - major-release | |
| tags: | |
| - 'v*' | |
| permissions: read-all | |
| env: | |
| CACHE_GLOBS: | | |
| **/pyproject.toml | |
| **/setup.py | |
| **/uv.lock | |
| ENDPOINT_WHITELIST: >- | |
| pypi.org:443 | |
| github.com:443 | |
| releases.astral.sh | |
| files.pythonhosted.org:443 | |
| *.github.com:443 | |
| *.githubusercontent.com:443 | |
| jobs: | |
| build: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: step-security/harden-runner@a5ad31d6a139d249332a2605b85202e8c0b78450 | |
| with: | |
| disable-sudo: true | |
| egress-policy: block | |
| allowed-endpoints: ${{ env.ENDPOINT_WHITELIST}} | |
| - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd | |
| with: | |
| # If it's a pull request, don't get full history. | |
| fetch-depth: ${{ github.event_name == 'pull_request' && 1 || 0 }} | |
| - uses: astral-sh/setup-uv@08807647e7069bb48b6ef5acd8ec9567f424441b | |
| with: | |
| python-version: 3.13 | |
| activate-environment: true | |
| cache-dependency-glob: ${{ env.CACHE_GLOBS }} | |
| - run: >- | |
| uv sync | |
| --upgrade | |
| --no-default-groups | |
| --group docs | |
| --all-extras | |
| - name: configure git | |
| run: | | |
| git config user.name "github-actions" | |
| git config user.email "github-actions@github.com" | |
| - uses: actions/cache@27d5ce7f107fe9357f9df03efb73ab90386fccae | |
| with: | |
| path: docs/html | |
| key: sphinx-${{ hashFiles('pyproject.toml', 'setup.py', 'requirements-dev.txt', 'docs/make.py', 'docs/conf.py') }} | |
| - run: make build_docs | |
| working-directory: docs | |
| - uses: actions/upload-pages-artifact@fc324d3547104276b827a68afc52ff2a11cc49c9 | |
| with: | |
| path: docs/html/ | |
| deploy: | |
| needs: build | |
| # Don't run this job on pull requests | |
| if: github.event_name != 'pull_request' | |
| runs-on: ubuntu-latest | |
| permissions: | |
| pages: write | |
| id-token: write | |
| environment: | |
| name: github-pages | |
| url: ${{ steps.deployment.outputs.page_url }} | |
| steps: | |
| - uses: step-security/harden-runner@a5ad31d6a139d249332a2605b85202e8c0b78450 | |
| with: | |
| disable-sudo: true | |
| egress-policy: block | |
| allowed-endpoints: ${{ env.ENDPOINT_WHITELIST}} | |
| - uses: actions/deploy-pages@cd2ce8fcbc39b97be8ca5fce6e763baed58fa128 |