| name: Publish documentation |
| |
| # publish the documentation on every merge to develop branch |
| on: |
| push: |
| branches: |
| - develop |
| paths: |
| - docs/mkdocs/** |
| - docs/examples/** |
| workflow_dispatch: |
| |
| # we don't want to have concurrent jobs, and we don't want to cancel running jobs to avoid broken publications |
| concurrency: |
| group: documentation |
| cancel-in-progress: false |
| |
| permissions: |
| contents: read |
| |
| jobs: |
| publish_documentation: |
| permissions: |
| contents: write |
| |
| if: github.repository == 'nlohmann/json' |
| runs-on: ubuntu-22.04 |
| steps: |
| - name: Harden Runner |
| uses: step-security/harden-runner@20cf305ff2072d973412fa9b1e3a4f227bda3c76 # v2.14.0 |
| with: |
| egress-policy: audit |
| |
| - uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 |
| |
| - name: Install virtual environment |
| run: make install_venv -C docs/mkdocs |
| |
| - name: Build documentation |
| run: make build -C docs/mkdocs |
| |
| - name: Deploy documentation |
| uses: peaceiris/actions-gh-pages@4f9cc6602d3f66b9c108549d475ec49e8ef4d45e # v4.0.0 |
| with: |
| github_token: ${{ secrets.GITHUB_TOKEN }} |
| publish_dir: ./docs/mkdocs/site |