-
Notifications
You must be signed in to change notification settings - Fork 40
109 lines (94 loc) · 2.63 KB
/
step-jlink.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
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
name: X-Jlink
on:
workflow_call:
inputs:
project-version:
required: true
type: string
tasks:
default: 'build aggregateTestReports aggregateJacocoReport publish'
required: false
type: string
secrets:
codecov-token:
required: false
permissions:
contents: read
jobs:
jlink:
name: Jlink
runs-on: ubuntu-latest
env:
CI: true
steps:
- name: Checkout
uses: actions/checkout@v4
with:
ref: main
- name: Setup Java
uses: actions/setup-java@v4
with:
java-version: ${{ vars.JAVA_VERSION }}
distribution: ${{ vars.JAVA_DISTRO }}
cache: gradle
- name: Version
if: endsWith(${{ inputs.project-version }}, '-SNAPSHOT') != true
run: |
echo ${{ inputs.project-version }} > VERSION
- name: Build
run: ./gradlew -Prelease=true -PreproducibleBuild=true ${{ inputs.tasks }} -S
- name: Upload test reports
if: failure()
uses: actions/upload-artifact@v4
with:
name: test-reports
path: |
build/reports/aggregate-tests/
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v4
env:
CODECOV_TOKEN: ${{ secrets.codecov-token }}
- name: Jlink
uses: jreleaser/release-action@v2
with:
arguments: assemble --assembler jlink
setup-java: false
env:
JRELEASER_PROJECT_VERSION: ${{ inputs.project-version }}
- name: JReleaser output
if: always()
uses: actions/upload-artifact@v4
with:
name: riot-jlink
path: |
out/jreleaser/trace.log
out/jreleaser/output.properties
- name: Dependencies
run: |
ls -l plugins/riot/build/dependencies/flat
- name: Upload repos
uses: actions/upload-artifact@v4
with:
retention-days: 1
name: repos
path: |
build/repos/local/release
- name: Upload artifacts
uses: actions/upload-artifact@v4
with:
retention-days: 1
name: artifacts
path: |
plugins/riot/build/libs/
plugins/riot/build/dependencies/
plugins/riot/build/distributions/
- name: Stop Gradle daemon
shell: bash
run: ./gradlew -stop
- name: Upload jlink
uses: actions/upload-artifact@v4
with:
retention-days: 1
name: jlink
path: |
out/jreleaser/assemble/riot-standalone/jlink/*.zip