]> nmode's Git Repositories - signal-cli/blobdiff - .github/workflows/release.yml
Fix container build
[signal-cli] / .github / workflows / release.yml
index 84f629b290bf6eefc58f1a868171d58545f87625..b7ce03f1c274d71347b3e57baefd436d3f98640c 100644 (file)
@@ -6,7 +6,7 @@ on:
       - v*
 
 permissions:
-  contents: read # to fetch code (actions/checkout)
+  contents: write # to fetch code (actions/checkout) and create release
 
 env:
   IMAGE_NAME: signal-cli
@@ -17,6 +17,8 @@ env:
 jobs:
 
   ci_wf:
+    permissions:
+      contents: write
     uses: AsamK/signal-cli/.github/workflows/ci.yml@master
     # ${{ github.repository }} not accepted here
 
@@ -33,7 +35,7 @@ jobs:
     steps:
 
       - name: Download signal-cli build from CI workflow
-        uses: actions/download-artifact@v3
+        uses: actions/download-artifact@v4
 
       - name: Get signal-cli version
         id: cli_ver
@@ -46,28 +48,28 @@ jobs:
           tree .
           ARCHIVE_DIR=$(ls signal-cli-archive-*/ -d | tail -n1)
           tar -xzf ./"${ARCHIVE_DIR}"/*.tar.gz
-          mv ./"${ARCHIVE_DIR}"/*.tar.gz signal-cli-${{ steps.cli_ver.outputs.version }}-Linux.tar.gz
+          mv ./"${ARCHIVE_DIR}"/*.tar.gz signal-cli-${{ steps.cli_ver.outputs.version }}.tar.gz
           rm -rf signal-cli-archive-*/
 
-      - name: Get signal-client jar version
-        id: lib_ver
-        run: |
-          JAR_PREFIX=libsignal-client-
-          jar_file=$(find ./signal-cli-*/lib/ -name "$JAR_PREFIX*.jar")
-          jar_version=$(echo "$jar_file" | xargs basename | sed "s/$JAR_PREFIX//; s/.jar//")
-          echo "$jar_version"
-          echo "signal_client_version=${jar_version}" >> $GITHUB_OUTPUT
-
-      - name: Download signal-client builds
-        env:
-          RELEASES_URL: https://github.com/signalapp/libsignal/releases/download/
-          FILE_NAMES: signal_jni.dll libsignal_jni.dylib
-          SIGNAL_CLIENT_VER: ${{ steps.lib_ver.outputs.signal_client_version }}
-        run: |
-          for file_name in $FILE_NAMES; do
-            curl -sOL "${RELEASES_URL}/v${SIGNAL_CLIENT_VER}/${file_name}"  # note: added v
-          done
-          tree .
+#      - name: Get signal-client jar version
+#        id: lib_ver
+#        run: |
+#          JAR_PREFIX=libsignal-client-
+#          jar_file=$(find ./signal-cli-*/lib/ -name "$JAR_PREFIX*.jar")
+#          jar_version=$(echo "$jar_file" | xargs basename | sed "s/$JAR_PREFIX//; s/.jar//")
+#          echo "$jar_version"
+#          echo "signal_client_version=${jar_version}" >> $GITHUB_OUTPUT
+#
+#      - name: Download signal-client builds
+#        env:
+#          RELEASES_URL: https://github.com/signalapp/libsignal/releases/download/
+#          FILE_NAMES: signal_jni.dll libsignal_jni.dylib
+#          SIGNAL_CLIENT_VER: ${{ steps.lib_ver.outputs.signal_client_version }}
+#        run: |
+#          for file_name in $FILE_NAMES; do
+#            curl -sOL "${RELEASES_URL}/v${SIGNAL_CLIENT_VER}/${file_name}"  # note: added v
+#          done
+#          tree .
 
       - name: Compress native app
         env:
@@ -77,24 +79,24 @@ jobs:
           tar -czf signal-cli-${SIGNAL_CLI_VER}-Linux-native.tar.gz -C signal-cli-native signal-cli
           rm -rf signal-cli-native/
 
-      - name: Replace Windows lib
-        env:
-          SIGNAL_CLI_VER: ${{ steps.cli_ver.outputs.version }}
-          SIGNAL_CLIENT_VER: ${{ steps.lib_ver.outputs.signal_client_version }}
-        run: |
-          mv signal_jni.dll libsignal_jni.so
-          zip -u ./signal-cli-*/lib/libsignal-client-${SIGNAL_CLIENT_VER}.jar  ./libsignal_jni.so
-          tar -czf signal-cli-${SIGNAL_CLI_VER}-Windows.tar.gz signal-cli-*/
-
-      - name: Replace macOS lib
-        env:
-          SIGNAL_CLI_VER: ${{ steps.cli_ver.outputs.version }}
-          SIGNAL_CLIENT_VER: ${{ steps.lib_ver.outputs.signal_client_version }}
-        run: |
-          jar_file=./signal-cli-*/lib/libsignal-client-${SIGNAL_CLIENT_VER}.jar
-          zip -d $jar_file libsignal_jni.so
-          zip $jar_file libsignal_jni.dylib
-          tar -czf signal-cli-${SIGNAL_CLI_VER}-macOS.tar.gz signal-cli-*/
+#      - name: Replace Windows lib
+#        env:
+#          SIGNAL_CLI_VER: ${{ steps.cli_ver.outputs.version }}
+#          SIGNAL_CLIENT_VER: ${{ steps.lib_ver.outputs.signal_client_version }}
+#        run: |
+#          mv signal_jni.dll libsignal_jni.so
+#          zip -u ./signal-cli-*/lib/libsignal-client-${SIGNAL_CLIENT_VER}.jar  ./libsignal_jni.so
+#          tar -czf signal-cli-${SIGNAL_CLI_VER}-Windows.tar.gz signal-cli-*/
+#
+#      - name: Replace macOS lib
+#        env:
+#          SIGNAL_CLI_VER: ${{ steps.cli_ver.outputs.version }}
+#          SIGNAL_CLIENT_VER: ${{ steps.lib_ver.outputs.signal_client_version }}
+#        run: |
+#          jar_file=./signal-cli-*/lib/libsignal-client-${SIGNAL_CLIENT_VER}.jar
+#          zip -d $jar_file libsignal_jni.so
+#          zip $jar_file libsignal_jni.dylib
+#          tar -czf signal-cli-${SIGNAL_CLI_VER}-macOS.tar.gz signal-cli-*/
 
       - name: Create release
         id: create_release
@@ -106,16 +108,26 @@ jobs:
           release_name: v${{ steps.cli_ver.outputs.version }}  # note: added `v`
           draft: true
 
-      - name: Upload Linux archive
+      - name: Upload archive
         uses: actions/upload-release-asset@v1
         env:
           GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
         with:
           upload_url: ${{ steps.create_release.outputs.upload_url }}
-          asset_path: signal-cli-${{ steps.cli_ver.outputs.version }}-Linux.tar.gz
-          asset_name: signal-cli-${{ steps.cli_ver.outputs.version }}-Linux.tar.gz
+          asset_path: signal-cli-${{ steps.cli_ver.outputs.version }}.tar.gz
+          asset_name: signal-cli-${{ steps.cli_ver.outputs.version }}.tar.gz
           asset_content_type: application/x-compressed-tar  # .tar.gz
 
+#      - name: Upload Linux archive
+#        uses: actions/upload-release-asset@v1
+#        env:
+#          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+#        with:
+#          upload_url: ${{ steps.create_release.outputs.upload_url }}
+#          asset_path: signal-cli-${{ steps.cli_ver.outputs.version }}-Linux.tar.gz
+#          asset_name: signal-cli-${{ steps.cli_ver.outputs.version }}-Linux.tar.gz
+#          asset_content_type: application/x-compressed-tar  # .tar.gz
+
       - name: Upload Linux native archive
         uses: actions/upload-release-asset@v1
         env:
@@ -126,25 +138,25 @@ jobs:
           asset_name: signal-cli-${{ steps.cli_ver.outputs.version }}-Linux-native.tar.gz
           asset_content_type: application/x-compressed-tar  # .tar.gz
 
-      - name: Upload windows archive
-        uses: actions/upload-release-asset@v1
-        env:
-          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
-        with:
-          upload_url: ${{ steps.create_release.outputs.upload_url }}
-          asset_path: signal-cli-${{ steps.cli_ver.outputs.version }}-Windows.tar.gz
-          asset_name: signal-cli-${{ steps.cli_ver.outputs.version }}-Windows.tar.gz
-          asset_content_type: application/x-compressed-tar  # .tar.gz
-
-      - name: Upload macos archive
-        uses: actions/upload-release-asset@v1
-        env:
-          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
-        with:
-          upload_url: ${{ steps.create_release.outputs.upload_url }}
-          asset_path: signal-cli-${{ steps.cli_ver.outputs.version }}-macOS.tar.gz
-          asset_name: signal-cli-${{ steps.cli_ver.outputs.version }}-macOS.tar.gz
-          asset_content_type: application/x-compressed-tar  # .tar.gz
+#      - name: Upload windows archive
+#        uses: actions/upload-release-asset@v1
+#        env:
+#          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+#        with:
+#          upload_url: ${{ steps.create_release.outputs.upload_url }}
+#          asset_path: signal-cli-${{ steps.cli_ver.outputs.version }}-Windows.tar.gz
+#          asset_name: signal-cli-${{ steps.cli_ver.outputs.version }}-Windows.tar.gz
+#          asset_content_type: application/x-compressed-tar  # .tar.gz
+#
+#      - name: Upload macos archive
+#        uses: actions/upload-release-asset@v1
+#        env:
+#          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+#        with:
+#          upload_url: ${{ steps.create_release.outputs.upload_url }}
+#          asset_path: signal-cli-${{ steps.cli_ver.outputs.version }}-macOS.tar.gz
+#          asset_name: signal-cli-${{ steps.cli_ver.outputs.version }}-macOS.tar.gz
+#          asset_content_type: application/x-compressed-tar  # .tar.gz
 
   build-container:
     needs: ci_wf
@@ -154,9 +166,9 @@ jobs:
       packages: write
 
     steps:
-      - uses: actions/checkout@v3
+      - uses: actions/checkout@v4
       - name: Download signal-cli build from CI workflow
-        uses: actions/download-artifact@v3
+        uses: actions/download-artifact@v4
 
       - name: Get signal-cli version
         id: cli_ver
@@ -170,7 +182,7 @@ jobs:
           tar xf ./"${ARCHIVE_DIR}"/*.tar.gz
           rm -r signal-cli-archive-* signal-cli-native
           mkdir -p build/install/
-          mv ./signal-cli-*/ build/install/signal-cli
+          mv ./signal-cli-"${GITHUB_REF_NAME#v}"/ build/install/signal-cli
 
       - name: Build Image
         id: build_image
@@ -204,9 +216,9 @@ jobs:
       packages: write
 
     steps:
-      - uses: actions/checkout@v3
+      - uses: actions/checkout@v4
       - name: Download signal-cli build from CI workflow
-        uses: actions/download-artifact@v3
+        uses: actions/download-artifact@v4
 
       - name: Get signal-cli version
         id: cli_ver