Build all app at once #5
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build all app at once | |
on: workflow_dispatch | |
jobs: | |
build-linux-deb: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: subosito/flutter-action@v2 | |
with: | |
channel: 'stable' | |
flutter-version: '3.22.2' | |
- name: Clone project | |
run: git clone https://github.com/anandnet/Harmony-Music.git | |
- name: Flutter doctor | |
run: flutter doctor | |
- name: Install project dependencies | |
working-directory: ./Harmony-Music | |
run: flutter pub get | |
- name: Update lang data | |
working-directory: ./Harmony-Music | |
run: dart localization/generator.dart | |
- name: Set update check flag to true | |
working-directory: ./Harmony-Music/lib/utils | |
run: echo "const updateCheckFlag = true;" > update_check_flag_file.dart | |
- name: install required deps for linux package | |
run: | | |
sudo apt-get install libmpv-dev mpv libayatana-appindicator3-dev ninja-build libgtk-3-dev | |
- name: Flutter doctor | |
run: flutter doctor | |
- name: Build linux deb package | |
working-directory: ./Harmony-Music | |
run: | | |
dart pub global activate flutter_distributor | |
flutter_distributor package --platform linux --targets deb | |
- name: Upload linux deb artifact | |
uses: actions/upload-artifact@v4 | |
with: | |
name: Harmony music linux deb | |
path: ./Harmony-Music/dist/* | |
build-android-apk-and-windows-exe: | |
runs-on: windows-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: subosito/flutter-action@v2 | |
with: | |
channel: 'stable' | |
flutter-version: '3.22.2' | |
- uses: actions/setup-java@v4 | |
with: | |
distribution: 'microsoft' | |
java-version: '11' | |
- name: Clone project | |
run: git clone https://github.com/anandnet/Harmony-Music.git | |
- name: Flutter doctor | |
run: flutter doctor | |
- name: Install project dependencies | |
working-directory: ./Harmony-Music | |
run: flutter pub get | |
- name: Update lang data | |
working-directory: ./Harmony-Music | |
run: dart localization/generator.dart | |
- name: Set update check flag to true | |
working-directory: ./Harmony-Music/lib/utils | |
run: echo "const updateCheckFlag = true;" > update_check_flag_file.dart | |
- name: Build android apk | |
working-directory: ./Harmony-Music | |
run: | | |
flutter build apk --split-per-abi --release | |
flutter build apk | |
- name: Upload apk artifact | |
uses: actions/upload-artifact@v4 | |
with: | |
name: Harmony music apk | |
path: ./Harmony-Music/build/app/outputs/flutter-apk/*apk | |
- name: Build windows exe package | |
working-directory: ./Harmony-Music | |
run: | | |
dart pub global activate flutter_distributor | |
flutter_distributor package --platform windows --targets exe | |
- name: Upload Windows exe artifact | |
uses: actions/upload-artifact@v4 | |
with: | |
name: Harmony music windows exe | |
path: ./Harmony-Music/dist/* | |
build-ios-ipa: | |
runs-on: macos-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: subosito/flutter-action@v2 | |
with: | |
channel: 'stable' | |
flutter-version: '3.22.2' | |
- name: Clone project | |
run: git clone https://github.com/anandnet/Harmony-Music.git | |
- name: Flutter doctor | |
run: flutter doctor | |
- name: Install project dependencies | |
working-directory: ./Harmony-Music | |
run: flutter pub get | |
- name: Update lang data | |
working-directory: ./Harmony-Music | |
run: dart localization/generator.dart | |
- name: Set update check flag to true | |
working-directory: ./Harmony-Music/lib/utils | |
run: echo "const updateCheckFlag = true;" > update_check_flag_file.dart | |
- name: release ios package | |
working-directory: ./Harmony-Music | |
run: flutter build ios --release --no-codesign | |
- run: mkdir Payload | |
working-directory: ./Harmony-Music/build/ios/iphoneos | |
- run: mv Runner.app/ Payload | |
working-directory: ./Harmony-Music/build/ios/iphoneos | |
- name: Zip output | |
run: zip -qq -r -9 harmonymusic.ipa Payload | |
working-directory: ./Harmony-Music/build/ios/iphoneos | |
- name: Upload ios ipa artifact | |
uses: actions/upload-artifact@v4 | |
with: | |
name: Harmony music ios ipa | |
path: ./Harmony-Music/build/ios/iphoneos/harmonymusic.ipa | |