]> nmode's Git Repositories - signal-cli/blob - .github/workflows/ci.yml
Rework release workflow
[signal-cli] / .github / workflows / ci.yml
1 name: signal-cli CI
2
3 on:
4 push:
5 branches:
6 - '**'
7 pull_request:
8 workflow_call:
9
10 jobs:
11 build:
12
13 runs-on: ubuntu-latest
14 strategy:
15 matrix:
16 java: [ '17', '19' ]
17
18 steps:
19 - uses: actions/checkout@v3
20 - name: Set up JDK
21 uses: actions/setup-java@v3
22 with:
23 distribution: 'adopt'
24 java-version: ${{ matrix.java }}
25 cache: 'gradle'
26 - name: Build with Gradle
27 run: ./gradlew --no-daemon build
28 - name: Compress archive
29 run: gzip -n -9 build/distributions/signal-cli-*.tar
30 - name: Archive production artifacts
31 uses: actions/upload-artifact@v3
32 with:
33 name: signal-cli-archive-${{ matrix.java }}
34 path: build/distributions/signal-cli-*.tar.gz
35
36 build-graalvm:
37
38 runs-on: ubuntu-latest
39
40 steps:
41 - uses: actions/checkout@v3
42 - uses: graalvm/setup-graalvm@v1
43 with:
44 version: 'latest'
45 java-version: '17'
46 cache: 'gradle'
47 components: 'native-image'
48 github-token: ${{ secrets.GITHUB_TOKEN }}
49 - name: Build with Gradle
50 run: ./gradlew --no-daemon nativeCompile
51 - name: Archive production artifacts
52 uses: actions/upload-artifact@v3
53 with:
54 name: signal-cli-native
55 path: build/native/nativeCompile/signal-cli