name: CI

on:
  schedule:
      # once per day
    - cron: 0 0 * * *
  push:
    branches:
      - dev
      - master
  pull_request:

jobs:
  build-and-test:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2

      - name: set up JDK 8
        uses: actions/setup-java@v2
        with:
          java-version: '8'
          distribution: 'adopt'
          

      - name: Cache Gradle dependencies
        uses: actions/cache@v2
        with:
          path: ~/.gradle/caches
          key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle') }}
          restore-keys: ${{ runner.os }}-gradle

        # See gradle file for difference between downloaders
      - name: Build and run Tests
        run: |
          if [[ $GITHUB_EVENT_NAME == 'schedule' ]]; then
            echo running with real downloader
            ./gradlew check --stacktrace -Ddownloader=REAL
          else
            echo running with mock downloader
            ./gradlew check --stacktrace -Ddownloader=MOCK
          fi
