name: Build on: [push, pull_request] jobs: build: name: Build runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - name: Set up Java 8 uses: actions/setup-java@v1 with: java-version: 8 - name: Cache gradle dependencies uses: actions/cache@v2 with: path: ~/.gradle/caches key: ${{ runner.os }}-gradle-${{ hashFiles('gradle.properties') }} restore-keys: | ${{ runner.os }}-gradle- - name: Disable Gradle daemon run: | mkdir -p ~/.gradle echo "org.gradle.daemon=false" >> ~/.gradle/gradle.properties - name: Build with Gradle run: | ./gradlew assemble || ./gradlew assemble ./gradlew downloadAssets || ./gradlew downloadAssets xvfb-run ./gradlew build - name: Upload Jar uses: actions/upload-artifact@v2 with: name: CC-Tweaked path: build/libs - name: Upload Screnshots uses: actions/upload-artifact@v2 with: name: Screenshots path: test-files/client/screenshots if-no-files-found: ignore retention-days: 5 if: failure() - name: Upload Coverage uses: codecov/codecov-action@v2 - name: Parse test reports run: ./tools/parse-reports.py if: ${{ failure() }} - name: Cache pre-commit uses: actions/cache@v2 with: path: ~/.cache/pre-commit key: ${{ runner.os }}-pre-commit-${{ hashFiles('config/pre-commit/config.yml') }} restore-keys: | ${{ runner.os }}-pre-commit- - name: Run linters run: | pip install pre-commit pre-commit run --config config/pre-commit/config.yml --show-diff-on-failure --all --color=always