name: Deploy Website

on:
  push:
    branches:
      - main
    paths:
      - '**.md'
      - 'mkdocs.yml'
      - '.github/workflows/**'

jobs:
  deploy-website:
    name: Generate API docs and deploy website
    runs-on: macos-latest
    steps:
      - uses: actions/checkout@v2
      - uses: gradle/wrapper-validation-action@v1
      - uses: actions/setup-java@v1
        with:
          java-version: 14
      - uses: actions/cache@v1
        with:
          path: ~/.gradle/caches
          key: ${{ runner.os }}-${{ github.job }}-${{ hashFiles('**/*.gradle*') }}-${{ hashFiles('**/gradle/wrapper/gradle-wrapper.properties') }}-${{ hashFiles('**/buildSrc/**/*.kt') }}
      - run: |
          pip3 install mkdocs-material mkdocs-minify-plugin
          .buildscript/deploy_website.sh
        env:
          CI: true
          JAVA_TOOL_OPTIONS: -Xmx4g
          GRADLE_OPTS: -Dorg.gradle.daemon=false -Dkotlin.incremental=false
          DEPLOY_TOKEN: ${{ secrets.GH_DEPLOY_TOKEN }}