]> nmode's Git Repositories - signal-cli/blobdiff - .github/workflows/ci.yml
Add build graalvm native step for CI
[signal-cli] / .github / workflows / ci.yml
index ac6d30b323c981fefff55f42b5c79892bce8c533..74a402ab7c831800fb602720d273d786bff3d68b 100644 (file)
@@ -1,6 +1,6 @@
 name: signal-cli CI
 
-on: [push, pull_request]
+on: [ push, pull_request, workflow_call ]
 
 jobs:
   build:
@@ -8,20 +8,40 @@ jobs:
     runs-on: ubuntu-latest
     strategy:
       matrix:
-        java: [ '11', '16' ]
+        java: [ '17', '18' ]
 
     steps:
-    - uses: actions/checkout@v1
-    - name: Set up JDK
-      uses: actions/setup-java@v1
-      with:
-        java-version: ${{ matrix.java }}
-    - name: Build with Gradle
-      run: ./gradlew build
-    - name: Compress archive
-      run: gzip -n -9 build/distributions/signal-cli-*.tar
-    - name: Archive production artifacts
-      uses: actions/upload-artifact@v2
-      with:
-        name: signal-cli-archive-${{ matrix.java }}
-        path: build/distributions/signal-cli-*.tar.gz
+      - uses: actions/checkout@v3
+      - name: Set up JDK
+        uses: actions/setup-java@v3
+        with:
+          distribution: 'adopt'
+          java-version: ${{ matrix.java }}
+      - name: Build with Gradle
+        run: ./gradlew --no-daemon build
+      - name: Compress archive
+        run: gzip -n -9 build/distributions/signal-cli-*.tar
+      - name: Archive production artifacts
+        uses: actions/upload-artifact@v3
+        with:
+          name: signal-cli-archive-${{ matrix.java }}
+          path: build/distributions/signal-cli-*.tar.gz
+
+  build-graalvm:
+
+    runs-on: ubuntu-latest
+
+    steps:
+      - uses: actions/checkout@v3
+      - uses: graalvm/setup-graalvm@v1
+        with:
+          version: 'latest'
+          java-version: '17'
+          components: 'native-image'
+      - name: Build with Gradle
+        run: ./gradlew --no-daemon nativeCompile
+      - name: Archive production artifacts
+        uses: actions/upload-artifact@v3
+        with:
+          name: signal-cli-archive-native
+          path: build/native/nativeCompile/signal-cli