Skip to content

Commit 9e2b116

Browse files
xaionaro@dx.centerxaionaro@dx.center
authored andcommitted
fix(ci): descriptive release artifact names + include APK and Magisk zip
Release artifacts now have clear names: jnicli-v0.0.2-linux-arm64 (CLI for Linux hosts) jnicli-v0.0.2-android-arm64-v8a (CLI for Android devices) jniserviceadmin-v0.0.2-android-arm64-v8a (admin tool) jniservice-v0.0.2-arm64-v8a.apk (APK installer) jniservice-magisk-v0.0.2-arm64-v8a.zip (Magisk module) libjniservice-v0.0.2-arm64-v8a.so (shared library for app_process) jniservice-entrypoint-v0.0.2.dex (Java DEX for app_process) Previously: cryptic names like libjniservice-arm64-v8a.so, classes.dex. Also: APK and Magisk zip were not included in releases.
1 parent 7c02f37 commit 9e2b116

1 file changed

Lines changed: 43 additions & 9 deletions

File tree

.github/workflows/release.yml

Lines changed: 43 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,11 @@ jobs:
1515
strategy:
1616
matrix:
1717
goarch: [arm64, amd64]
18+
include:
19+
- goarch: arm64
20+
abi: arm64-v8a
21+
- goarch: amd64
22+
abi: x86_64
1823

1924
steps:
2025
- uses: actions/checkout@v4
@@ -37,14 +42,7 @@ jobs:
3742
run: sdkmanager --install "ndk;27.0.12077973" "build-tools;35.0.0" "platforms;android-35"
3843

3944
- name: Build all artifacts
40-
run: make dist
41-
env:
42-
DIST_GOARCH: ${{ matrix.goarch }}
43-
ANDROID_SDK: /usr/local/lib/android/sdk
44-
DIST_NDK: /usr/local/lib/android/sdk/ndk/27.0.12077973
45-
46-
- name: Build Magisk module
47-
run: make magisk
45+
run: make dist magisk
4846
env:
4947
DIST_GOARCH: ${{ matrix.goarch }}
5048
ANDROID_SDK: /usr/local/lib/android/sdk
@@ -67,11 +65,47 @@ jobs:
6765
JNISERVICE_KEYSTORE: build/release.keystore
6866
JNISERVICE_KEYSTORE_PASSWORD: ${{ secrets.JNISERVICE_KEYSTORE_PASSWORD }}
6967

68+
- name: Prepare release artifacts with descriptive names
69+
run: |
70+
mkdir -p release
71+
TAG="${GITHUB_REF_NAME}"
72+
ABI="${{ matrix.abi }}"
73+
74+
# CLI tool for Linux hosts
75+
cp build/jnicli-linux-${{ matrix.goarch }} \
76+
"release/jnicli-${TAG}-linux-${{ matrix.goarch }}"
77+
78+
# CLI tool for Android devices
79+
cp build/jnicli-android-${{ matrix.goarch }} \
80+
"release/jnicli-${TAG}-android-${ABI}"
81+
82+
# Admin tool for Android devices
83+
cp build/jniserviceadmin-android-${{ matrix.goarch }} \
84+
"release/jniserviceadmin-${TAG}-android-${ABI}"
85+
86+
# APK installer (no root required)
87+
cp build/jniservice-${ABI}.apk \
88+
"release/jniservice-${TAG}-${ABI}.apk"
89+
90+
# Magisk module (rooted devices, auto-start on boot)
91+
cp build/jniservice-magisk-${ABI}.zip \
92+
"release/jniservice-magisk-${TAG}-${ABI}.zip"
93+
94+
# Shared library (for app_process deployment or custom integration)
95+
cp build/libjniservice-${ABI}.so \
96+
"release/libjniservice-${TAG}-${ABI}.so"
97+
98+
# Java entrypoint DEX (for app_process deployment)
99+
cp build/classes.dex \
100+
"release/jniservice-entrypoint-${TAG}.dex"
101+
102+
ls -la release/
103+
70104
- name: Upload artifacts
71105
uses: actions/upload-artifact@v4
72106
with:
73107
name: release-${{ matrix.goarch }}
74-
path: build/
108+
path: release/
75109

76110
release:
77111
name: Create GitHub release

0 commit comments

Comments
 (0)