name: Deploy the latest documentation
on:
  workflow_dispatch:
    inputs:
      version:
        description: Version to be deployed
        required: true
  push:
    tags:
      - "v*"
jobs:
  deploy:
    name: Deploy the latest documentation
    runs-on: ubuntu-18.04
    steps:
      - name: Checkout main
        uses: actions/checkout@v3
        with:
          fetch-depth: 0
          persist-credentials: true
      - uses: actions/setup-python@v4
        with:
          python-version: 3.x
      - name: Install dependencies
        run: |
          pip install git+https://${GH_TOKEN}@github.com/squidfunk/mkdocs-material-insiders.git
          pip install -r docs/build/requirements.txt
        env:
          GH_TOKEN: ${{ secrets.MKDOCS_AQUA_BOT }}
      - name: Configure the git user
        run: |
          git config user.name "knqyf263"
          git config user.email "knqyf263@gmail.com"
      - name: Deploy the latest documents from new tag push
        if: ${{ github.event.inputs.version == '' }}
        run: |
          VERSION=$(echo ${{ github.ref }} | sed -e "s#refs/tags/##g")
          mike deploy --push --update-aliases ${VERSION%.*} latest
      - name: Deploy the latest documents from manual trigger
        if: ${{ github.event.inputs.version != '' }}
        run: mike deploy --push --update-aliases ${{ github.event.inputs.version }} latest
