Commit Graph

25 Commits

Author SHA1 Message Date
openshift-merge-bot[bot] 4e3226cf1a
Merge pull request #26000 from l0rd/docs-with-podman
Build documentation in a container on Win arm64
2025-04-30 14:02:56 +00:00
Paul Holzinger c9b1bd1cf3
Stop setting btrfs_noversion build tag
c/storage no longer uses this tag after
https://github.com/containers/storage/pull/2308.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2025-04-30 14:22:25 +02:00
Mario Loriedo f6be9fbc7f Build documentation in a container on Win arm64
Locally building the windows installer requires to
build the documentation. And building documentation
requires Pandoc.

There is no pre-built binaries for Windows arm64
and this makes it complicated to build the Podman
Windows installer on Windows arm64.

To unlock this scenario we are adding a new winmake.ps1
target to build the documentation in a container (where
Pandoc is pre-installed).

Signed-off-by: Mario Loriedo <mario.loriedo@gmail.com>
2025-04-29 15:36:37 +02:00
Yevhen Vydolob ce0617eac4 Use gvisor-tap-vsock version from go.mod file
Instead of hardcoding gvisor version in different build files, we get gvisor version from go.mod file.

Signed-off-by: Yevhen Vydolob <yvydolob@redhat.com>
2025-04-22 18:44:04 +02:00
Kir Kolyshkin 275e77d1fa test/tools/vendor: drop ginkgo
It appears[1] that ginkgo binary can be easily built from the top-level
vendor, so it does not make sense to have a second copy in test/tools
(and a hassle of keeping the two in sync).

Inspired by [1], [2], and a run of make localtest, which shows:

> Ginkgo detected a version mismatch between the Ginkgo CLI and the version of Ginkgo imported by your packages:
>   Ginkgo CLI Version:
>     2.22.1
>   Mismatched package versions found:
>     2.23.3 used by podman, common, containers, parse, quadlet, rootlessport, abi, tunnel, libpod, events, file, shm, logs, annotations, libpod, utils, apiutil, auth, ctime, abi, expansion, utils, emulation, env, errorhandling, machine, compression, connection, define, ocipull, provider, proxyenv, qemu, command, shim, vmconfigs, rootless, signal, specgen, generate, kube, specgenutil, systemd, generate, notifyproxy, parser, timetype, trust, util, utils

[1]: af29bb5b6e (r2020246403)
[2]: e6c7ec94e2 (r2020230241)

Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
2025-04-01 14:24:41 -07:00
Kir Kolyshkin c860e67884 cmd/rootlessport: add missing linux build tags
This amends commit 772ead253 ("Use simulated dual-stack binds when using WSL")
which started using linux tag but not for all files.

Alas, this breaks ginkgo run on Windows, so add an exclusion.

Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
2025-03-31 12:29:21 -07:00
Kir Kolyshkin 60692ca350 Remove exclude_graphdriver_devicemapper build tag
As of commit d4c7ca39f ("update c/{buildah,common,image,storage} to
latest main") no dependencies use exclude_graphdriver_devicemapper tag.

This (hopefully) concludes the work of removing devicemapper graph
driver.

Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
2025-03-30 00:30:03 -07:00
Mario Loriedo af29bb5b6e Update CI to run Windows unit tests
Add a new target in winmake.ps1 to run unit tests and use
use it in a new cirrus task.

Fix machine_windows_test.go to make it work in CI machine.

Add the `!windows` tag on tests files that fail on Windows.

Signed-off-by: Mario Loriedo <mario.loriedo@gmail.com>
2025-03-16 13:40:16 +00:00
Yevhen Vydolob 48662fa32b update gvproxy version to 0.8.4
The 0.8.4 has one important fix[1], which could improve #25121.
Also it set all places to use same version of gvisor-tap-vsock
[1]https://github.com/containers/gvisor-tap-vsock/issues/474

Signed-off-by: Yevhen Vydolob <yvydolob@redhat.com>
2025-03-11 09:51:52 +02:00
Mario Loriedo dce52b3e77 Improve winmake.ps1 clean target
Signed-off-by: Mario Loriedo <mario.loriedo@gmail.com>
2025-02-07 16:08:35 +01:00
Paul Holzinger 89283c6fcc
update gvproxy version
The current macos installer gvproxy version has a number of issues
around dns handling[1,2]. They should be fixed now in 0.8.3 as they
reverted the dns changes back to the 0.7.5 code. This should make it
work like it used to be. Our 5.3.2 installer ships the 0.7.5 version so
users of the podman installer never noticed that but we got plenty of
reports from brew users. This needs to be backported into v5.4 to make
sure we do not ship the broken version as part of the installer.

[1] https://github.com/containers/gvisor-tap-vsock/issues/462
[2] https://github.com/containers/gvisor-tap-vsock/issues/466

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2025-02-03 15:54:34 +01:00
Mario Loriedo 969057bacc Stop creating a patch for v5.3.1 upgrades on windows
Removes the windows installer patch for upgrading
from v5.3.1 to v5.3.x that was introduced in
https://github.com/containers/podman/pull/24827.

We need to do that because windows patches are
allowed only for small and minor updates
https://learn.microsoft.com/en-us/windows/win32/msi/patching-and-upgrades.

We also need to start blocking upgrades from v5.3.1
to v5.4.x, which will be implemented in a separate commit.

Signed-off-by: Mario Loriedo <mario.loriedo@gmail.com>
2025-01-20 11:56:18 +01:00
Mario Loriedo 07aaa7832a Update windows installer tests
The windows installer tests are command line / non interactive. To test as much as
possible the GUI / interactive scenario (that is what user do), update tests
need to use the installer with the default options. That's because when using the GUI
for an update, changing options is not possible.

Signed-off-by: Mario Loriedo <mario.loriedo@gmail.com>
2024-11-20 13:54:12 +01:00
Gunjan Vyas 6cf3cb1bfc winmake.ps1: Fix the syntax of the function call Win-SSHProxy
Add missing end of line in test/python/requirements.txt

Signed-off-by: Gunjan Vyas <vyasgun20@gmail.com>
2024-11-06 18:40:19 +05:30
Mario Loriedo 2e4b640ad2 Fix windows installer deleting machine provider config file
Signed-off-by: Mario Loriedo <mario.loriedo@gmail.com>
2024-07-18 16:56:39 +02:00
Mario Loriedo 81250cc5a9 Visual Studio BuildTools as a MinGW alternative
Building the MSI hook on Windows
(`contrib/win-installer/podman-msihooks/check.c`)
currently requires MinGW. This commit updates the build
script so that, when MinGW is absent but the C compiler
included in Visual Studio BuildTools is installed, the
latter is used to build the MSI hook.

Other than that, `winmake.ps1` has a new `installertest`
target to run the Windows installer tests that are
currently verified by Cirrus CI.

Signed-off-by: Mario Loriedo <mario.loriedo@gmail.com>
2024-07-08 17:18:15 +02:00
Mario Loriedo dcec81e694 Add new targets on Windows makefile (winmake.ps1)
Add the following targets in winmake.ps1:
- `installer`: builds the Windows installer
- `docs`: builds the documentation HTML pages
- `validatepr`: runs the Linux Makefile `.valiatepr`
                target using podman.
- `lint`: faster validation that runs linter locally

Update of `build_windows.md`:
- removed every reference to the MSYS2 platform
- added instructions to build the installer and linters

Fix https://github.com/containers/podman/issues/21821 and https://github.com/containers/podman/issues/21911

Signed-off-by: Mario Loriedo <mario.loriedo@gmail.com>
2024-06-06 13:41:53 +02:00
Mario Loriedo c0e32e93c0 Use logformatter for podman_machine_windows_task
https://github.com/containers/podman/issues/21760

Signed-off-by: Mario Loriedo <mario.loriedo@gmail.com>
2024-03-27 12:59:49 +01:00
Mario Loriedo abaa179aa0 Add target win-gvproxy in winmake.ps1
For consistency with linux/osx makefile
I have added the win-gvproxy target as
an alias of win-sshproxy

[NO NEW TESTS NEEDED]

Signed-off-by: Mario Loriedo <mario.loriedo@gmail.com>
2024-03-13 00:45:10 +01:00
Matt Heon 72f1617fac Bump Go module to v5
Moving from Go module v4 to v5 prepares us for public releases.

Move done using gomove [1] as with the v3 and v4 moves.

[1] https://github.com/KSubedi/gomove

Signed-off-by: Matt Heon <mheon@redhat.com>
2024-02-08 09:35:39 -05:00
Christophe Fergeau c566551e96 gvproxy: Update to 0.7.2 release
This updates the Windows installer and macOS installer to ship the newer
binaries, as well as the vendored gvisor-tap-vsock code.

[NO NEW TESTS NEEDED]

Signed-off-by: Christophe Fergeau <cfergeau@redhat.com>
2024-01-17 16:59:35 +01:00
Chris Evich 106abd13be
Cirrus: Execute Windows podman-machine e2e tests
Also, de-duplicate power-shell variables and functions as they're
beginning to sprawl.  This does not completely address all duplicates,
mainly those involved in the podman-machine CI workflow.  So,
nothing under `contrib/win-installer` has been touched.

[NO NEW TESTS NEEDED]

Signed-off-by: Chris Evich <cevich@redhat.com>
2023-10-05 10:45:17 -04:00
Christophe Fergeau cc946daff4 windows: Use prebuilt gvproxy/win-sshproxy binaries
Since gvisor-tap-vsock 0.7.1, the upstream project ships pre-built
Windows binaries for gvproxy and win-sshproxy. These binaries are built
with -Hwindowsgui as needed by podman.

This makes the same change in winmake.ps1, but I had to hardcode
gvisor-tap-vsock version in one more place.

[NO NEW TESTS NEEDED]

Signed-off-by: Christophe Fergeau <cfergeau@redhat.com>
2023-10-02 14:17:50 +02:00
Ashley Cui 149d3f7ad0 [CI:DOCS] Add win-sshproxy target to winmake
Winmake file now builds win-sshproxy and gvproxy

Signed-off-by: Ashley Cui <acui@redhat.com>
2023-09-27 13:52:01 -04:00
Ashley Cui 6d8b3047d7 Makefile equiv Powershell script
Introduce a powershell script that mirrors Makefile capbilities on
Windows.

Syntax: ./winmake target [options]

[NO NEW TESTS NEEDED]

Signed-off-by: Ashley Cui <acui@redhat.com>
2023-09-20 09:53:15 -04:00