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