-
Notifications
You must be signed in to change notification settings - Fork 10
79 lines (71 loc) · 1.71 KB
/
build.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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
name: Build
on:
pull_request:
branches:
- main
types:
- opened
- synchronize
push:
branches:
- main
workflow_call: {}
workflow_dispatch: {}
jobs:
build:
name: Build on JDK ${{ matrix.java-version }} (${{ matrix.os-name }})
runs-on: ${{ matrix.os-name }}
strategy:
fail-fast: false
matrix:
os-name: [ubuntu-latest]
java-version:
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24-ea
include:
- os-name: macos-latest
java-version: 23
- os-name: windows-latest
java-version: 23
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
fetch-depth: 2
- name: Initialize JDK
uses: actions/setup-java@v4
with:
check-latest: true
distribution: zulu
java-version: ${{ matrix.java-version }}
- name: Compile and run tests
shell: bash
run: ./mvnw -B -U clean verify
- name: Upload to codecov
uses: codecov/codecov-action@v4
with:
name: tests-java-${{ matrix.java-version }}-os-${{ matrix.os-name }}
token: ${{ secrets.CODECOV_TOKEN }}
- name: Stash reports
uses: actions/upload-artifact@v4
if: always()
with:
name: reports-${{ matrix.java-version }}-${{ matrix.os-name }}
if-no-files-found: error
path: |
**/surefire-reports/**
**/failsafe-reports/**
**/build*.log
retention-days: 30