refactor build

This commit is contained in:
Hiddify
2024-02-09 20:51:26 +01:00
parent 546987c28d
commit edb758eede
2 changed files with 42 additions and 52 deletions

View File

@@ -17,7 +17,17 @@ env:
NDK_VERSION: r26b
UPLOAD_ARTIFACT: "${{ inputs.upload-artifact }}"
TAG_NAME: "${{ inputs.tag-name }}"
TARGET_MAP: |
{
"AppImage": "Hiddify-Linux-x64",
"deb": "Hiddify-Debian-x64",
"rpm": "Hiddify-rpm-x64",
"apk": "Hiddify-Android",
"aab": "Hiddify-Android",
"exe": "Hiddify-Windows-x64",
"dmg": "Hiddify-MacOS",
"ipa": "Hiddify-iOS",
}
jobs:
build:
permissions: write-all
@@ -37,31 +47,16 @@ jobs:
os: windows-2019
aarch: amd64
targets: exe
filename: hiddify-windows-x64
- platform: linux-appimage
- platform: linux
os: ubuntu-20.04
aarch: amd64
targets: AppImage
filename: hiddify-linux-x64
- platform: linux-deb
os: ubuntu-20.04
aarch: amd64
targets: deb
filename: hiddify-debian-x64
- platform: linux-rpm
os: ubuntu-20.04
aarch: amd64
targets: rpm
filename: hiddify-rpm-x64
targets: AppImage,deb,rpm
- platform: macos
os: macos-13
aarch: universal
targets: dmg
filename: hiddify-macos-universal
runs-on: ${{ matrix.os }}
steps:
@@ -181,10 +176,10 @@ jobs:
run: |
mkdir out
ls -R ./build/app/outputs
cp ./build/app/outputs/flutter-apk/*arm64-v8a*.apk out/hiddify-android-arm64.apk || echo "no arm64 apk"
cp ./build/app/outputs/flutter-apk/*armeabi-v7a*.apk out/hiddify-android-arm7.apk || echo "no arm7 apk"
cp ./build/app/outputs/flutter-apk/*x86_64*.apk out/hiddify-android-x86_64.apk || echo "no x64 apk"
cp ./build/app/outputs/flutter-apk/app-release.apk out/hiddify-android-universal.apk || echo "no universal apk"
cp ./build/app/outputs/flutter-apk/*arm64-v8a*.apk out/${TARGET_MAP[apk]}-arm64.apk || echo "no arm64 apk"
cp ./build/app/outputs/flutter-apk/*armeabi-v7a*.apk out/${TARGET_MAP[apk]}-arm7.apk || echo "no arm7 apk"
cp ./build/app/outputs/flutter-apk/*x86_64*.apk out/${TARGET_MAP[apk]}-x86_64.apk || echo "no x64 apk"
cp ./build/app/outputs/flutter-apk/app-release.apk out/${TARGET_MAP[apk]}-universal.apk || echo "no universal apk"
- name: Copy to out Android AAB
if: matrix.platform == 'android-aab'
@@ -199,21 +194,25 @@ jobs:
ls -R dist/
mkdir out
mkdir tmp_out
EXT="${{ matrix.targets }}"
mv dist/*/*.$EXT tmp_out/${{matrix.filename}}.$EXT
chmod +x tmp_out/${{matrix.filename}}.$EXT
for EXT in $(echo ${{ matrix.targets }} | tr ',' '\n'); do
targetFile=${TARGET_MAP[$EXT]}.$EXT
mv dist/*/*.$EXT tmp_out/${targetFile}
chmod +x tmp_out/${targetFile}
if [ "${{matrix.platform}}" == "linux" ];then
cp ./.github/help/linux/* tmp_out/
else
cp ./.github/help/mac-windows/* tmp_out/
fi
if [[ "${{matrix.platform}}" == 'ios' ]];then
mv tmp_out/${{matrix.filename}}.ipa bin/${{matrix.filename}}.ipa
mv tmp_out/${targetFile} bin/${targetFile}
else
cd tmp_out
7z a ${{matrix.filename}}.zip ./
7z a ${TARGET_MAP[$EXT]}.zip ./
mv *.zip ../out/
mv ${{matrix.filename}}.AppImage HiddifyNext.AppImage || echo "no appimage" # added for appimage link
if [[ $EXT == 'AppImage' ]];then
mv ${targetFile} ../out/${targetFile} # added for appimage link
fi
fi

View File

@@ -104,17 +104,10 @@ android-aab-release:
ls -R build/app/outputs
windows-release:
flutter build -v windows --target lib/main.dart --dart-define sentry_dsn=*** --dart-define FLUTTER_BUILD_NAME=0.15.4 --dart-define FLUTTER_BUILD_NUMBER=1504
flutter_distributor package --platform windows --targets exe $(DISTRIBUTOR_ARGS)
flutter_distributor package --flutter-build-args=verbose --platform windows --targets exe $(DISTRIBUTOR_ARGS)
linux-release: linux-appimage-release linux-deb-release linux-rpm-release
linux-appimage-release:
flutter_distributor package --platform linux --targets appimage $(DISTRIBUTOR_ARGS)
linux-deb-release:
flutter_distributor package --platform linux --targets deb $(DISTRIBUTOR_ARGS)
linux-rpm-release:
flutter_distributor package --platform linux --targets rpm $(DISTRIBUTOR_ARGS)
linux-release:
flutter_distributor package --platform linux --targets deb,rpm,appimage $(DISTRIBUTOR_ARGS)
macos-release:
flutter_distributor package --platform macos --targets dmg $(DISTRIBUTOR_ARGS)
@@ -131,15 +124,13 @@ android-aab-libs: android-libs
windows-libs:
@$(MKDIR) $(DESKTOP_OUT) || echo Folder already exists. Skipping...
curl -L $(CORE_URL)/$(CORE_NAME)-windows-amd64.tar.gz | tar xz -C $(DESKTOP_OUT)/
curl -L $(CORE_URL)/$(CORE_NAME)-windows-amd64.tar.gz | tar xz -C $(DESKTOP_OUT)$(SEP)
ls $(DESKTOP_OUT)$(SEP)
linux-libs:
mkdir -p $(DESKTOP_OUT)
curl -L $(CORE_URL)/$(CORE_NAME)-linux-amd64.tar.gz | tar xz -C $(DESKTOP_OUT)/
linux-deb-libs:linux-libs
linux-rpm-libs:linux-libs
linux-appimage-libs:linux-libs
macos-libs:
mkdir -p $(DESKTOP_OUT)