Skip to content

V0.3.6

V0.3.6 #26

Workflow file for this run

name: NosoSova Main Workflow
permissions:
contents: write
defaults:
run:
shell: bash
on:
push:
branches: [ main ]
tags: [ "*" ]
paths-ignore: [ "README.md" ]
pull_request:
branches: [ main ]
jobs:
build-linux:
name: Build Linux (ubuntu-latest;flutter 3.16.8)
runs-on: [ubuntu-latest]
strategy:
fail-fast: false
steps:
- name: Install Ubuntu packages
run: |
sudo apt-get update -y
sudo apt install -y ninja-build libgtk-3-dev
- name: Checkout Repository
uses: actions/checkout@v4
- name: Set up Flutter
uses: subosito/flutter-action@v2
with:
flutter-version: "3.16.8"
channel: "stable"
cache: true
- name: Get dependencies
run: flutter pub get
- name: Build Application
run: |
flutter config --enable-linux-desktop
flutter build linux --release
- name: List Files
run: |
echo "Listing build/linux/x64/release/bundle"
ls -alF build/linux/x64/release/bundle
- name: Upload bundle folder
uses: actions/upload-artifact@v4
with:
name: NosoSova-ubuntu-latest-x86_64
path: build/linux/x64/release/bundle
build-windows:
name: Build Windows (windows-latest;flutter 3.16.8)
runs-on: [windows-latest]
strategy:
fail-fast: false
steps:
- name: Checkout Repository
uses: actions/checkout@v4
- name: Set up Flutter
uses: subosito/flutter-action@v2
with:
flutter-version: "3.16.8"
channel: "stable"
cache: true
- name: Get dependencies
run: flutter pub get
- name: Build Application
run: |
flutter config --enable-windows-desktop
flutter build windows --release
- name: List Files
run: |
echo "Listing build/windows/x64/runner/Release"
ls -alF build/windows/x64/runner/Release
- name: Upload Release folder
uses: actions/upload-artifact@v4
with:
name: NosoSova-windows-latest-x86_64
path: build/windows/x64/runner/Release
# build-macos:
# name: Build macOS (macos-latest;flutter 3.16.0)
# runs-on: [macos-latest]
# strategy:
# fail-fast: false
# steps:
# - name: Checkout Repository
# uses: actions/checkout@v4
#
# - name: Set up Flutter
# uses: subosito/flutter-action@v2
# with:
# flutter-version: "3.16.0"
# channel: "stable"
# cache: true
# - name: Get dependencies
# run: flutter pub get
# - name: Build Application
# run: |
# flutter config --enable-macos-desktop
# flutter build macos --release
# - name: List Files
# run: |
# echo "Listing build/macos/Build/Products/Release/NosoSova.app"
# ls -alF build/macos/Build/Products/Release/NosoSova.app
# - name: Upload NosoSova.app folder
# uses: actions/upload-artifact@v4
# with:
# name: NosoSova-macos-latest-x86_64
# path: build/macos/Build/Products/Release/NosoSova.app
build-android:
name: Build Android (ubuntu-latest;flutter 3.16.8;Java zulu 17)
runs-on: [ubuntu-latest]
strategy:
fail-fast: false
steps:
- name: Setup Java
uses: actions/setup-java@v4
with:
distribution: "zulu"
java-version: "17"
- name: Checkout Repository
uses: actions/checkout@v4
- name: Set up Flutter
uses: subosito/flutter-action@v2
with:
flutter-version: "3.16.8"
channel: "stable"
cache: true
- name: Get dependencies
run: flutter pub get
- name: Build Application
run: flutter build apk --release
- name: List Files
run: |
echo "Listing build/app/outputs/apk"
ls -alF build/app/outputs/apk/release
- name: Upload apk folder
uses: actions/upload-artifact@v4
with:
name: NosoSova-ubuntu-latest-android
path: build/app/outputs/apk/release
# build-ios:
# name: Build iOS (macos-latest;flutter 3.16.0)
# runs-on: [macos-latest]
# strategy:
# fail-fast: false
#
# steps:
# - name: Checkout Repository
# uses: actions/checkout@v4
# - name: Set up Flutter
# uses: subosito/flutter-action@v2
# with:
# flutter-version: "3.16.0"
# channel: "stable"
# cache: true
# - name: Get dependencies
# run: flutter pub get
# - name: Build Application
# run: |
# flutter build ios --release --no-codesign
# - name: List Files
# run: |
# echo "Listing build"
# ls -alF build
#
# - name: Upload build folder
# uses: actions/upload-artifact@v4
# with:
# name: NosoSova-macos-latest-ios
# path: build
release:
if: contains(github.ref_type, 'tag')
#
name: Create GitHub Release
needs: [build-linux,build-windows,build-android]
runs-on: [ubuntu-latest]
strategy:
fail-fast: false
steps:
- name: Checkout Repository
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Export tag
run: echo "tag=${{ github.ref_name }}" >> "$GITHUB_ENV"
- name: Download the Release binaries
uses: actions/download-artifact@v4
- name: List files
run: |
echo "Listing Linux"
ls -alF NosoSova-ubuntu-latest-x86_64
echo "Listing Windows"
ls -alF NosoSova-windows-latest-x86_64
echo "Listing Android"
ls -alF NosoSova-ubuntu-latest-android
- name: Create Linux Archive
run: |
# Linux
cd NosoSova-ubuntu-latest-x86_64
chmod +x nososova
tar -zcvf ../NosoSova-x86_64-linux-${{ env.tag }}.tar.gz *
cd ..
# Windows
cd NosoSova-windows-latest-x86_64
zip -r ../NosoSova-x86_64-win64-${{ env.tag }}.zip *
cd ..
# Android
cd NosoSova-ubuntu-latest-android
mv app-release.apk nososova.apk
zip -r ../NosoSova-arm-android-APK-${{ env.tag }}.zip nososova.apk
cd ..
- name: Create GitHub release
uses: softprops/action-gh-release@v1
with:
name: NosoSova ${{ env.tag }}
body: "This text needs to be replaced by the git-cliff output.\r\nBut before that, you need to begin to use the proper way of wording the commit messages!!!"
files: |
*.tar.gz
*.zip
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}