mirror of https://github.com/containers/podman.git
Merge pull request #16807 from arixmkii/gvproxy
Add gvproxy to windows packages
This commit is contained in:
commit
df2e83b2eb
15
Makefile
15
Makefile
|
@ -477,7 +477,7 @@ $(MANPAGES): %: %.md .install.md2man docdir
|
||||||
-e 's/\[\([^]]*\)](http[^)]\+)/\1/g' \
|
-e 's/\[\([^]]*\)](http[^)]\+)/\1/g' \
|
||||||
-e 's;<\(/\)\?\(a\|a\s\+[^>]*\|sup\)>;;g' \
|
-e 's;<\(/\)\?\(a\|a\s\+[^>]*\|sup\)>;;g' \
|
||||||
-e 's/\\$$/ /g' $< |\
|
-e 's/\\$$/ /g' $< |\
|
||||||
$(GOMD2MAN) -in /dev/stdin -out $(subst source/markdown,build/man,$@)
|
$(GOMD2MAN) -out $(subst source/markdown,build/man,$@)
|
||||||
|
|
||||||
.PHONY: docdir
|
.PHONY: docdir
|
||||||
docdir:
|
docdir:
|
||||||
|
@ -731,7 +731,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-sshproxy; \
|
$(MAKE) $(GOPLAT) TMPDIR="" win-gvproxy; \
|
||||||
fi
|
fi
|
||||||
if [[ "$(GOOS)" == "darwin" ]]; then \
|
if [[ "$(GOOS)" == "darwin" ]]; then \
|
||||||
$(MAKE) $(GOPLAT) podman-mac-helper;\
|
$(MAKE) $(GOPLAT) podman-mac-helper;\
|
||||||
|
@ -751,7 +751,7 @@ podman.msi: test/version/version ## Build podman-remote, package for installati
|
||||||
podman-v%.msi: test/version/version
|
podman-v%.msi: test/version/version
|
||||||
# Passing explicitly OS and ARCH, because ARM is not supported by wixl https://gitlab.gnome.org/GNOME/msitools/-/blob/master/tools/wixl/builder.vala#L3
|
# Passing explicitly OS and ARCH, because ARM is not supported by wixl https://gitlab.gnome.org/GNOME/msitools/-/blob/master/tools/wixl/builder.vala#L3
|
||||||
$(MAKE) GOOS=windows GOARCH=amd64 podman-remote-windows-docs
|
$(MAKE) GOOS=windows GOARCH=amd64 podman-remote-windows-docs
|
||||||
$(MAKE) GOOS=windows GOARCH=amd64 clean-binaries podman-remote podman-winpath win-sshproxy
|
$(MAKE) GOOS=windows GOARCH=amd64 clean-binaries podman-remote podman-winpath win-gvproxy
|
||||||
$(eval DOCFILE := docs/build/remote/windows)
|
$(eval DOCFILE := docs/build/remote/windows)
|
||||||
find $(DOCFILE) -print | \
|
find $(DOCFILE) -print | \
|
||||||
wixl-heat --var var.ManSourceDir --component-group ManFiles \
|
wixl-heat --var var.ManSourceDir --component-group ManFiles \
|
||||||
|
@ -761,16 +761,17 @@ podman-v%.msi: test/version/version
|
||||||
-o $@ contrib/msi/podman.wxs $(DOCFILE)/pages.wsx --arch x64
|
-o $@ contrib/msi/podman.wxs $(DOCFILE)/pages.wsx --arch x64
|
||||||
|
|
||||||
# Checks out and builds win-sshproxy helper. See comment on GV_GITURL declaration
|
# Checks out and builds win-sshproxy helper. See comment on GV_GITURL declaration
|
||||||
.PHONY: win-sshproxy
|
.PHONY: win-gvproxy
|
||||||
win-sshproxy: test/version/version
|
win-gvproxy: test/version/version
|
||||||
rm -rf tmp-gv; mkdir tmp-gv
|
rm -rf tmp-gv; mkdir tmp-gv
|
||||||
(cd tmp-gv; \
|
(cd tmp-gv; \
|
||||||
git init; \
|
git init; \
|
||||||
git remote add origin $(GV_GITURL); \
|
git remote add origin $(GV_GITURL); \
|
||||||
git fetch --depth 1 origin $(GV_SHA); \
|
git fetch --depth 1 origin $(GV_SHA); \
|
||||||
git checkout FETCH_HEAD; make win-sshproxy)
|
git checkout FETCH_HEAD; make win-gvproxy win-sshproxy)
|
||||||
mkdir -p bin/windows/
|
mkdir -p bin/windows/
|
||||||
cp tmp-gv/bin/win-sshproxy.exe bin/windows/
|
cp tmp-gv/bin/win-sshproxy.exe bin/windows/
|
||||||
|
cp tmp-gv/bin/gvproxy.exe bin/windows/
|
||||||
rm -rf tmp-gv
|
rm -rf tmp-gv
|
||||||
|
|
||||||
.PHONY: package
|
.PHONY: package
|
||||||
|
@ -804,6 +805,8 @@ install.remote:
|
||||||
$(DESTDIR)$(BINDIR)/podman$(BINSFX)
|
$(DESTDIR)$(BINDIR)/podman$(BINSFX)
|
||||||
test "${GOOS}" != "windows" || \
|
test "${GOOS}" != "windows" || \
|
||||||
install -m 755 $(SRCBINDIR)/win-sshproxy.exe $(DESTDIR)$(BINDIR)
|
install -m 755 $(SRCBINDIR)/win-sshproxy.exe $(DESTDIR)$(BINDIR)
|
||||||
|
test "${GOOS}" != "windows" || \
|
||||||
|
install -m 755 $(SRCBINDIR)/gvproxy.exe $(DESTDIR)$(BINDIR)
|
||||||
test "${GOOS}" != "darwin" || \
|
test "${GOOS}" != "darwin" || \
|
||||||
install -m 755 $(SRCBINDIR)/podman-mac-helper $(DESTDIR)$(BINDIR)
|
install -m 755 $(SRCBINDIR)/podman-mac-helper $(DESTDIR)$(BINDIR)
|
||||||
test -z "${SELINUXOPT}" || \
|
test -z "${SELINUXOPT}" || \
|
||||||
|
|
|
@ -34,6 +34,9 @@
|
||||||
<Component Id="WinSshProxyExecutable" Guid="0DA730AB-2F97-40E8-A8FC-356E88EAA4D2" Win64="Yes">
|
<Component Id="WinSshProxyExecutable" Guid="0DA730AB-2F97-40E8-A8FC-356E88EAA4D2" Win64="Yes">
|
||||||
<File Id="4A2AD125-34E7-4BD8-BE28-B2A9A5EDBEB5" Name="win-sshproxy.exe" Source="bin/windows/win-sshproxy.exe" KeyPath="yes"/>
|
<File Id="4A2AD125-34E7-4BD8-BE28-B2A9A5EDBEB5" Name="win-sshproxy.exe" Source="bin/windows/win-sshproxy.exe" KeyPath="yes"/>
|
||||||
</Component>
|
</Component>
|
||||||
|
<Component Id="GvProxyExecutable" Guid="1A4A2975-AD2D-44AA-974B-9B343C098333" Win64="Yes">
|
||||||
|
<File Id="0C9BDFB8-1DBD-4E51-BE7B-3F55478DACB7" Name="gvproxy.exe" Source="bin/windows/gvproxy.exe" KeyPath="yes"/>
|
||||||
|
</Component>
|
||||||
</Directory>
|
</Directory>
|
||||||
</Directory>
|
</Directory>
|
||||||
</Directory>
|
</Directory>
|
||||||
|
@ -47,6 +50,7 @@
|
||||||
<ComponentRef Id="MainExecutable"/>
|
<ComponentRef Id="MainExecutable"/>
|
||||||
<ComponentRef Id="WinPathExecutable"/>
|
<ComponentRef Id="WinPathExecutable"/>
|
||||||
<ComponentRef Id="WinSshProxyExecutable"/>
|
<ComponentRef Id="WinSshProxyExecutable"/>
|
||||||
|
<ComponentRef Id="GvProxyExecutable"/>
|
||||||
<ComponentGroupRef Id="ManFiles"/>
|
<ComponentGroupRef Id="ManFiles"/>
|
||||||
</Feature>
|
</Feature>
|
||||||
|
|
||||||
|
|
|
@ -135,6 +135,12 @@ SignItem @("artifacts/win-sshproxy.exe",
|
||||||
"artifacts/podman.exe",
|
"artifacts/podman.exe",
|
||||||
"artifacts/podman-msihooks.dll",
|
"artifacts/podman-msihooks.dll",
|
||||||
"artifacts/podman-wslkerninst.exe")
|
"artifacts/podman-wslkerninst.exe")
|
||||||
|
$gvExists = Test-Path "artifacts/gvproxy.exe"
|
||||||
|
if ($gvExists) {
|
||||||
|
SignItem @("artifacts/gvproxy.exe")
|
||||||
|
} else {
|
||||||
|
$env:UseGVProxy = "Skip"
|
||||||
|
}
|
||||||
|
|
||||||
.\build-msi.bat $ENV:INSTVER; ExitOnError
|
.\build-msi.bat $ENV:INSTVER; ExitOnError
|
||||||
SignItem @("podman.msi")
|
SignItem @("podman.msi")
|
||||||
|
|
|
@ -6,6 +6,12 @@
|
||||||
<?error VERSION must be defined via command line argument?>
|
<?error VERSION must be defined via command line argument?>
|
||||||
<?endif?>
|
<?endif?>
|
||||||
|
|
||||||
|
<?ifdef env.UseGVProxy?>
|
||||||
|
<?define UseGVProxy = "$(env.UseGVProxy)"?>
|
||||||
|
<?else?>
|
||||||
|
<?define UseGVProxy = ""?>
|
||||||
|
<?endif?>
|
||||||
|
|
||||||
<Product Name="Podman $(var.VERSION)" Id="*" UpgradeCode="696BAB5D-CA1F-4B05-B123-320F245B8D6D" Version="$(var.VERSION)" Language="1033" Manufacturer="Red Hat Inc.">
|
<Product Name="Podman $(var.VERSION)" Id="*" UpgradeCode="696BAB5D-CA1F-4B05-B123-320F245B8D6D" Version="$(var.VERSION)" Language="1033" Manufacturer="Red Hat Inc.">
|
||||||
|
|
||||||
<Package Id="*" Platform="x64" Keywords="Installer" Description="Red Hat's Podman $(var.VERSION) Installer" Comments="Apache 2.0 License" Manufacturer="Red Hat Inc." InstallScope="perMachine" InstallerVersion="200" Compressed="yes"/>
|
<Package Id="*" Platform="x64" Keywords="Installer" Description="Red Hat's Podman $(var.VERSION) Installer" Comments="Apache 2.0 License" Manufacturer="Red Hat Inc." InstallScope="perMachine" InstallerVersion="200" Compressed="yes"/>
|
||||||
|
@ -30,6 +36,11 @@
|
||||||
<Component Id="WinSshProxyExecutable" Guid="0DA730AB-2F97-40E8-A8FC-356E88EAA4D2" Win64="yes">
|
<Component Id="WinSshProxyExecutable" Guid="0DA730AB-2F97-40E8-A8FC-356E88EAA4D2" Win64="yes">
|
||||||
<File Id="WinSshProxyExecutableFile" Name="win-sshproxy.exe" Source="artifacts/win-sshproxy.exe" KeyPath="yes"/>
|
<File Id="WinSshProxyExecutableFile" Name="win-sshproxy.exe" Source="artifacts/win-sshproxy.exe" KeyPath="yes"/>
|
||||||
</Component>
|
</Component>
|
||||||
|
<?if $(var.UseGVProxy) != Skip?>
|
||||||
|
<Component Id="GvProxyExecutable" Guid="1A4A2975-AD2D-44AA-974B-9B343C098333" Win64="yes">
|
||||||
|
<File Id="GvProxyExecutableFile" Name="gvproxy.exe" Source="artifacts/gvproxy.exe" KeyPath="yes"/>
|
||||||
|
</Component>
|
||||||
|
<?endif?>
|
||||||
<Component Id="GuideHTMLComponent" Guid="8B23C76B-F7D4-4030-8C46-1B5729E616B5" Win64="yes">
|
<Component Id="GuideHTMLComponent" Guid="8B23C76B-F7D4-4030-8C46-1B5729E616B5" Win64="yes">
|
||||||
<File Id="GuideHTMLFile" Name="welcome-podman.html" Source="docs/podman-for-windows.html" KeyPath="yes"/>
|
<File Id="GuideHTMLFile" Name="welcome-podman.html" Source="docs/podman-for-windows.html" KeyPath="yes"/>
|
||||||
</Component>
|
</Component>
|
||||||
|
@ -60,6 +71,9 @@
|
||||||
<ComponentRef Id="EnvEntriesComponent"/>
|
<ComponentRef Id="EnvEntriesComponent"/>
|
||||||
<ComponentRef Id="MainExecutable"/>
|
<ComponentRef Id="MainExecutable"/>
|
||||||
<ComponentRef Id="WinSshProxyExecutable"/>
|
<ComponentRef Id="WinSshProxyExecutable"/>
|
||||||
|
<?if $(var.UseGVProxy) != Skip?>
|
||||||
|
<ComponentRef Id="GvProxyExecutable"/>
|
||||||
|
<?endif?>
|
||||||
<ComponentRef Id="GuideHTMLComponent"/>
|
<ComponentRef Id="GuideHTMLComponent"/>
|
||||||
<ComponentGroupRef Id="ManFiles"/>
|
<ComponentGroupRef Id="ManFiles"/>
|
||||||
<ComponentGroupRef Id="WSLFeature"/>
|
<ComponentGroupRef Id="WSLFeature"/>
|
||||||
|
|
|
@ -128,6 +128,13 @@ try {
|
||||||
Copy-Artifact($fileName)
|
Copy-Artifact($fileName)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
$loc = Get-ChildItem -Recurse -Path . -Name gvproxy.exe
|
||||||
|
if (!$loc) {
|
||||||
|
Write-Host "Skipping gvproxy.exe artifact"
|
||||||
|
} else {
|
||||||
|
Copy-Artifact("gvproxy.exe")
|
||||||
|
}
|
||||||
|
|
||||||
$docsloc = Get-ChildItem -Path . -Name docs -Recurse
|
$docsloc = Get-ChildItem -Path . -Name docs -Recurse
|
||||||
$loc = Get-ChildItem -Recurse -Path . -Name podman-for-windows.html
|
$loc = Get-ChildItem -Recurse -Path . -Name podman-for-windows.html
|
||||||
if (!$loc) {
|
if (!$loc) {
|
||||||
|
|
|
@ -10,7 +10,7 @@ SOURCES=${@:3} ## directories to find markdown files
|
||||||
# invoked in a cross-compilation environment, so even if PLATFORM=windows
|
# invoked in a cross-compilation environment, so even if PLATFORM=windows
|
||||||
# we need an actual executable that we can invoke).
|
# we need an actual executable that we can invoke).
|
||||||
if [[ -z "$PODMAN" ]]; then
|
if [[ -z "$PODMAN" ]]; then
|
||||||
DETECTED_OS=$(env -i HOME="$HOME" PATH="$PATH" go env GOOS)
|
DETECTED_OS=$(env -i HOME="$HOME" PATH="$PATH" GOROOT="$GOROOT" go env GOOS)
|
||||||
case $DETECTED_OS in
|
case $DETECTED_OS in
|
||||||
windows)
|
windows)
|
||||||
PODMAN=bin/windows/podman.exe ;;
|
PODMAN=bin/windows/podman.exe ;;
|
||||||
|
|
File diff suppressed because one or more lines are too long
|
@ -38,7 +38,7 @@ class Preprocessor():
|
||||||
outfile = os.path.splitext(infile)[0]
|
outfile = os.path.splitext(infile)[0]
|
||||||
outfile_tmp = outfile + '.tmp.' + str(os.getpid())
|
outfile_tmp = outfile + '.tmp.' + str(os.getpid())
|
||||||
|
|
||||||
with open(infile, 'r', encoding='utf-8') as fh_in, open(outfile_tmp, 'w', encoding='utf-8') as fh_out:
|
with open(infile, 'r', encoding='utf-8') as fh_in, open(outfile_tmp, 'w', encoding='utf-8', newline='\n') as fh_out:
|
||||||
for line in fh_in:
|
for line in fh_in:
|
||||||
# '@@option foo' -> include file options/foo.md
|
# '@@option foo' -> include file options/foo.md
|
||||||
if line.startswith('@@option '):
|
if line.startswith('@@option '):
|
||||||
|
@ -71,7 +71,7 @@ class Preprocessor():
|
||||||
"""
|
"""
|
||||||
for optionfile in self.used_by:
|
for optionfile in self.used_by:
|
||||||
tmpfile = optionfile + '.tmp'
|
tmpfile = optionfile + '.tmp'
|
||||||
with open(optionfile, 'r', encoding='utf-8') as fh_in, open(tmpfile, 'w', encoding='utf-8') as fh_out:
|
with open(optionfile, 'r', encoding='utf-8') as fh_in, open(tmpfile, 'w', encoding='utf-8', newline='\n') as fh_out:
|
||||||
fh_out.write("####> This option file is used in:\n")
|
fh_out.write("####> This option file is used in:\n")
|
||||||
used_by = ', '.join(x for x in self.used_by[optionfile])
|
used_by = ', '.join(x for x in self.used_by[optionfile])
|
||||||
fh_out.write(f"####> podman {used_by}\n")
|
fh_out.write(f"####> podman {used_by}\n")
|
||||||
|
@ -82,6 +82,7 @@ class Preprocessor():
|
||||||
fh_out.write(line)
|
fh_out.write(line)
|
||||||
# Compare files; only rewrite if the new one differs
|
# Compare files; only rewrite if the new one differs
|
||||||
if not filecmp.cmp(optionfile, tmpfile):
|
if not filecmp.cmp(optionfile, tmpfile):
|
||||||
|
os.unlink(optionfile)
|
||||||
os.rename(tmpfile, optionfile)
|
os.rename(tmpfile, optionfile)
|
||||||
else:
|
else:
|
||||||
os.unlink(tmpfile)
|
os.unlink(tmpfile)
|
||||||
|
|
Loading…
Reference in New Issue