diff --git a/.github/workflows/doc.yml b/.github/workflows/doc.yml new file mode 100644 index 000000000000..d338dd141dec --- /dev/null +++ b/.github/workflows/doc.yml @@ -0,0 +1,60 @@ +name: "Doc" + +on: + push: + branches: + - main + workflow_dispatch: + pull_request: + +jobs: + build: + name: Build Doc + runs-on: [self-hosted, 1ES.Pool=gha-virtual-ccf-sub] + container: + image: ghcr.io/microsoft/ccf/ci/default:latest + steps: + - run: git config --global --add safe.directory "$GITHUB_WORKSPACE" + - uses: actions/checkout@v4 + with: + fetch-depth: 0 + - name: Setup Pages + id: pages + uses: actions/configure-pages@v3 + - name: Build Documentation + run: | + set -x + python3.8 -m venv env + source env/bin/activate + pip install -U pip + pip install -U -e ./python + pip install -U -r doc/requirements.txt + pip install -U -r doc/historical_ccf_requirements.txt + sphinx-multiversion -D smv_remote_whitelist=origin doc build/html + shell: bash + - name: Set up top-level directory + run: | + set -x + cd build/html + touch .nojekyll + cp ../../doc/index.html . + shell: bash + - name: Upload pages + uses: actions/upload-pages-artifact@v3 + with: + path: build/html + + deploy: + permissions: + contents: read + pages: write + id-token: write + environment: + name: github-pages + url: ${{steps.deployment.outputs.page_url}} + runs-on: ubuntu-latest + needs: build + steps: + - name: Deploy to GitHub Pages + id: deployment + uses: actions/deploy-pages@v4