-
Notifications
You must be signed in to change notification settings - Fork 18
41 lines (39 loc) · 1.36 KB
/
upgrade.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# Portability testing across OSes and Java LTS versions
# ---
# Regularly check if we remain compatible with other OSes than Linux and if we
# could upgrade to newer LTS versions of Java.
#
# This acts more like an indicator if something is going to break. Our main
# target platform is Linux and we build against it during our regular workflow
# runs. Likewise, we're just testing if we could support newer LTS version of
# Java. We're still taking very deliberate decisions to upgrade to the next
# LTS version of Java.
name: 'Portability testing OSes and Java LTS versions'
on:
schedule:
# runs at 5:00 on the first of every month
- cron: '0 5 1 * *'
# can be triggered manually
workflow_dispatch:
jobs:
build:
strategy:
fail-fast: false
matrix:
java-lts: [ '17', '21' ]
os: [ ubuntu-latest, macos-latest, windows-latest ]
runs-on: ${{ matrix.os }}
continue-on-error: true
name: 'Building with Java ${{ matrix.java-lts }} on ${{ matrix.os }}'
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Java ${{ matrix.java-lts }}
uses: actions/setup-java@v4
with:
distribution: "temurin"
java-version: ${{ matrix.java-lts }}
- name: Setup Gradle
uses: gradle/actions/setup-gradle@v3
- name: Build and Test
run: ./gradlew build --parallel