2
0
mirror of https://github.com/inventree/inventree-app.git synced 2025-07-02 03:40:47 +00:00
Files
inventree-app/tasks.py
Ben Hagen c4e33a4c1a Use FVM in GitHub Actions and migrate to Flutter 3.32.4 (#641)
* feat: implement Flutter version management using FVM across CI workflows

* Flutter 3.29.3 + minor Package upgrades

* Replace deprecated `withOpacity`

* Upgrade major package versions without breaking changes.

* Disable unnecessary_async rule

Re-enable later

* New language version and automated fixes

- unnecessary_breaks
- unnecessary_underscore

* Update BUILDING.md to use fvm commands

* Add gitignore files for Android and iOS build artifacts

* Migrate iOS dependencies to Swift Package Manager

This is being done automatically by Flutter

* Flutter 3.32.4

* New sdk version

* docs: add IDE setup instructions and troubleshooting guide for FVM integration
2025-06-23 19:42:05 +10:00

40 lines
953 B
Python

"""Invoke tasks for building the InvenTree mobile app."""
import os
import sys
from invoke import task
@task
def clean(c):
"""Clean flutter build."""
c.run("fvm flutter clean")
@task
def update(c):
"""Update flutter dependencies."""
c.run("flutter pub get")
@task
def translate(c):
"""Update translation files."""
here = os.path.dirname(__file__)
l10_dir = os.path.join(here, "lib", "l10n")
l10_dir = os.path.abspath(l10_dir)
python = "python3" if sys.platform.lower() == "darwin" else "python"
c.run(f"cd {l10_dir} && {python} collect_translations.py")
@task(pre=[clean, update, translate])
def ios(c):
"""Build iOS app in release configuration."""
c.run("fvm flutter build ipa --release --no-tree-shake-icons")
@task(pre=[clean, update, translate])
def android(c):
"""Build Android app in release configuration."""
c.run("fvm flutter build appbundle --release --no-tree-shake-icons")