|
75 | 75 | files: artifacts/**/* |
76 | 76 | env: |
77 | 77 | GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |
| 78 | + |
| 79 | + windows-msi: |
| 80 | + name: Build & Package (Windows, MSI + debug) |
| 81 | + runs-on: windows-latest |
| 82 | + # optional: run only for tags; remove if you want every push/PR |
| 83 | + if: ${{ startsWith(github.ref, 'refs/tags/') }} |
| 84 | + |
| 85 | + steps: |
| 86 | + - uses: actions/checkout@v4 |
| 87 | + |
| 88 | + - name: Set up Temurin JDK 21 |
| 89 | + uses: actions/setup-java@v4 |
| 90 | + with: |
| 91 | + distribution: temurin |
| 92 | + java-version: '21' |
| 93 | + |
| 94 | + - name: Install WiX 3.14.1 |
| 95 | + shell: pwsh |
| 96 | + run: | |
| 97 | + choco install wixtoolset --version=3.14.1 -y |
| 98 | + echo "C:\Program Files (x86)\WiX Toolset v3.14\bin" | Out-File -FilePath $env:GITHUB_PATH -Append |
| 99 | +
|
| 100 | + - name: Tool versions |
| 101 | + shell: pwsh |
| 102 | + run: | |
| 103 | + mvn -version |
| 104 | + Write-Host "JAVA_HOME: $env:JAVA_HOME" |
| 105 | + jpackage --version |
| 106 | + Write-Host "WiX (light.exe):"; where.exe light.exe |
| 107 | + Write-Host "WiX (candle.exe):"; where.exe candle.exe |
| 108 | +
|
| 109 | + - name: Build (debug) |
| 110 | + run: mvn -B -e -X -DskipTests clean package |
| 111 | + |
| 112 | + - name: Package MSI with jpackage (verbose, fixed temp) |
| 113 | + shell: pwsh |
| 114 | + run: | |
| 115 | + $temp = "D:\a\_wix_tmp" |
| 116 | + New-Item -ItemType Directory -Force -Path $temp | Out-Null |
| 117 | + mvn -B -e -X -DskipTests -Djpackage.verbose=true -Djpackage.temp="$temp" jpackage:jpackage |
| 118 | +
|
| 119 | + - name: Upload installers (MSI/EXE) |
| 120 | + if: always() |
| 121 | + uses: actions/upload-artifact@v4 |
| 122 | + with: |
| 123 | + name: windows-installers |
| 124 | + path: | |
| 125 | + **\target\dist\*.msi |
| 126 | + **\target\dist\*.exe |
| 127 | + **\target\*.msi |
| 128 | + **\target\*.exe |
| 129 | + if-no-files-found: warn |
| 130 | + |
| 131 | + - name: Upload WiX & jpackage temps |
| 132 | + if: always() |
| 133 | + uses: actions/upload-artifact@v4 |
| 134 | + with: |
| 135 | + name: wix-and-jpackage-temp |
| 136 | + path: | |
| 137 | + D:\a\_wix_tmp\** |
| 138 | + **\jdk.jpackage*\wixobj\** |
| 139 | + **\jdk.jpackage*\*.wxs |
| 140 | + **\jdk.jpackage*\*.wixpdb |
| 141 | + **\jdk.jpackage*\*.wixobj |
| 142 | + **\images\win-msi.image\** |
| 143 | + if-no-files-found: ignore |
| 144 | + |
| 145 | + - name: Upload Maven logs |
| 146 | + if: always() |
| 147 | + uses: actions/upload-artifact@v4 |
| 148 | + with: |
| 149 | + name: maven-logs |
| 150 | + path: | |
| 151 | + **\mvn*.log |
| 152 | + **\build.log |
| 153 | + **\surefire-reports\** |
| 154 | + if-no-files-found: ignore |
0 commit comments