name: Upload javadocs to Github pages

on:
  push:
    branches:
    - master
    paths:
    - opengrok-indexer/**
    - opengrok-web/**
    - suggester/**
    - plugins/**
    - .github/workflows/javadoc.yml
    - dev/javadoc.sh

jobs:
  ubuntu:
    runs-on: ubuntu-latest
    steps:
    - name: Checkout master branch
      uses: actions/checkout@v2
    - name: Set up JDK 11
      uses: actions/setup-java@v1
      with:
        java-version: 11
    - name: Cache Maven packages
      uses: actions/cache@v2
      with:
        path: ~/.m2
        key: ${{ runner.os }}-m2-${{ hashFiles('**/pom.xml') }}
        restore-keys: ${{ runner.os }}-m2
    - name: Checkout gh-pages branch
      if: github.repository == 'oracle/opengrok'
      uses: actions/checkout@v2
      with:
        ref: gh-pages
        path: gh-pages
    - name: Refresh Javadoc
      env:
        OPENGROK_REPO_SLUG: ${{ github.repository }}
        OPENGROK_PULL_REQUEST: ${{ github.head_ref }}
        OPENGROK_REF: ${{ github.ref }}
        OPENGROK_BUILD_DIR: ${{ github.workspace }}
      run: ./dev/javadoc.sh
