-
Notifications
You must be signed in to change notification settings - Fork 18
41 lines (39 loc) · 1.35 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 newer Java versions
# ---
# Regularly check if we remain compatible with other OSes than Linux and if we
# could upgrade to newer 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 version of
# Java. We're still taking very deliberate decisions to move to newer (LTS)
# versions of Java.
name: 'Portability testing OSes and Java versions'
on:
schedule:
# runs every Monday at 5:00
- cron: '0 5 * * 1'
# can be triggered manually
workflow_dispatch:
jobs:
build:
strategy:
fail-fast: false
matrix:
version: [ "18", "19", "20", "21", "22" ]
os: [ ubuntu-latest, macos-latest, windows-latest ]
runs-on: ${{ matrix.os }}
continue-on-error: true
name: 'Building with Java ${{ matrix.version }} on ${{ matrix.os }}'
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Java ${{ matrix.version }}
uses: actions/setup-java@v4
with:
distribution: "temurin"
java-version: ${{ matrix.version }}
- name: Setup Gradle
uses: gradle/actions/setup-gradle@v3
- name: Build and Test
run: ./gradlew build --parallel