diff --git a/.github/workflows/msi.yml b/.github/workflows/msi.yml new file mode 100644 index 0000000..3bafa2c --- /dev/null +++ b/.github/workflows/msi.yml @@ -0,0 +1,32 @@ +name: MSI + +on: + workflow_dispatch: + +jobs: + build: + runs-on: windows-latest + steps: + - uses: actions/checkout@v4 + + - uses: dtolnay/rust-toolchain@stable + + - uses: Swatinem/rust-cache@v2 + + - name: Build CLI + run: cargo build --release + + - name: Build Desktop + run: cargo build --release --features desktop --bin cagire-desktop + + - name: Install cargo-wix + run: cargo install cargo-wix + + - name: Build MSI + run: cargo wix --no-build --nocapture --package cagire -C -p -C x64 + + - name: Upload MSI + uses: actions/upload-artifact@v4 + with: + name: cagire-msi + path: target/wix/*.msi diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 7bb2400..96c4cda 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -149,7 +149,7 @@ jobs: - name: Build MSI installer (Windows) if: runner.os == 'Windows' - run: cargo wix --no-build --nocapture -C -p -C x64 + run: cargo wix --no-build --nocapture --package cagire -C -p -C x64 - name: Upload MSI installer (Windows) if: runner.os == 'Windows' diff --git a/scripts/build-all.sh b/scripts/build-all.sh index b66d47b..fc0087a 100755 --- a/scripts/build-all.sh +++ b/scripts/build-all.sh @@ -330,7 +330,7 @@ copy_artifacts() { # MSI installer for Windows targets if [[ "$os" == "windows" ]] && command -v cargo-wix &>/dev/null; then echo " Building MSI installer..." - cargo wix --no-build --nocapture -C -p -C x64 + cargo wix --no-build --nocapture --package cagire -C -p -C x64 cp target/wix/*.msi "$OUT/" 2>/dev/null && echo " MSI -> $OUT/" || true fi