# ********** Please don't edit this file!
# ********** It has been generated automatically by dae_devops version 0.5.4.dev0+g1fb30ef.d20230527.
# ********** For repository_name dls-bxflow

name: Docs CI

on:
  push:
  pull_request:

jobs:
  docs:
    if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name != github.repository
    runs-on: ubuntu-latest

    steps:
      - name: Avoid git conflicts when tag and branch pushed at same time
        if: startsWith(github.ref, 'refs/tags')
        run: sleep 60

      - name: Checkout
        uses: actions/checkout@v3
        with:
          # Need this to get version number from last tag
          fetch-depth: 0

      - name: Install system packages
        # Can delete this if you don't use graphviz in your docs
        run: sudo apt-get install graphviz

      - name: Install python packages
        uses: ./.github/actions/install_requirements
        with:
          requirements_file: requirements-dev-3.x.txt
          install_options: -e .[dev,docs]

      - name: Build docs
        run: tox -e docs

      - name: Sanitize ref name for docs version
        run: echo "DOCS_VERSION=${GITHUB_REF_NAME//[^A-Za-z0-9._-]/_}" >> $GITHUB_ENV

      - name: Move to versioned directory
        run: mv build/html .github/pages/$DOCS_VERSION

      - name: Write switcher.json
        run: python .github/pages/make_switcher.py --add $DOCS_VERSION ${{ github.repository }} .github/pages/switcher.json

      - name: Publish Docs to gh-pages
        if: github.event_name == 'push' && github.actor != 'dependabot[bot]'
        # We pin to the SHA, not the tag, for security reasons.
        # https://docs.github.com/en/actions/learn-github-actions/security-hardening-for-github-actions#using-third-party-actions
        uses: peaceiris/actions-gh-pages@bd8c6b06eba6b3d25d72b7a1767993c0aeee42e7 # v3.9.2
        with:
          github_token: ${{ secrets.GITHUB_TOKEN }}
          publish_dir: .github/pages
          keep_files: true

# dae_devops_fingerprint 2fe29e6e6518358f37cbab02c9e4e875
