Commit Graph

22970 Commits

Author SHA1 Message Date
openshift-merge-bot[bot] fe65b5873f
Merge pull request #23251 from containers/renovate/github.com-cyphar-filepath-securejoin-0.x
Update module github.com/cyphar/filepath-securejoin to v0.3.0
2024-07-11 18:34:16 +00:00
renovate[bot] 7c775a3f4c
Update module github.com/cyphar/filepath-securejoin to v0.3.0
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-07-11 15:41:50 +00:00
openshift-merge-bot[bot] 58c8803a1e
Merge pull request #22726 from edsantiago/pull-from-local-registry
CI: Use local cache registry
2024-07-11 12:42:04 +00:00
openshift-merge-bot[bot] e570aacc4e
Merge pull request #23212 from l0rd/vs-buildtools
Using Visual Studio BuildTools as a MinGW alternative
2024-07-11 11:25:03 +00:00
openshift-merge-bot[bot] 1125d4d143
Merge pull request #23228 from Luap99/fix-internal-test
test/system: fix pasta host.containers.internal test
2024-07-11 11:22:20 +00:00
Ed Santiago 07b69943a4 CI: use local registry, part 3 of 3: for developers
New tool, get-local-registry-script, intended for developers
to get a local registry running in their environment. This is
not necessary for any tests, but may be desirable for performance
reasons and/or to recreate the CI environment.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2024-07-11 04:39:45 -06:00
Ed Santiago dd1bcabae9 CI: use local registry, part 2 of 3: fix tests
This commit gets tests working under the new local-registry system:

  * amend a few image names, mostly just sticking to a consistent
    list of those images in our registry cache. Mostly minor
    tag updates.

  * trickier: pull_test: change some error messages, and remove
    a test that's now a NOP. Basically, with a local (unprotected)
    registry we always get "404 manifest unknown"; with a real
    registry we'll get "403 I can't tell you".

  * trickiest: seccomp_test: build our own images at run time,
    with our desired labels. Until now we've been pulling
    prebuilt images, but those will not copy to the local
    cache registry. Something about v1? Anyhow, I gave up
    trying to cache them, and the workaround is straightforward.

Also took the liberty of strengthening a few error-message checks

Signed-off-by: Ed Santiago <santiago@redhat.com>
2024-07-11 04:39:45 -06:00
Ed Santiago 2e8c074234 CI: use local registry, part 1 of 3: setup
As of https://github.com/containers/automation_images/pull/357
our CI VMs include a local registry preloaded with all(*)
images used in tests.

 * where "all" means "most".

This commit installs a new registries.conf that redirects docker
and quay to the new local registry. The hope is that this will
reduce CI flakes.

Since tests change over time, and new tests may require new
images, this commit also adds a mechanism for pulling in
remote images at test run time. Obviously this negates
the purpose of the cache, since it introduces a flake
pain point. The idea is: DO NOT DO THIS UNLESS ABSOLUTELY
NECESSARY, and then, if we have to do this, hurry up and
spin new CI VMs that include the new image(s).

Signed-off-by: Ed Santiago <santiago@redhat.com>
2024-07-11 04:39:45 -06:00
openshift-merge-bot[bot] 7cc9b41e3d
Merge pull request #22425 from edsantiago/test-composefs
test composefs on rawhide
2024-07-11 10:06:28 +00:00
Ed Santiago d4c0e7ecbd CI: test composefs on rawhide
Run root e2e & system tests using composefs on rawhide.

Write magic settings to storage.conf. That part is easy.

e2e tests, however, ignore storage.conf. They require everything
to be specified on the command line. And "everything", in the
case of composefs, includes a long complicated --pull-options
string which in turn requires containers-storage PR 1966
which, as of this writing, is finally vendored into podman.

Signed-off-by: Ed Santiago <santiago@redhat.com>
2024-07-10 14:51:58 -06:00
openshift-merge-bot[bot] d5eb3c5b37
Merge pull request #23242 from containers/renovate/go-google.golang.org/grpc-vulnerability
chore(deps): update module google.golang.org/grpc to v1.64.1 [security]
2024-07-10 09:18:25 +00:00
openshift-merge-bot[bot] 58aa1cf04d
Merge pull request #23237 from cevich/ignore_kube_main
Drop minikube CI test
2024-07-10 08:59:10 +00:00
renovate[bot] 176630b5db
chore(deps): update module google.golang.org/grpc to v1.64.1 [security]
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-07-10 00:44:17 +00:00
openshift-merge-bot[bot] 754ddadc3c
Merge pull request #23238 from wLMEB/issue_23039_doc_containerfile
Improve container filenname ambiguity.
2024-07-10 00:41:37 +00:00
openshift-merge-bot[bot] 345bac6716
Merge pull request #23233 from cgwalters/doc-goroutine-leak
containers/attach: Note bug around goroutine leak
2024-07-09 20:36:43 +00:00
openshift-merge-bot[bot] c81bf72619
Merge pull request #23241 from containers/renovate/setuptools-70.x
chore(deps): update dependency setuptools to ~=70.3.0
2024-07-09 19:31:00 +00:00
renovate[bot] 4487f17a47
chore(deps): update dependency setuptools to ~=70.3.0
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-07-09 18:53:42 +00:00
Wanqi Li bd71b75de4 Improve container filenname ambiguity.
Fixes: #23039

Signed-off-by: Wanqi Li <wanli@umass.edu>
2024-07-09 13:24:51 -04:00
Colin Walters 4336c5a4f5 containers/attach: Note bug around goroutine leak
See:

- https://github.com/containers/podman-bootc/pull/59#issuecomment-2216051946
- https://github.com/containers/podman-bootc/pull/61

Sorry for not trying to fix this, but I am not aware of
a remotely straightforward way to do so.

Signed-off-by: Colin Walters <walters@verbum.org>
2024-07-09 11:55:18 -04:00
Chris Evich 1dd8a35b2f
Drop minikube CI test
This test flakes frequently and its status is completely ignored in CI.
At the time of this commit, nobody has stepped up to debug or fix it.
Drop the test.

Signed-off-by: Chris Evich <cevich@redhat.com>
2024-07-09 11:30:00 -04:00
openshift-merge-bot[bot] b3afb8fc39
Merge pull request #23232 from containers/renovate/tags.cncf.io-container-device-interface-0.x
fix(deps): update module tags.cncf.io/container-device-interface to v0.8.0
2024-07-09 15:02:23 +00:00
openshift-merge-bot[bot] dad2d17e1c
Merge pull request #23223 from baude/libkrundoc
add libkrun test docs
2024-07-09 14:45:51 +00:00
openshift-merge-bot[bot] baafdbb151
Merge pull request #23230 from Luap99/cirrus-source-h
cirrus: check for header files in source code check
2024-07-09 13:56:22 +00:00
Brent Baude 6f6e0e7126 add libkrun test docs
add how to run the machine tests on macos with libkrun to the quick test readme.

Signed-off-by: Brent Baude <bbaude@redhat.com>
2024-07-09 08:54:09 -05:00
openshift-merge-bot[bot] 0b9cc50c4a
Merge pull request #23229 from Luap99/machine-debug
pkg/machine/e2e: run debug command only for macos
2024-07-09 13:53:37 +00:00
renovate[bot] 766955fc6d
fix(deps): update module tags.cncf.io/container-device-interface to v0.8.0
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-07-09 12:59:59 +00:00
openshift-merge-bot[bot] 6221e63cb0
Merge pull request #22985 from lambinoo/fix-hang-boot-podman
Fix hang boot podman
2024-07-09 12:58:36 +00:00
Paul Holzinger 4b7aaafb2d
cirrus: check for header files in source code check
When we check if source code was changed also include header files.
There is only one header file currently but that can change and it may
be possible that changes in this file can break things so make sure it
is considered source code so that all tests are triggered.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2024-07-09 13:34:40 +02:00
Paul Holzinger 336c45f68e
pkg/machine/e2e: run debug command only for macos
The commands only make sense on macos so do not clutter the logs on
linux/windows with the output.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2024-07-09 13:14:42 +02:00
Farya L. Maerten c819c7a973 create runtime's worker queue before queuing any job
It seems that if some background tasks are queued in libpod's Runtime before the worker's channel is set up (eg. in the refresh phase), they are not executed later on, but the workerGroup's counter is still ticked up. This leads podman to hang when the imageEngine is shutdown, since it waits for the workerGroup to be done.

fixes containers/podman#22984

Signed-off-by: Farya Maerten <me@ltow.me>
2024-07-09 11:15:29 +02:00
Paul Holzinger 34ba26ec52
test/system: fix pasta host.containers.internal test
When a system has one ipv4 and one ipv6 address hostname -I will show
both causing a failure in the case where this is only one address.
To fix this stop using hostname -I and use ip -4 to only list v4
addresses and the use jq to filter the output accordingly.

Fixes #23227

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2024-07-09 11:08:52 +02:00
openshift-merge-bot[bot] abf0350529
Merge pull request #23206 from Luap99/rootless-reexec-userns
pkg/rootless: simplify reexec for container code
2024-07-08 18:35:19 +00:00
openshift-merge-bot[bot] 464a79921c
Merge pull request #23220 from Luap99/test-tools-danger
cirrus: add missing test/tools to danger files
2024-07-08 15:25:02 +00: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
Paul Holzinger a2c83cb0fd
SetupRootless(): only reexec when needed
We should never try to reexxec when we are already root with
CAP_SYS_ADMIN. The code contained a bug when --cgroups=disabled is used
as it tried to perfom a reexec even when it was not needed.

Fixes: 900e29549a ("libpod: do not move podman with --cgroups=disabled")

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2024-07-08 13:39:15 +02:00
Paul Holzinger 3350cd3eed
pkg/rootless: simplify reexec for container code
The code currently tried to avoid joining the userns from conmon
directly and rather joined to only read the pid file and then send this
back to use so we could join the userns. From the comment this was done
because we could not read the pid file. However this is no longer true
as of commit 49eb5af301 and file is no always owned by the real user.

This means we can just remove this special logic and join the namespace
directly there. A test has been added to check the rejoin logic with a
custom uidmapping.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2024-07-08 13:28:31 +02:00
openshift-merge-bot[bot] d68a41fc32
Merge pull request #23205 from containers/renovate/golang.org-x-net-0.x
fix(deps): update module golang.org/x/net to v0.27.0
2024-07-08 09:46:43 +00:00
Paul Holzinger 049942db04
cirrus: add missing test/tools to danger files
This directory contains important tools such as ginkgo as such updates
there should run through all testing and not skip anything.

Technically we do not need to run system tests as it doesn't use any
tool from there but that
a) might change in the future and
b) would make the only_if rules much more complicated if we try to
   exclude it and
c) updates in test/tools are rare and/or automated so it does not cause
   inconveniences to run all anyway

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2024-07-08 10:58:19 +02:00
openshift-merge-bot[bot] c276b28696
Merge pull request #23218 from containers/renovate/golang.org-x-tools-0.x
fix(deps): update module golang.org/x/tools to v0.23.0
2024-07-08 08:50:50 +00:00
renovate[bot] 1d9ac9a203
fix(deps): update module golang.org/x/tools to v0.23.0
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-07-07 21:23:48 +00:00
openshift-merge-bot[bot] c5841b0003
Merge pull request #22408 from lsm5/wix-bump
Windows Installer: bump wix to v5
2024-07-05 20:33:59 +00:00
Lokesh Mandvekar e2ff5d4e5d
Windows Installer: switch to wix5
The chocolatey tool that was fetching us wix v3 can no longer be used to
fetch wix v4+ so we had to switch to dotnet to fetch the latest wix.

This commit builds the installer with wix v5.
wix v5 is installed via the `dotnet` tool in the windows image itself
at https://github.com/containers/automation_images/pull/354.

Going forward, the `dotnet` tool will also be used to build the installer.

In the process, the wix v3 files were converted to wix v4+ using `wix
convert` followed by manual modifications along with switch to wixproj
builds with dotnet.

The GitHub Action to upload windows installer now builds the installer
using winmake.ps1.

Contributions from Mario Loriedo:
- bundle setup update to wix5
- updates to build and release process scripts
Ref: https://github.com/lsm5/podman/pull/3

- small fixes to windows installer theme
Ref: https://github.com/lsm5/podman/pull/4

- Better win-installer sidebar logo
Ref: https://github.com/lsm5/podman/pull/5

Resolves: RUN-2055

Co-authored-by: Mario Loriedo <mario.loriedo@gmail.com>
Signed-off-by: Lokesh Mandvekar <lsm5@redhat.com>
2024-07-05 15:28:19 -04:00
openshift-merge-bot[bot] 74cfb3ce5f
Merge pull request #23162 from Luap99/machine-hang
pkg/machine/e2e: improve timeout handling
2024-07-05 19:27:58 +00:00
openshift-merge-bot[bot] c476c3afde
Merge pull request #23203 from Luap99/systemd-ctr-leak
libpod: first delete container then cidfile
2024-07-05 14:41:59 +00:00
renovate[bot] f90060bff3
fix(deps): update module golang.org/x/net to v0.27.0
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-07-05 14:35:37 +00:00
Paul Holzinger 5e3d821814
pkg/machine/e2e: print tests timings at the end
Makes it easier to see which tests are slow.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2024-07-05 15:28:33 +02:00
Paul Holzinger 527c0f0bfa
pkg/machine/e2e: run debug commands after init
To debug the slow machine init command. Let's see the disk image size.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2024-07-05 15:28:33 +02:00
Paul Holzinger ada4e1a8c1
pkg/machine/e2e: improve timeout handling
In case of timeouts actually log the command again and make sure to send
SIGABRT to the process as go will create a useful stack strace where we
can see where things are hanging. It also kill the process unlike the
default Eventually().Should(Exit()) call the leaves the process around.

The output will be captured by default in the log so we just see the
stack trace there.

And while at it bump the timout up to 10 mins, we are hitting hard
flakes in CI where machine init takes longer than 5 mins for unknown
reasons but this seems to be good enough.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2024-07-05 15:28:33 +02:00
openshift-merge-bot[bot] cf98506546
Merge pull request #23166 from containers/renovate/setuptools-70.x
chore(deps): update dependency setuptools to ~=70.2.0
2024-07-05 10:06:59 +00:00
openshift-merge-bot[bot] 64f440d31f
Merge pull request #23200 from containers/renovate/golang.org-x-term-0.x
fix(deps): update module golang.org/x/term to v0.22.0
2024-07-05 09:20:14 +00:00