Release v1.19.0-beta.2 #121
Workflow file for this run
This file contains hidden or 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: Release | |
| on: | |
| push: | |
| tags: | |
| - "*" | |
| permissions: | |
| contents: write | |
| env: | |
| FLUTTER_VERSION: 3.32.7 | |
| jobs: | |
| build-android: | |
| name: Build Android (Common) | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - uses: subosito/flutter-action@v2 | |
| with: | |
| flutter-version: ${{ env.FLUTTER_VERSION }} | |
| cache: true | |
| - uses: actions/setup-java@v4 | |
| with: | |
| java-version: 21 | |
| distribution: "temurin" | |
| - name: Decode Keystore | |
| run: | | |
| echo "${{ secrets.KEYSTORE_BASE64 }}" | base64 --decode > android/app/keystore.jks | |
| - name: Create key.properties | |
| run: | | |
| echo "${{ secrets.KEY_PROPERTIES }}" > android/key.properties | |
| - name: Install dependencies | |
| run: flutter pub get | |
| - name: Build Android | |
| run: | | |
| flutter build apk | |
| flutter build apk --split-per-abi --target-platform=android-arm64 | |
| flutter build apk --split-per-abi --target-platform=android-arm | |
| flutter build apk --split-per-abi --target-platform=android-x64 | |
| - name: Rename .apk | |
| run: | | |
| cd build/app/outputs/flutter-apk | |
| mv app-common-release.apk ciyue-universal-release.apk | |
| mv app-armeabi-v7a-common-release.apk ciyue-armeabi-v7a-release.apk | |
| mv app-arm64-v8a-common-release.apk ciyue-arm64-v8a-release.apk | |
| mv app-x86_64-common-release.apk ciyue-x86_64-release.apk | |
| - uses: actions/upload-artifact@v4 | |
| with: | |
| name: APK | |
| path: build/app/outputs/flutter-apk/ciyue-*-release.apk | |
| build-android-full: | |
| name: Build Android (Full) | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - uses: subosito/flutter-action@v2 | |
| with: | |
| flutter-version: ${{ env.FLUTTER_VERSION }} | |
| cache: true | |
| - uses: actions/setup-java@v4 | |
| with: | |
| java-version: 21 | |
| distribution: "temurin" | |
| - name: Decode Keystore | |
| run: | | |
| echo "${{ secrets.KEYSTORE_BASE64 }}" | base64 --decode > android/app/keystore.jks | |
| - name: Create key.properties | |
| run: | | |
| echo "${{ secrets.KEY_PROPERTIES }}" > android/key.properties | |
| - name: Install dependencies | |
| run: flutter pub get | |
| - name: Build Android | |
| run: | | |
| flutter build apk --flavor=full | |
| flutter build apk --flavor=full --split-per-abi --target-platform=android-arm64 | |
| flutter build apk --flavor=full --split-per-abi --target-platform=android-arm | |
| flutter build apk --flavor=full --split-per-abi --target-platform=android-x64 | |
| - name: Rename .apk | |
| run: | | |
| cd build/app/outputs/flutter-apk | |
| mv app-full-release.apk ciyue-universal-full.apk | |
| mv app-armeabi-v7a-full-release.apk ciyue-armeabi-v7a-full.apk | |
| mv app-arm64-v8a-full-release.apk ciyue-arm64-v8a-full.apk | |
| mv app-x86_64-full-release.apk ciyue-x86_64-full.apk | |
| - uses: actions/upload-artifact@v4 | |
| with: | |
| name: APK-FULL | |
| path: build/app/outputs/flutter-apk/ciyue-*-full.apk | |
| build-windows: | |
| name: Build Windows | |
| runs-on: windows-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - uses: subosito/flutter-action@v2 | |
| with: | |
| flutter-version: ${{ env.FLUTTER_VERSION }} | |
| cache: true | |
| - name: Install dependencies | |
| run: flutter pub get | |
| - name: Build Windows | |
| run: flutter build windows | |
| - name: Copy DLLs | |
| run: | | |
| Copy-Item "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Redist\MSVC\14.44.35112\x64\Microsoft.VC143.CRT\vcruntime140.dll" build/windows/x64/runner/Release/ | |
| Copy-Item "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Redist\MSVC\14.44.35112\x64\Microsoft.VC143.CRT\vcruntime140_1.dll" build/windows/x64/runner/Release/ | |
| Copy-Item "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Redist\MSVC\14.44.35112\x64\Microsoft.VC143.CRT\msvcp140.dll" build/windows/x64/runner/Release/ | |
| - name: Install Inno Setup | |
| run: choco install innosetup -y | |
| - name: Compression | |
| run: Compress-Archive -Path build/windows/x64/runner/Release/* -DestinationPath ciyue-windows.zip | |
| - name: Install fastforge | |
| run: dart pub global activate fastforge | |
| - name: Build exe | |
| run: | | |
| fastforge package --platform windows --targets exe | |
| mv dist/*/*.exe . | |
| mv *.exe ciyue-installer.exe | |
| - name: Build msix | |
| run: | | |
| fastforge package --platform windows --targets msix | |
| mv dist/*/*.msix . | |
| mv *.msix ciyue-installer.msix | |
| - name: Upload | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: Windows | |
| path: | | |
| ciyue-installer.exe | |
| ciyue-installer.msix | |
| ciyue-windows.zip | |
| build-linux: | |
| name: Build Linux | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - uses: subosito/flutter-action@v2 | |
| with: | |
| flutter-version: ${{ env.FLUTTER_VERSION }} | |
| cache: true | |
| - name: Install dependencies | |
| run: | | |
| sudo apt update -y | |
| sudo apt install -y libgtk-3-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev gstreamer1.0-plugins-good gstreamer1.0-plugins-bad | |
| flutter pub get | |
| - name: Build Linux | |
| run: flutter build linux | |
| - name: Compression | |
| run: tar -cJvf ciyue-linux.tar.xz build/linux/x64/release/bundle/* | |
| - name: Prepare to Package | |
| run: | | |
| sudo apt install locate | |
| wget -O appimagetool "https://github.com/AppImage/appimagetool/releases/download/continuous/appimagetool-x86_64.AppImage" | |
| chmod +x appimagetool | |
| mv appimagetool /usr/local/bin/ | |
| dart pub global activate fastforge | |
| - name: Build AppImage | |
| run: | | |
| fastforge package --platform linux --targets appimage --skip-clean | |
| mv dist/*/*.AppImage . | |
| mv *.AppImage Ciyue-latest-x86_64.AppImage | |
| - name: Build Deb | |
| run: | | |
| fastforge package --platform linux --targets deb --skip-clean | |
| mv dist/*/*.deb . | |
| mv *.deb ciyue-x86_64.deb | |
| - name: Upload | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: Linux | |
| path: | | |
| ciyue-linux.tar.xz | |
| Ciyue-latest-x86_64.AppImage | |
| ciyue-x86_64.deb | |
| release: | |
| name: Release | |
| runs-on: ubuntu-latest | |
| needs: [build-android, build-android-full, build-windows, build-linux] | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Download artifacts | |
| uses: actions/download-artifact@v4 | |
| - uses: ncipollo/release-action@v1 | |
| with: | |
| artifacts: "APK/ciyue-*-release.apk,APK-FULL/ciyue-*-full.apk,Windows/*,Linux/*" | |
| tag: ${{ github.ref_name }} |