v0.0.35 #9
Workflow file for this run
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 & Release | |
on: | |
push: | |
tags: | |
- v* | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref_name }} | |
cancel-in-progress: true | |
jobs: | |
build-and-release-android: | |
permissions: | |
contents: write | |
runs-on: ubuntu-latest | |
steps: | |
- name: checkout branch | |
uses: actions/checkout@v3 | |
- name: setup flutter | |
uses: subosito/flutter-action@v2.10.0 | |
with: | |
flutter-version: 3.13.0 | |
channel: 'stable' | |
- name: Setup Android keystore | |
run: | | |
echo "${{ secrets.SIGNING_KEY_STORE_BASE64 }}" | base64 -di > android/app/upload-keystore.jks | |
echo "${{ secrets.SIGNING_KEY_PROPERTIES }}" > android/key.properties | |
- name: flutter pub get | |
run: | | |
git config --global core.longpaths true | |
flutter pub get | |
- name: build android | |
run: | | |
flutter build apk --release --split-per-abi | |
cd build/app/outputs/flutter-apk | |
mv app-arm64-v8a-release.apk Mangayomi-${{ github.ref_name }}-android-arm64-v8a.apk | |
mv app-armeabi-v7a-release.apk Mangayomi-${{ github.ref_name }}-android-armeabi-v7a.apk | |
mv app-x86_64-release.apk Mangayomi-${{ github.ref_name }}-android-x86_64.apk | |
- name: upload artifact android | |
uses: actions/upload-artifact@v3 | |
with: | |
path: "build/app/outputs/flutter-apk/Mangayomi-*.apk" | |
- name: release packages android | |
uses: ncipollo/release-action@v1 | |
with: | |
artifacts: "build/app/outputs/flutter-apk/Mangayomi-*.apk" | |
allowUpdates: true | |
omitBody: true | |
build-and-release-ios-ipa: | |
permissions: | |
contents: write | |
runs-on: macos-latest | |
steps: | |
# Checkout branch | |
- name: checkout branch | |
uses: actions/checkout@v3 | |
- name: setup flutter | |
uses: subosito/flutter-action@v2.10.0 | |
with: | |
flutter-version: 3.13.0 | |
channel: 'stable' | |
- name: flutter pub get | |
run: | | |
git config --global core.longpaths true | |
flutter pub get | |
- name: build ios | |
run: | | |
flutter build ios --release --no-codesign | |
cd build/ios/iphoneos | |
mkdir Payload | |
cd Payload | |
ln -s ../Runner.app | |
cd .. | |
zip -r app-release.ipa Payload | |
mv app-release.ipa Mangayomi-${{ github.ref_name }}-ios.ipa | |
- name: upload artifact ios | |
uses: actions/upload-artifact@v3 | |
with: | |
path: "build/ios/iphoneos/Mangayomi-*.ipa" | |
- name: release package ios | |
uses: ncipollo/release-action@v1 | |
with: | |
artifacts: "build/ios/iphoneos/Mangayomi-*.ipa" | |
allowUpdates: true | |
omitBody: true | |
build-and-release-macos-dmg: | |
permissions: | |
contents: write | |
runs-on: macos-latest | |
steps: | |
- name: checkout branch | |
uses: actions/checkout@v3 | |
- name: setup flutter | |
uses: subosito/flutter-action@v2.10.0 | |
with: | |
flutter-version: 3.13.0 | |
channel: 'stable' | |
- name: flutter pub get | |
run: | | |
git config --global core.longpaths true | |
flutter pub get | |
- name: build macos | |
run: | | |
cd macos | |
pod update | |
cd .. | |
flutter build macos --release | |
brew install create-dmg | |
create-dmg --volname Mangayomi-${{ github.ref_name }}-macos --window-pos 200 120 --window-size 800 450 --icon-size 100 --app-drop-link 600 185 Mangayomi-${{ github.ref_name }}-macos.dmg build/macos/Build/Products/Release/Mangayomi.app | |
- name: upload artifact macos | |
uses: actions/upload-artifact@v3 | |
with: | |
path: "/Users/runner/work/mangayomi/mangayomi/*.dmg" | |
- name: release package macos | |
uses: ncipollo/release-action@v1 | |
with: | |
artifacts: "/Users/runner/work/mangayomi/mangayomi/*.dmg" | |
allowUpdates: true | |
omitBody: true | |
build-and-release-windows-zip: | |
permissions: | |
contents: write | |
runs-on: windows-latest | |
steps: | |
- name: checkout branch | |
uses: actions/checkout@v3 | |
- name: setup flutter | |
uses: subosito/flutter-action@v2.10.0 | |
with: | |
flutter-version: 3.13.0 | |
channel: 'stable' | |
- name: flutter pub get | |
run: | | |
git config --global core.longpaths true | |
flutter pub get | |
- name: build windows | |
run: | | |
flutter build windows --release | |
$DestDir = "build\windows\Mangayomi-${{ github.ref_name }}-windows" | |
$SrcDir = "build\windows\runner\Release" | |
New-Item -Path $DestDir -ItemType Directory | |
Copy-Item $SrcDir\* -Recurse $DestDir | |
Copy-Item -Filter *.dll -Path windows\* -Destination $DestDir -Force | |
Compress-Archive $DestDir build\windows\Mangayomi-${{ github.ref_name }}-windows.zip | |
- name: upload artifact windows | |
uses: actions/upload-artifact@v3 | |
with: | |
path: build\windows\Mangayomi-*.zip | |
- name: release package windows | |
uses: ncipollo/release-action@v1 | |
with: | |
artifacts: build\windows\Mangayomi-*.zip | |
allowUpdates: true | |
omitBody: true |