fixed bug, and updated workflow #104
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: Flutter CI | |
on: push | |
jobs: | |
build-and-release-linux: | |
runs-on: ubuntu-latest | |
if: startsWith(github.ref, 'refs/tags/') | |
permissions: | |
contents: write | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: subosito/flutter-action@v2 | |
with: | |
channel: 'stable' | |
flutter-version: '3.19.6' | |
- name: Install dependencies | |
run: sudo apt-get install -y clang cmake ninja-build pkg-config libgtk-3-dev liblzma-dev locate libfuse2 | |
- name: Install project dependencies | |
run: flutter pub get | |
- name: Generate intermediates | |
run: flutter pub run build_runner build --delete-conflicting-outputs | |
- name: Enable linux build | |
run: flutter config --enable-linux-desktop | |
- name: Build artifacts | |
run: flutter build linux --release | |
- name: Archive app | |
uses: thedoctor0/zip-release@master | |
with: | |
type: 'zip' | |
filename: Unyo-${{github.ref_name}}-linux.zip | |
directory: build/linux/x64/release/bundle | |
- name: Linux Archive Release | |
uses: softprops/action-gh-release@v1 | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
with: | |
files: build/linux/x64/release/bundle/Unyo-${{github.ref_name}}-linux.zip | |
- name: Copy AppDir | |
run: cp -r assets/Unyo.AppDir . | |
- name: Copy Compiled App | |
run: cp -r build/linux/x64/release/bundle/* Unyo.AppDir/. | |
- name: Copy appimagetool | |
run: cp assets/appimagetool.AppImage . | |
- name: Execute appimagetool | |
run: ./appimagetool.AppImage Unyo.AppDir Unyo.AppImage | |
- name: Linux AppImage Release | |
uses: softprops/action-gh-release@v1 | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
with: | |
files: /home/runner/work/Unyo/Unyo/Unyo.AppImage | |
- name: Activate flutter_to_debian | |
run: dart pub global activate flutter_to_debian | |
- name: Add Path | |
run: export PATH="$PATH":"$HOME/.pub-cache/bin" | |
- name: Build deb package | |
run: flutter_to_debian | |
- name: Linux Debain package Release | |
uses: softprops/action-gh-release@v1 | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
with: | |
files: build/linux/x64/release/debian/unyo_0.2.0_amd64.deb | |
build-and-release-windows: | |
runs-on: windows-latest | |
if: startsWith(github.ref, 'refs/tags/') | |
permissions: | |
contents: write | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: subosito/flutter-action@v2 | |
with: | |
channel: 'stable' | |
flutter-version: '3.19.5' | |
- name: Install project dependencies | |
run: flutter pub get | |
- name: Generate intermediates | |
run: flutter pub run build_runner build --delete-conflicting-outputs | |
- name: Enable windows builwindowsd | |
run: flutter config --enable-windows-desktop | |
- name: Build artifacts | |
run: flutter build windows --release | |
- name: Archive App | |
uses: thedoctor0/zip-release@master | |
with: | |
type: 'zip' | |
filename: Unyo-${{github.ref_name}}-windows.zip | |
directory: build\windows\x64\runner\Release | |
- name: Windows Archive Release | |
uses: softprops/action-gh-release@v1 | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
with: | |
files: build/windows/x64/runner/Release/Unyo-${{github.ref_name}}-windows.zip | |
- name: Build Msix | |
run: flutter pub run msix:create | |
- name: Windows Msix Release | |
uses: softprops/action-gh-release@v1 | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
with: | |
files: build/windows/x64/runner/Release/unyo.msix | |
build-and-release-macos: | |
runs-on: macos-14 | |
if: startsWith(github.ref, 'refs/tags/') | |
permissions: | |
contents: write | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: subosito/flutter-action@v2 | |
with: | |
channel: 'stable' | |
flutter-version: '3.19.5' | |
- name: Install dependencies | |
run: pip install dmgbuild | |
- name: Install project dependencies | |
run: flutter pub get | |
- name: Generate intermediates | |
run: flutter pub run build_runner build --delete-conflicting-outputs | |
- name: Enable macOS build | |
run: flutter config --enable-macos-desktop | |
- name: Build artifacts | |
run: flutter build macos --release | |
- name: Archive App | |
uses: thedoctor0/zip-release@master | |
with: | |
type: 'zip' | |
filename: Unyo-${{github.ref_name}}-macos.zip | |
directory: build/macos/Build/Products/Release | |
- name: macOS Archive Release | |
uses: softprops/action-gh-release@v1 | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
with: | |
files: build/macos/Build/Products/Release/Unyo-${{github.ref_name}}-macos.zip | |
- name: Package Macos App | |
run: | | |
brew install python-setuptools | |
npm install -g appdmg | |
mkdir -p build/${{ env.BUILD_VERSION }} | |
appdmg appdmg.json build/Unyo-macos-universal.dmg | |
flutter_distributor package --platform=macos --targets pkg --skip-clean | |
mv dist/**/unyo-*-macos.pkg build/Unyo-macos-universal.pkg | |
- name: Release Dmg | |
uses: thedoctor0/zip-release@master | |
with: | |
type: 'zip' | |
filename: Unyo-${{github.ref_name}}-macos.zip | |
directory: build/Spotube-macos-universal.dmg |