Add iOS, macOS, and linux tar.gz builds to github action

This commit is contained in:
John Wesley 2024-01-18 14:54:05 -05:00
parent ebc5dcedbe
commit a519f26248
1 changed files with 27 additions and 1 deletions

View File

@ -34,17 +34,26 @@ jobs:
strategy:
fail-fast: false
matrix:
target: [android, linux, windows]
target: [android, ios, linux, macos, windows]
include:
- os: ubuntu-latest
target: android
build_target: apk
build_flags: --split-per-abi
build_path: build/app/outputs/flutter-apk
- os: macos-latest
target: ios
build_target: ios
build_flags: --no-codesign
build_path: build/ios
- os: ubuntu-latest
target: linux
build_target: linux
build_path: build/linux/x64/release/bundle
- os: macos-latest
target: macos
build_target: macos
build_path: build/macos/Build/Products/Release
- os: windows-latest
target: windows
build_target: windows
@ -110,6 +119,18 @@ jobs:
mv app-x86_64-release.apk $GITHUB_WORKSPACE/dist/interstellar-android-x86_64.apk
working-directory: ${{ matrix.build_path }}
- name: Compress build for iOS
if: matrix.target == 'ios'
run: |
mv iphoneos Payload
ditto -c -k --sequesterRsrc --keepParent Payload $GITHUB_WORKSPACE/dist/interstellar-ios.ipa
working-directory: ${{ matrix.build_path }}
- name: Build tar.gz for Linux
if: matrix.target == 'Linux'
run: tar -czf $GITHUB_WORKSPACE/dist/interstellar-linux-x86_64.tar.gz *
working-directory: ${{ matrix.build_path }}
- name: Build AppImage for Linux
if: matrix.target == 'linux'
run: |
@ -118,6 +139,11 @@ jobs:
cp $(echo $(ldd -d linux/appimage/interstellar | grep -Eo ' (/usr)?/lib/[^ ]*') $(ldd -d linux/appimage/lib/libflutter_linux_gtk.so | grep -Eo ' (/usr)?/lib/[^ ]*') | tr ' ' '\n' | sort | uniq -u) linux/appimage/lib/
appimagetool linux/appimage dist/interstellar-linux-x86_64.AppImage
- name: Compress build for macOS
if: matrix.target == 'macOS'
run: ditto -c -k --sequesterRsrc --keepParent interstellar.app $GITHUB_WORKSPACE/interstellar-macos-x86_64.zip
working-directory: ${{ matrix.build_path }}
- name: Compress build for Windows
if: matrix.target == 'windows'
run: compress-archive -Path * -DestinationPath ${env:GITHUB_WORKSPACE}\dist\interstellar-windows-x86_64.zip