forked from mirrors/rustdesk
update(workflow): upload to release, and remove hardcoded version name
This commit is contained in:
parent
ed1496c425
commit
12ba2d1e61
1 changed files with 53 additions and 34 deletions
87
.github/workflows/custom-android-build.yml
vendored
87
.github/workflows/custom-android-build.yml
vendored
|
|
@ -3,10 +3,10 @@ name: Build RustDesk Android
|
|||
on:
|
||||
workflow_dispatch:
|
||||
inputs:
|
||||
upload-artifact:
|
||||
upload-release:
|
||||
type: boolean
|
||||
default: true
|
||||
description: "Upload APK artifacts"
|
||||
description: "Upload APKs to release"
|
||||
upload-tag:
|
||||
type: string
|
||||
default: "nightly"
|
||||
|
|
@ -20,10 +20,9 @@ env:
|
|||
TAG_NAME: "${{ inputs.upload-tag }}"
|
||||
VCPKG_BINARY_SOURCES: "clear;files,/opt/vcpkg-cache,readwrite"
|
||||
VCPKG_COMMIT_ID: "120deac3062162151622ca4860575a33844ba10b"
|
||||
VERSION: "1.4.6"
|
||||
NDK_VERSION: "r27c"
|
||||
ANDROID_SIGNING_KEY: "${{ secrets.ANDROID_SIGNING_KEY }}"
|
||||
UPLOAD_ARTIFACT: "${{ inputs.upload-artifact }}"
|
||||
UPLOAD_RELEASE: "${{ inputs.upload-release }}"
|
||||
|
||||
jobs:
|
||||
# -------------------------------------------------------
|
||||
|
|
@ -235,7 +234,7 @@ jobs:
|
|||
# build flutter
|
||||
pushd flutter
|
||||
flutter build apk "--${{ matrix.job.reltype }}" --target-platform android-arm64 --split-per-abi
|
||||
mv build/app/outputs/flutter-apk/app-arm64-v8a-${{ matrix.job.reltype }}.apk ../rustdesk-${{ env.VERSION }}-${{ matrix.job.arch }}${{ matrix.job.suffix }}.apk
|
||||
mv build/app/outputs/flutter-apk/app-arm64-v8a-${{ matrix.job.reltype }}.apk ../rustdesk-${{ env.TAG_NAME }}-${{ matrix.job.arch }}${{ matrix.job.suffix }}.apk
|
||||
;;
|
||||
armv7-linux-androideabi)
|
||||
mkdir -p ./flutter/android/app/src/main/jniLibs/armeabi-v7a
|
||||
|
|
@ -244,7 +243,7 @@ jobs:
|
|||
# build flutter
|
||||
pushd flutter
|
||||
flutter build apk "--${{ matrix.job.reltype }}" --target-platform android-arm --split-per-abi
|
||||
mv build/app/outputs/flutter-apk/app-armeabi-v7a-${{ matrix.job.reltype }}.apk ../rustdesk-${{ env.VERSION }}-${{ matrix.job.arch }}${{ matrix.job.suffix }}.apk
|
||||
mv build/app/outputs/flutter-apk/app-armeabi-v7a-${{ matrix.job.reltype }}.apk ../rustdesk-${{ env.TAG_NAME }}-${{ matrix.job.arch }}${{ matrix.job.suffix }}.apk
|
||||
;;
|
||||
x86_64-linux-android)
|
||||
mkdir -p ./flutter/android/app/src/main/jniLibs/x86_64
|
||||
|
|
@ -253,13 +252,13 @@ jobs:
|
|||
# build flutter
|
||||
pushd flutter
|
||||
flutter build apk "--${{ matrix.job.reltype }}" --target-platform android-x64 --split-per-abi
|
||||
mv build/app/outputs/flutter-apk/app-x86_64-${{ matrix.job.reltype }}.apk ../rustdesk-${{ env.VERSION }}-${{ matrix.job.arch }}${{ matrix.job.suffix }}.apk
|
||||
mv build/app/outputs/flutter-apk/app-x86_64-${{ matrix.job.reltype }}.apk ../rustdesk-${{ env.TAG_NAME }}-${{ matrix.job.arch }}${{ matrix.job.suffix }}.apk
|
||||
;;
|
||||
esac
|
||||
popd
|
||||
mkdir -p signed-apk
|
||||
mv ../rustdesk-${{ env.VERSION }}-${{ matrix.job.arch }}${{ matrix.job.suffix }}.apk signed-apk/ 2>/dev/null || \
|
||||
mv ./rustdesk-${{ env.VERSION }}-${{ matrix.job.arch }}${{ matrix.job.suffix }}.apk signed-apk/
|
||||
mv ../rustdesk-${{ env.TAG_NAME }}-${{ matrix.job.arch }}${{ matrix.job.suffix }}.apk signed-apk/ 2>/dev/null || \
|
||||
mv ./rustdesk-${{ env.TAG_NAME }}-${{ matrix.job.arch }}${{ matrix.job.suffix }}.apk signed-apk/
|
||||
|
||||
- name: Setup sign tool version variable
|
||||
shell: bash
|
||||
|
|
@ -269,7 +268,7 @@ jobs:
|
|||
|
||||
- uses: https://github.com/r0adkll/sign-android-release@v1
|
||||
name: Sign app APK
|
||||
if: env.ANDROID_SIGNING_KEY != null
|
||||
if: env.ANDROID_SIGNING_KEY != ''
|
||||
id: sign-rustdesk
|
||||
with:
|
||||
releaseDirectory: ./signed-apk
|
||||
|
|
@ -280,19 +279,29 @@ jobs:
|
|||
env:
|
||||
BUILD_TOOLS_VERSION: ${{ env.ANDROID_SIGN_TOOL_VERSION }}
|
||||
|
||||
- name: Upload signed APK
|
||||
if: env.ANDROID_SIGNING_KEY != null && env.UPLOAD_ARTIFACT == 'true'
|
||||
uses: https://code.forgejo.org/forgejo/upload-artifact@v4
|
||||
with:
|
||||
name: rustdesk-${{ env.VERSION }}-${{ matrix.job.arch }}.apk
|
||||
path: ${{ steps.sign-rustdesk.outputs.signedReleaseFile }}
|
||||
- name: Copy APK to release dir
|
||||
if: env.UPLOAD_RELEASE == 'true'
|
||||
shell: bash
|
||||
env:
|
||||
SIGNED_RELEASE_FILE: ${{ steps.sign-rustdesk.outputs.signedReleaseFile }}
|
||||
run: |
|
||||
mkdir -p dist/release
|
||||
if [[ -n "${ANDROID_SIGNING_KEY}" ]]; then
|
||||
cp "${SIGNED_RELEASE_FILE}" "dist/release/rustdesk-${{ env.TAG_NAME }}-${{ matrix.job.arch }}.apk"
|
||||
else
|
||||
cp "signed-apk/rustdesk-${{ env.TAG_NAME }}-${{ matrix.job.arch }}${{ matrix.job.suffix }}.apk" \
|
||||
"dist/release/rustdesk-${{ env.TAG_NAME }}-${{ matrix.job.arch }}.apk"
|
||||
fi
|
||||
|
||||
- name: Upload unsigned APK
|
||||
if: env.ANDROID_SIGNING_KEY == null && env.UPLOAD_ARTIFACT == 'true'
|
||||
uses: https://code.forgejo.org/forgejo/upload-artifact@v4
|
||||
- name: Create Release
|
||||
if: env.UPLOAD_RELEASE == 'true'
|
||||
uses: actions/forgejo-release@v2.12.1
|
||||
with:
|
||||
name: rustdesk-${{ env.VERSION }}-${{ matrix.job.arch }}.apk
|
||||
path: signed-apk/rustdesk-${{ env.VERSION }}-${{ matrix.job.arch }}${{ matrix.job.suffix }}.apk
|
||||
direction: upload
|
||||
token: ${{ secrets.FORGEJO_TOKEN }}
|
||||
tag: ${{ env.TAG_NAME }}
|
||||
title: Release ${{ env.TAG_NAME }}
|
||||
release-dir: dist/release
|
||||
|
||||
# -------------------------------------------------------
|
||||
# Step 3: Build universal APK (all ABIs combined)
|
||||
|
|
@ -418,7 +427,7 @@ jobs:
|
|||
popd
|
||||
mkdir -p signed-apk
|
||||
mv ./flutter/build/app/outputs/flutter-apk/app-${{ env.reltype }}.apk \
|
||||
signed-apk/rustdesk-${{ env.VERSION }}-universal${{ env.suffix }}.apk
|
||||
signed-apk/rustdesk-${{ env.TAG_NAME }}-universal${{ env.suffix }}.apk
|
||||
|
||||
- name: Setup sign tool version variable
|
||||
shell: bash
|
||||
|
|
@ -428,7 +437,7 @@ jobs:
|
|||
|
||||
- uses: https://github.com/r0adkll/sign-android-release@v1
|
||||
name: Sign universal APK
|
||||
if: env.ANDROID_SIGNING_KEY != null
|
||||
if: env.ANDROID_SIGNING_KEY != ''
|
||||
id: sign-rustdesk
|
||||
with:
|
||||
releaseDirectory: ./signed-apk
|
||||
|
|
@ -439,16 +448,26 @@ jobs:
|
|||
env:
|
||||
BUILD_TOOLS_VERSION: ${{ env.ANDROID_SIGN_TOOL_VERSION }}
|
||||
|
||||
- name: Upload signed universal APK
|
||||
if: env.ANDROID_SIGNING_KEY != null && env.UPLOAD_ARTIFACT == 'true'
|
||||
uses: https://code.forgejo.org/forgejo/upload-artifact@v4
|
||||
with:
|
||||
name: rustdesk-${{ env.VERSION }}-universal.apk
|
||||
path: ${{ steps.sign-rustdesk.outputs.signedReleaseFile }}
|
||||
- name: Copy universal APK to release dir
|
||||
if: env.UPLOAD_RELEASE == 'true'
|
||||
shell: bash
|
||||
env:
|
||||
SIGNED_RELEASE_FILE: ${{ steps.sign-rustdesk.outputs.signedReleaseFile }}
|
||||
run: |
|
||||
mkdir -p dist/release
|
||||
if [[ -n "${ANDROID_SIGNING_KEY}" ]]; then
|
||||
cp "${SIGNED_RELEASE_FILE}" "dist/release/rustdesk-${{ env.TAG_NAME }}-universal.apk"
|
||||
else
|
||||
cp "signed-apk/rustdesk-${{ env.TAG_NAME }}-universal${{ env.suffix }}.apk" \
|
||||
"dist/release/rustdesk-${{ env.TAG_NAME }}-universal.apk"
|
||||
fi
|
||||
|
||||
- name: Upload unsigned universal APK
|
||||
if: env.ANDROID_SIGNING_KEY == null && env.UPLOAD_ARTIFACT == 'true'
|
||||
uses: https://code.forgejo.org/forgejo/upload-artifact@v4
|
||||
- name: Create Release
|
||||
if: env.UPLOAD_RELEASE == 'true'
|
||||
uses: actions/forgejo-release@v2.12.1
|
||||
with:
|
||||
name: rustdesk-${{ env.VERSION }}-universal.apk
|
||||
path: signed-apk/rustdesk-${{ env.VERSION }}-universal${{ env.suffix }}.apk
|
||||
direction: upload
|
||||
token: ${{ secrets.FORGEJO_TOKEN }}
|
||||
tag: ${{ env.TAG_NAME }}
|
||||
title: Release ${{ env.TAG_NAME }}
|
||||
release-dir: dist/release
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue