mirror of
https://github.com/containers/podman.git
synced 2025-05-17 06:59:07 +08:00
Merge pull request #26089 from l0rd/release-win-arm64-artifacts
Release win arm64 artifacts
This commit is contained in:
23
.github/workflows/release.yml
vendored
23
.github/workflows/release.yml
vendored
@ -144,6 +144,9 @@ jobs:
|
|||||||
|
|
||||||
windows-installer:
|
windows-installer:
|
||||||
name: Build Windows Installer
|
name: Build Windows Installer
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
arch: [amd64, arm64]
|
||||||
runs-on: windows-latest
|
runs-on: windows-latest
|
||||||
needs: [check, build-artifacts]
|
needs: [check, build-artifacts]
|
||||||
env:
|
env:
|
||||||
@ -198,13 +201,29 @@ jobs:
|
|||||||
}
|
}
|
||||||
Pop-Location
|
Pop-Location
|
||||||
Exit $code
|
Exit $code
|
||||||
- name: Display structure of downloaded files
|
env:
|
||||||
|
PODMAN_ARCH: ${{ matrix.arch }}
|
||||||
|
- name: Display structure of built files
|
||||||
run: |
|
run: |
|
||||||
Push-Location contrib\win-installer
|
Push-Location contrib\win-installer
|
||||||
Get-ChildItem
|
Get-ChildItem
|
||||||
Pop-Location
|
Pop-Location
|
||||||
- name: Artifact
|
- name: Rename the installer
|
||||||
|
run: |
|
||||||
|
Push-Location contrib\win-installer
|
||||||
|
Copy-Item -Path podman-${{steps.getversion.outputs.version}}-setup.exe -Destination podman-installer-windows-${{ matrix.arch }}.exe
|
||||||
|
Pop-Location
|
||||||
|
- name: Upload the installer
|
||||||
uses: actions/upload-artifact@v4
|
uses: actions/upload-artifact@v4
|
||||||
|
with:
|
||||||
|
name: win-installer-${{ matrix.arch }}
|
||||||
|
path: |
|
||||||
|
.\contrib\win-installer\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)
|
||||||
|
uses: actions/upload-artifact@v4
|
||||||
|
if: ${{ matrix.arch == 'amd64' }}
|
||||||
with:
|
with:
|
||||||
name: win-installer
|
name: win-installer
|
||||||
path: |
|
path: |
|
||||||
|
15
Makefile
15
Makefile
@ -847,7 +847,7 @@ podman-remote-release-%.zip: test/version/version ## Build podman-remote for %=$
|
|||||||
$(MAKE) $(GOPLAT) podman-remote; \
|
$(MAKE) $(GOPLAT) podman-remote; \
|
||||||
fi
|
fi
|
||||||
if [[ "$(GOOS)" == "windows" ]]; then \
|
if [[ "$(GOOS)" == "windows" ]]; then \
|
||||||
$(MAKE) $(GOPLAT) TMPDIR="" win-gvproxy; \
|
$(MAKE) $(GOPLAT) TMPDIR="" win-gvproxy-$(GOARCH); \
|
||||||
fi
|
fi
|
||||||
if [[ "$(GOOS)" == "darwin" ]]; then \
|
if [[ "$(GOOS)" == "darwin" ]]; then \
|
||||||
$(MAKE) $(GOPLAT) podman-mac-helper;\
|
$(MAKE) $(GOPLAT) podman-mac-helper;\
|
||||||
@ -862,10 +862,15 @@ podman-remote-release-%.zip: test/version/version ## Build podman-remote for %=$
|
|||||||
|
|
||||||
# Downloads pre-built gvproxy and win-sshproxy helpers. See comment on GVPROXY_VERSION declaration
|
# Downloads pre-built gvproxy and win-sshproxy helpers. See comment on GVPROXY_VERSION declaration
|
||||||
.PHONY: win-gvproxy
|
.PHONY: win-gvproxy
|
||||||
win-gvproxy: test/version/version
|
win-gvproxy: win-gvproxy-amd64 # Keep this target for backwards compatibility
|
||||||
|
|
||||||
|
win-gvproxy-%: test/version/version
|
||||||
|
$(eval GOARCH := $*)
|
||||||
|
$(eval GVPROXY_FILENAME := $(if $(filter arm64,$(GOARCH)), gvproxy-windows-arm64.exe,gvproxy-windowsgui.exe))
|
||||||
|
$(eval SSHPROXY_FILENAME := $(if $(filter arm64,$(GOARCH)), win-sshproxy-arm64.exe, win-sshproxy.exe))
|
||||||
mkdir -p bin/windows/
|
mkdir -p bin/windows/
|
||||||
curl -sSL -o bin/windows/gvproxy.exe --retry 5 https://github.com/containers/gvisor-tap-vsock/releases/download/$(GVPROXY_VERSION)/gvproxy-windowsgui.exe
|
curl -sSL -o bin/windows/gvproxy.exe --retry 5 https://github.com/containers/gvisor-tap-vsock/releases/download/$(GVPROXY_VERSION)/$(GVPROXY_FILENAME)
|
||||||
curl -sSL -o bin/windows/win-sshproxy.exe --retry 5 https://github.com/containers/gvisor-tap-vsock/releases/download/$(GVPROXY_VERSION)/win-sshproxy.exe
|
curl -sSL -o bin/windows/win-sshproxy.exe --retry 5 https://github.com/containers/gvisor-tap-vsock/releases/download/$(GVPROXY_VERSION)/$(SSHPROXY_FILENAME)
|
||||||
|
|
||||||
.PHONY: rpm
|
.PHONY: rpm
|
||||||
rpm: ## Build rpm packages
|
rpm: ## Build rpm packages
|
||||||
@ -1059,6 +1064,8 @@ release-artifacts: clean-binaries
|
|||||||
mv podman-remote-release-darwin_arm64.zip release/
|
mv podman-remote-release-darwin_arm64.zip release/
|
||||||
$(MAKE) podman-remote-release-windows_amd64.zip
|
$(MAKE) podman-remote-release-windows_amd64.zip
|
||||||
mv podman-remote-release-windows_amd64.zip release/
|
mv podman-remote-release-windows_amd64.zip release/
|
||||||
|
$(MAKE) podman-remote-release-windows_arm64.zip
|
||||||
|
mv podman-remote-release-windows_arm64.zip release/
|
||||||
$(MAKE) podman-remote-static-linux_amd64
|
$(MAKE) podman-remote-static-linux_amd64
|
||||||
tar -cvzf podman-remote-static-linux_amd64.tar.gz bin/podman-remote-static-linux_amd64
|
tar -cvzf podman-remote-static-linux_amd64.tar.gz bin/podman-remote-static-linux_amd64
|
||||||
$(MAKE) podman-remote-static-linux_arm64
|
$(MAKE) podman-remote-static-linux_arm64
|
||||||
|
@ -105,7 +105,7 @@ if ($ENV:INSTVER -eq "") {
|
|||||||
}
|
}
|
||||||
|
|
||||||
$installerPlatform = ""
|
$installerPlatform = ""
|
||||||
if ($null -eq $ENV:PODMAN_ARCH -or $ENV:PODMAN_ARCH -eq "amd64") {
|
if ($null -eq $ENV:PODMAN_ARCH -or "" -eq $ENV:PODMAN_ARCH -or "amd64" -eq $ENV:PODMAN_ARCH) {
|
||||||
$installerPlatform = "x64"
|
$installerPlatform = "x64"
|
||||||
} elseif ($ENV:PODMAN_ARCH -eq "arm64") {
|
} elseif ($ENV:PODMAN_ARCH -eq "arm64") {
|
||||||
$installerPlatform = "arm64"
|
$installerPlatform = "arm64"
|
||||||
|
@ -97,10 +97,14 @@ try {
|
|||||||
$restore = 1
|
$restore = 1
|
||||||
$ProgressPreference = 'SilentlyContinue';
|
$ProgressPreference = 'SilentlyContinue';
|
||||||
|
|
||||||
|
if ($null -eq $ENV:PODMAN_ARCH -or "" -eq $ENV:PODMAN_ARCH ) {
|
||||||
|
Write-Warning "PODMAN_ARCH not set, defaulting to amd64"
|
||||||
|
$ENV:PODMAN_ARCH = "amd64"
|
||||||
|
}
|
||||||
if ($releaseDir.Length -gt 0) {
|
if ($releaseDir.Length -gt 0) {
|
||||||
Copy-Item -Path "$releaseDir/podman-remote-release-windows_amd64.zip" "release.zip"
|
Copy-Item -Path "$releaseDir/podman-remote-release-windows_${ENV:PODMAN_ARCH}.zip" "release.zip"
|
||||||
} else {
|
} else {
|
||||||
DownloadOrSkip "$base_url/releases/download/$version/podman-remote-release-windows_amd64.zip" "release.zip"
|
DownloadOrSkip "$base_url/releases/download/$version/podman-remote-release-windows_${ENV:PODMAN_ARCH}.zip" "release.zip"
|
||||||
DownloadOptional "$base_url/releases/download/$version/shasums" ..\shasums
|
DownloadOptional "$base_url/releases/download/$version/shasums" ..\shasums
|
||||||
}
|
}
|
||||||
Expand-Archive -Path release.zip
|
Expand-Archive -Path release.zip
|
||||||
|
@ -14,6 +14,7 @@ param (
|
|||||||
Write-Warning "Unsupported architecture $arch. Using default ($defaultArchitecture)."
|
Write-Warning "Unsupported architecture $arch. Using default ($defaultArchitecture)."
|
||||||
return $defaultArchitecture
|
return $defaultArchitecture
|
||||||
}
|
}
|
||||||
|
return $arch
|
||||||
),
|
),
|
||||||
[parameter(ValueFromRemainingArguments)][object[]]$params = @()
|
[parameter(ValueFromRemainingArguments)][object[]]$params = @()
|
||||||
)
|
)
|
||||||
@ -109,7 +110,7 @@ function Installer{
|
|||||||
[string]$version,
|
[string]$version,
|
||||||
[string]$suffix = "dev"
|
[string]$suffix = "dev"
|
||||||
);
|
);
|
||||||
Write-Host "Building the windows installer"
|
Write-Host "Building the windows installer for $architecture"
|
||||||
|
|
||||||
# Check for the files to include in the installer
|
# Check for the files to include in the installer
|
||||||
$requiredArtifacts = @(
|
$requiredArtifacts = @(
|
||||||
|
Reference in New Issue
Block a user