diff --git a/.github/workflows/build-cli.yml b/.github/workflows/build-cli.yml index 6cab29ae..85e7e5be 100644 --- a/.github/workflows/build-cli.yml +++ b/.github/workflows/build-cli.yml @@ -14,7 +14,7 @@ on: workflow_dispatch: jobs: - build-docker: + build-linux: runs-on: ubuntu-latest defaults: run: @@ -31,4 +31,35 @@ jobs: run: uv sync --frozen - name: Build + run: uv run poe nuitka-linux + + - name: Upload Linux CLI artifact + uses: actions/upload-artifact@v4 + with: + name: cli-linux + path: app.bin + + build-windows: + runs-on: windows-latest + defaults: + run: + working-directory: ./src/cli + + steps: + - name: Checkout repository + uses: actions/checkout@v6 + + - name: Install uv + uses: astral-sh/setup-uv@v7 + + - name: Install deps with uv + run: uv sync --frozen + + - name: Build (Windows) via poe run: uv run poe nuitka + + - name: Upload Windows CLI artifact + uses: actions/upload-artifact@v4 + with: + name: cli-windows + path: app.exe diff --git a/src/cli/pyproject.toml b/src/cli/pyproject.toml index 07914488..0a06f530 100644 --- a/src/cli/pyproject.toml +++ b/src/cli/pyproject.toml @@ -23,6 +23,7 @@ dev = ["poethepoet>=0.39.0"] [tool.poe.tasks] # Is not possible to build due to type hint error nuitka = "nuitka --standalone --onefile --clang --lto=yes --python-flag=-m --python-flag=-OO --disable-bytecode-cache ./app" +nuitka-linux = "nuitka --standalone --onefile --clang --lto=yes --python-flag=-m --python-flag=-OO --disable-bytecode-cache ./app" nuitka-debug = "nuitka --standalone --onefile --clang --lto=yes --debug --python-flag=-m --python-flag=-OO --disable-bytecode-cache ./app"