name: Docs
on:
  pull_request:
    branches: [master]
    types: [closed]

jobs:
  GenerateDocs:
    if: github.event.pull_request.merged == true
    runs-on: ubuntu-latest
    steps:
    - name: Checkout
      uses: actions/checkout@v2

    - name: Checkout Wiki
      uses: actions/checkout@v2
      with:
        repository: revarbat/BOSL2.wiki
        path: BOSL2.wiki

    - name: Apt Update
      run: sudo apt update

    - name: Install Packages
      run: sudo apt-get install -y python3-pip python3-dev python3-setuptools python3-pil gifsicle

    - name: Install openscad-docsgen
      run: sudo pip3 install openscad_docsgen

    - name: Install OpenSCAD
      run: |
        cd $GITHUB_WORKSPACE
        wget https://files.openscad.org/OpenSCAD-2021.01-x86_64.AppImage
        sudo mv OpenSCAD-2021.01*-x86_64.AppImage /usr/local/bin/openscad
        sudo chmod +x /usr/local/bin/openscad
        echo "::add-matcher::.github/openscad_docsgen.json"

    - name: Generating Docs Headless
      run: |
        export OPENSCADPATH=$(dirname $GITHUB_WORKSPACE)
        xvfb-run --server-args="-screen 0, 1280x720x24" -a \
        openscad-docsgen -ticmI *.scad

    - name: Commit Wiki Docs
      run: |
        cd $GITHUB_WORKSPACE/BOSL2.wiki
        git config user.name github-actions
        git config user.email github-actions@github.com
        git add --all
        git commit -m "Wiki docs auto-regen." && git push || true

    - name: Bump Release Version
      run: |
        cd $GITHUB_WORKSPACE
        ./scripts/increment_version.sh
        git config user.name github-actions
        git config user.email github-actions@github.com
        git add version.scad
        git commit -m "Bump release version." && git push || true