]> nmode's Git Repositories - signal-cli/blobdiff - .github/workflows/ci.yml
Add man page to build tar file
[signal-cli] / .github / workflows / ci.yml
index fd5a938ddcb1fd8087ed15c64273f4a8e77e071a..490b85416d8283be9e7af82f7c8b7bd552f22f15 100644 (file)
@@ -8,7 +8,7 @@ on:
   workflow_call:
 
 permissions:
-  contents: read # to fetch code (actions/checkout)
+  contents: write # to fetch code (actions/checkout) and submit dependency graph (gradle/gradle-build-action)
 
 jobs:
   build:
@@ -16,7 +16,7 @@ jobs:
     runs-on: ubuntu-latest
     strategy:
       matrix:
-        java: [ '17', '21' ]
+        java: [ '21', '23' ]
 
     steps:
       - uses: actions/checkout@v4
@@ -29,12 +29,23 @@ jobs:
         uses: gradle/gradle-build-action@v2
         with:
           dependency-graph: generate-and-submit
+      - name: Install asciidoc
+        run: sudo apt --no-install-recommends install -y asciidoc-base
       - name: Build with Gradle
         run: ./gradlew --no-daemon build
+      - name: Build man page
+        run: |
+          cd man
+          make install
+      - name: Add man page to archive
+        run: |
+          version=$(tar tf build/distributions/signal-cli-*.tar | head -n1 | sed 's|signal-cli-\([^/]*\)/.*|\1|')
+          echo $version
+          tar --transform="flags=r;s|man|signal-cli-${version}/man|" -rf build/distributions/signal-cli-${version}.tar man/man{1,5}
       - name: Compress archive
         run: gzip -n -9 build/distributions/signal-cli-*.tar
       - name: Archive production artifacts
-        uses: actions/upload-artifact@v3
+        uses: actions/upload-artifact@v4
         with:
           name: signal-cli-archive-${{ matrix.java }}
           path: build/distributions/signal-cli-*.tar.gz
@@ -48,14 +59,13 @@ jobs:
       - uses: graalvm/setup-graalvm@v1
         with:
           version: 'latest'
-          java-version: '17'
+          java-version: '21'
           cache: 'gradle'
-          components: 'native-image'
           github-token: ${{ secrets.GITHUB_TOKEN }}
       - name: Build with Gradle
         run: ./gradlew --no-daemon nativeCompile
       - name: Archive production artifacts
-        uses: actions/upload-artifact@v3
+        uses: actions/upload-artifact@v4
         with:
           name: signal-cli-native
           path: build/native/nativeCompile/signal-cli