Skip to content
Snippets Groups Projects
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
docs.yml 1.42 KiB
name: Docs

on:
  pull_request:

jobs:
  build-docs:
    permissions:
      contents: read
      id-token: write
    name: Build Docs
    runs-on: ubuntu-latest
    strategy:
      matrix:
        python-version:
          - "3.11"
    env:
      POETRY_VERSION: "1.8.3"
    steps:
      - uses: actions/checkout@v4
      - name: Cache Poetry
        uses: actions/cache@v2
        with:
          path: ~/.poetry
          key: ${{ runner.os }}-poetry-${{ hashFiles('**/poetry.lock') }}
          restore-keys: |
            ${{ runner.os }}-poetry-
      - name: Install poetry
        run: |
          pipx install poetry==$POETRY_VERSION
      - name: Set up Python ${{ matrix.python-version }}
        uses: actions/setup-python@v4
        with:
          python-version: ${{ matrix.python-version }}
          cache: poetry
      - name: Install dependencies
        run: |
          poetry install
          pip install -r docs/source/requirements.txt
      - name: Build docs
        run: |
          sphinx-build -M html docs/source docs/build
      - name: Authenticate to Google Cloud
        id: auth
        uses: google-github-actions/auth@v2
        with:
          credentials_json: ${{ secrets.GOOGLE_CREDENTIALS }}
      - name: Upload Docs
        id: upload-directory
        uses: google-github-actions/upload-cloud-storage@v2
        with:
          path: docs/build/html
          destination: docs-bucket-production/semantic-router