45 lines
1.5 KiB
YAML
45 lines
1.5 KiB
YAML
name: Build
|
|
on:
|
|
push:
|
|
pull_request:
|
|
types: [ opened, synchronize, reopened ]
|
|
jobs:
|
|
build:
|
|
strategy:
|
|
matrix:
|
|
java: [
|
|
17
|
|
]
|
|
os: [ ubuntu-latest ]
|
|
runs-on: ${{ matrix.os }}
|
|
steps:
|
|
- name: Checkout repository
|
|
uses: actions/checkout@v2
|
|
with:
|
|
fetch-depth: 0 # Shallow clones should be disabled for a better relevancy of analysis
|
|
- name: Validate Gradle wrapper
|
|
uses: gradle/wrapper-validation-action@v1
|
|
- name: Setup JDK ${{ matrix.java }}
|
|
uses: actions/setup-java@v1
|
|
with:
|
|
java-version: ${{ matrix.java }}
|
|
- name: Cache Gradle packages
|
|
uses: actions/cache@v1
|
|
with:
|
|
path: ~/.gradle/caches
|
|
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle') }}
|
|
restore-keys: ${{ runner.os }}-gradle
|
|
- name: Make Gradle wrapper executable
|
|
if: ${{ runner.os != 'Windows' }}
|
|
run: chmod +x ./gradlew
|
|
- name: Build
|
|
run: ./gradlew build
|
|
env:
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
|
- name: Upload build artifacts
|
|
if: ${{ runner.os == 'Linux' && matrix.java == '17' }}
|
|
uses: actions/upload-artifact@v2
|
|
with:
|
|
name: Artifacts
|
|
path: build/libs/
|