1
0
mirror of https://github.com/containers/podman.git synced 2026-02-05 06:45:31 +01:00

Merge pull request #27284 from l0rd/rootless-win-installer-first-draft

Add a new Windows installer supporting both user and machine scopes
This commit is contained in:
openshift-merge-bot[bot]
2025-10-20 13:02:29 +00:00
committed by GitHub
37 changed files with 2029 additions and 396 deletions

View File

@@ -188,10 +188,18 @@ jobs:
# functionality. We should avoid clobbering or re-building windows installers in most cases,
# For build-only, the .exe is saved in the workflow artifacts for a human
# to judge.
- name: Build
- name: Build the MSI
id: build
run: |
Push-Location contrib\win-installer
contrib\win-installer\build.ps1 `
-Version ${{steps.getversion.outputs.version}} `
-LocalReleaseDirPath ${{ github.workspace }}\release-artifacts `
-Architecture ${{ matrix.arch }}
Exit $LASTEXITCODE
- name: Build the bundle (legacy)
id: build-legacy
run: |
Push-Location contrib\win-installer-legacy
.\build.ps1 ${{steps.getversion.outputs.version}} prod ${{ github.workspace }}\release-artifacts
$code = $LASTEXITCODE
if ($code -eq 2) {
@@ -208,26 +216,40 @@ jobs:
Push-Location contrib\win-installer
Get-ChildItem
Pop-Location
- name: Rename the installer
Push-Location contrib\win-installer-legacy
Get-ChildItem
Pop-Location
- name: Rename the MSI
run: |
Push-Location contrib\win-installer
Copy-Item -Path podman-${{steps.getversion.outputs.version}}.msi -Destination podman-installer-windows-${{ matrix.arch }}.msi
Pop-Location
- name: Rename the bundle (legacy)
run: |
Push-Location contrib\win-installer-legacy
Copy-Item -Path podman-${{steps.getversion.outputs.version}}-setup.exe -Destination podman-installer-windows-${{ matrix.arch }}.exe
Pop-Location
- name: Upload the installer
- name: Upload the MSI
uses: actions/upload-artifact@v4
with:
name: win-msi-${{ matrix.arch }}
path: |
.\contrib\win-installer\podman-installer-windows-${{ matrix.arch }}.msi
- name: Upload the bundle (legacy)
uses: actions/upload-artifact@v4
with:
name: win-installer-${{ matrix.arch }}
path: |
.\contrib\win-installer\podman-installer-windows-${{ matrix.arch }}.exe
.\contrib\win-installer-legacy\podman-installer-windows-${{ matrix.arch }}.exe
# For backwards compatibility, we also upload the amd64 windows
# installer using the old name
- name: Upload the installer (legacy)
- name: Upload the bundle with the old name (legacy)
uses: actions/upload-artifact@v4
if: ${{ matrix.arch == 'amd64' }}
with:
name: win-installer
path: |
.\contrib\win-installer\podman-${{steps.getversion.outputs.version}}-setup.exe
.\contrib\win-installer-legacy\podman-${{steps.getversion.outputs.version}}-setup.exe
release:
name: Create Release
@@ -266,6 +288,8 @@ jobs:
mv mac-installers/* release-artifacts
mv win-installer-amd64/* release-artifacts
mv win-installer-arm64/* release-artifacts
mv win-msi-amd64/* release-artifacts
mv win-msi-arm64/* release-artifacts
pushd release-artifacts
sha256sum * > shasums
popd

View File

@@ -64,7 +64,7 @@ jobs:
- name: Check
id: check
run: |
Push-Location contrib\win-installer
Push-Location contrib\win-installer-legacy
.\check.ps1 ${{steps.getversion.outputs.version}}
$code = $LASTEXITCODE
if ($code -eq 2) {
@@ -108,7 +108,7 @@ jobs:
id: build
if: steps.check.outputs.already-exists != 'true' || steps.actual_dryrun.outputs.dryrun == 'true'
run: |
Push-Location contrib\win-installer
Push-Location contrib\win-installer-legacy
.\build.ps1 ${{steps.getversion.outputs.version}} prod
$code = $LASTEXITCODE
if ($code -eq 2) {
@@ -125,7 +125,7 @@ jobs:
name: installer
path: |
${{ steps.check.outputs.upload_asset_name }}
.\contrib\win-installer\shasums
.\contrib\win-installer-legacy\shasums
- name: Upload
if: >-
steps.actual_dryrun.outputs.dryrun == 'false' &&
@@ -134,7 +134,7 @@ jobs:
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
Push-Location contrib\win-installer
Push-Location contrib\win-installer-legacy
$version = "${{ steps.getversion.outputs.version }}"
if ($version[0] -ne "v") {
$version = "v$version"