manual-build-docs-version.yml 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. name: Manual Docs Versioning
  2. on:
  3. workflow_dispatch:
  4. inputs:
  5. version:
  6. description: 'Documentation version to create'
  7. required: true
  8. commit:
  9. description: 'Commit used to build the Documentation version'
  10. required: false
  11. latest:
  12. description: 'Latest version'
  13. type: boolean
  14. permissions:
  15. contents: write
  16. jobs:
  17. docs:
  18. name: Generate Website for new version
  19. runs-on: ubuntu-latest
  20. env:
  21. SPHINX_GITHUB_CHANGELOG_TOKEN: ${{ secrets.GITHUB_TOKEN }}
  22. steps:
  23. - uses: actions/checkout@v3
  24. if: inputs.commit == ''
  25. - uses: actions/checkout@v3
  26. if: inputs.commit != ''
  27. with:
  28. ref: ${{ inputs.commit }}
  29. - uses: actions/setup-python@v5
  30. with:
  31. python-version: '3.9'
  32. - name: Install dependencies
  33. run: pip install -r docs/requirements.txt
  34. - name: Register Envs
  35. run: pip install -e .[wfc]
  36. - name: Build Envs Docs
  37. run: python docs/_scripts/gen_env_docs.py
  38. - name: Build Envs Display
  39. run: python docs/_scripts/gen_envs_display.py
  40. - name: Build
  41. run: sphinx-build -b dirhtml -v docs _build
  42. - name: Move 404
  43. run: mv _build/404/index.html _build/404.html
  44. - name: Update 404 links
  45. run: python docs/_scripts/move_404.py _build/404.html
  46. - name: Remove .doctrees
  47. run: rm -r _build/.doctrees
  48. - name: Upload to GitHub Pages
  49. uses: JamesIves/github-pages-deploy-action@v4
  50. with:
  51. folder: _build
  52. target-folder: ${{ inputs.version }}
  53. clean: false
  54. - name: Upload to GitHub Pages
  55. uses: JamesIves/github-pages-deploy-action@v4
  56. if: inputs.latest
  57. with:
  58. folder: _build
  59. clean-exclude: |
  60. *.*.*/
  61. main