diff --git a/.github/workflows/build-docs.yml b/.github/workflows/build-docs-dev.yml similarity index 95% rename from .github/workflows/build-docs.yml rename to .github/workflows/build-docs-dev.yml index 8dd6fc3a4..4cdd4dd5c 100644 --- a/.github/workflows/build-docs.yml +++ b/.github/workflows/build-docs-dev.yml @@ -46,3 +46,5 @@ jobs: uses: JamesIves/github-pages-deploy-action@v4 with: folder: _build + target-folder: main + clean: false diff --git a/.github/workflows/build-docs-manual-version.yml b/.github/workflows/build-docs-manual-version.yml new file mode 100644 index 000000000..33bbff14f --- /dev/null +++ b/.github/workflows/build-docs-manual-version.yml @@ -0,0 +1,71 @@ +name: Manual Docs Versioning +on: + workflow_dispatch: + inputs: + version: + description: 'Documentation version to create' + required: true + commit: + description: 'Commit used to build the Documentation version' + required: false + latest: + description: 'Latest version' + type: boolean + +permissions: + contents: write +jobs: + docs: + name: Generate Website for new version + runs-on: ubuntu-latest + env: + SPHINX_GITHUB_CHANGELOG_TOKEN: ${{ secrets.GITHUB_TOKEN }} + steps: + - uses: actions/checkout@v3 + if: inputs.commit == '' + + - uses: actions/checkout@v3 + if: inputs.commit != '' + with: + ref: ${{ inputs.commit }} + + - uses: actions/setup-python@v4 + with: + python-version: '3.9' + + - name: Install ViZDoom dependencies + run: sudo apt install cmake git libboost-all-dev libsdl2-dev libopenal-dev + + - name: Install ViZDoom + run: pip install .[gym] + + - name: Install docs dependencies + run: pip install -r docs/requirements.txt + + - name: Build docs + run: sphinx-build -b dirhtml -v docs _build + + - name: Move 404 + run: mv _build/404/index.html _build/404.html + + - name: Update 404 links + run: python docs/_scripts/move_404.py _build/404.html + + - name: Remove .doctrees + run: rm -r _build/.doctrees + + - name: Upload to GitHub Pages + uses: JamesIves/github-pages-deploy-action@v4 + with: + folder: _build + target-folder: ${{ inputs.version }} + clean: false + + - name: Upload to GitHub Pages + uses: JamesIves/github-pages-deploy-action@v4 + if: inputs.latest + with: + folder: _build + clean-exclude: | + *.*.*/ + main diff --git a/.github/workflows/build-docs-version.yml b/.github/workflows/build-docs-version.yml new file mode 100644 index 000000000..ef0ee0037 --- /dev/null +++ b/.github/workflows/build-docs-version.yml @@ -0,0 +1,56 @@ +name: Docs Versioning +on: + push: + tags: + - 'v?*.*.*' +permissions: + contents: write +jobs: + docs: + name: Generate Website for new version + runs-on: ubuntu-latest + env: + SPHINX_GITHUB_CHANGELOG_TOKEN: ${{ secrets.GITHUB_TOKEN }} + steps: + - uses: actions/checkout@v3 + + - uses: actions/setup-python@v4 + with: + python-version: '3.9' + + - name: Install ViZDoom dependencies + run: sudo apt install cmake git libboost-all-dev libsdl2-dev libopenal-dev + + - name: Install ViZDoom + run: pip install .[gym] + + - name: Install docs dependencies + run: pip install -r docs/requirements.txt + + - name: Build docs + run: sphinx-build -b dirhtml -v docs _build + + - name: Move 404 + run: mv _build/404/index.html _build/404.html + + - name: Update 404 links + run: python docs/_scripts/move_404.py _build/404.html + + - name: Remove .doctrees + run: rm -r _build/.doctrees + + - name: Upload to GitHub Pages + uses: JamesIves/github-pages-deploy-action@v4 + with: + folder: _build + target-folder: ${{github.ref_name}} + clean: false + + - name: Upload to GitHub Pages + uses: JamesIves/github-pages-deploy-action@v4 + if: ${{ !contains(github.ref_name, 'a') }} + with: + folder: _build + clean-exclude: | + *.*.*/ + main