Commit Graph

24532 Commits

Author SHA1 Message Date
Jan Rodák ad9839ac55
Run HealthCheck without creating and removing the ExecSession in the database
Fixes: https://issues.redhat.com/browse/RHEL-69970

Signed-off-by: Jan Rodák <hony.com@seznam.cz>
2025-02-11 13:59:00 +01:00
openshift-merge-bot[bot] e7d9c61f9f
Merge pull request #25288 from Honny1/bump-freebsd
[CI] Bump FreeBSD version to 13.4
2025-02-11 12:55:24 +00:00
openshift-merge-bot[bot] 2e36bc0a05
Merge pull request #25285 from containers/renovate/golang.org-x-tools-0.x
fix(deps): update module golang.org/x/tools to v0.30.0
2025-02-11 12:00:26 +00:00
openshift-merge-bot[bot] af55648080
Merge pull request #25277 from Luap99/new-images
CI: new images 2025-02-10
2025-02-11 11:15:43 +00:00
openshift-merge-bot[bot] e9a3c68a70
Merge pull request #25281 from mheon/cncf_code_of_conduct
Switch to the CNCF Code of Conduct
2025-02-11 10:48:13 +00:00
Jan Rodák a6d6d6409e
Bump FreeBSD version to 13.4
Version 13.3 is EOL. See https://www.freebsd.org/releases/

Signed-off-by: Jan Rodák <hony.com@seznam.cz>
2025-02-11 11:15:02 +01:00
renovate[bot] a2380bca1e
fix(deps): update module golang.org/x/tools to v0.30.0
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-02-10 22:02:40 +00:00
Matt Heon f906c6df57 Switch to the CNCF Code of Conduct
As part of the CNCF Sandbox, we are replacing our existing COC
with the standard CNCF version.

Signed-off-by: Matt Heon <mheon@redhat.com>
2025-02-10 14:36:32 -05:00
renovate[bot] 74a100f542
fix(deps): update module golang.org/x/net to v0.35.0
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-02-10 19:02:53 +00:00
openshift-merge-bot[bot] e943a2b064
Merge pull request #25275 from dfr/freebsd-hascapresource
libpod: make hasCapSysResource platform-specific
2025-02-10 19:01:07 +00:00
Paul Holzinger 7e612f6ebb
test/system: remove tar version check
All the VM images should have a new enough version.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2025-02-10 18:55:20 +01:00
Paul Holzinger d13915f87a
new images 2025-02-10
From https://github.com/containers/automation_images/pull/400

Noteworthy here is the new debian tar package which should have the
right fix for our test issue, i.e.
https://github.com/containers/podman/issues/19407

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2025-02-10 18:50:30 +01:00
Matt Heon cb53abca28 In SQLite state, use defaults for empty-string checks
As part of our database init, we perform a check of the current
values for a few fields (graph driver, graph root, static dir,
and a few more) to validate that Libpod is being started with a
sane & sensible config, and the user's containers can actually be
expected to work. Basically, we take the current runtime config
and compare against values cached in the database from the first
time Podman was run.

We've had some issues with this logic before this year around
symlink resolution, but this is a new edge case. Somehow, the
database is being loaded with the empty string for some fields
(at least graph driver) which is causing comparisons to fail
because we will never compare against "" for those fields - we
insert the default value instead, assuming we have one.

Having a value of "" in the database largely invalidates the
check so arguably we could just drop it, but what BoltDB did -
and what SQLite does after this patch - is to use the default
value for comparison instead of "". This should still catch some
edge cases, and shouldn't be too harmful.

What this does not do is identify or solve the reason that we are
seeing the empty string in the database at all. From my read on
the logic, it must mean that the graph driver is explicitly set
to "" in the c/storage config at the time Podman is first run and
I'm not precisely sure how that happens.

Fixes #24738

Signed-off-by: Matt Heon <mheon@redhat.com>
2025-02-10 12:42:11 -05:00
openshift-merge-bot[bot] 8bb1768b72
Merge pull request #25235 from lsm5/main-build-origin
[skip-ci] RPM: set BUILD_ORIGIN
2025-02-10 17:03:03 +00:00
openshift-merge-bot[bot] a475083bff
Merge pull request #25169 from mheon/graph_stop
Add graph-based pod stop
2025-02-10 17:00:19 +00:00
openshift-merge-bot[bot] 8d42125338
Merge pull request #25267 from containers/renovate/golang.org-x-crypto-0.x
fix(deps): update module golang.org/x/crypto to v0.33.0
2025-02-10 14:56:28 +00:00
Doug Rabson ab0410948a libpod: make hasCapSysResource platform-specific
I'm not sure if there is an equivalent to CAP_SYS_RESOURCE on FreeBSD
but for now, I have added a no-op stub which returns false.

Signed-off-by: Doug Rabson <dfr@rabson.org>
2025-02-10 14:52:10 +00:00
openshift-merge-bot[bot] a5ed4230d8
Merge pull request #25273 from Luap99/apiv2-flake
test/apiv2: fix registry push flake
2025-02-10 13:52:01 +00:00
Lokesh Mandvekar 3c3baefa8c
Update rpm/podman.spec
Co-authored-by: Paul Holzinger <git@holzinger.dev>
Signed-off-by: Lokesh Mandvekar <lsm5@redhat.com>
2025-02-10 18:19:52 +05:30
Paul Holzinger 5bada90190
test/apiv2: fix registry push flake
In our CI env we use a special registries.conf file
(test/registries.conf) to redirect some parts but it also defines:
[[registry]]
location="localhost:5000"
insecure=true

That means that port 5000 is trusted by default so the
/v1.40/images/localhost:5000/myrepo/push?tag=mytag test in 12-imagesMore
fails when the test registry uses port 5000.

Example failure:
not ok 360 [12-imagesMore] POST /v1.40/images/localhost:5000/myrepo/push?tag=mytag [-d {}] : status
 #  expected: 500
 #    actual: 200
 #  response: {"status":"The push refers to repository [localhost:5000/myrepo:mytag]"}
 {"status":"mytag: digest: sha256:d40f8191d6dae366339e318d1004258022f56bd8c649720a72060fad20019c9d size: 758"}

To avoid using port 5000 simply start at 5001.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2025-02-10 13:40:29 +01:00
renovate[bot] f73c976bca
fix(deps): update module golang.org/x/crypto to v0.33.0
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-02-10 12:13:54 +00:00
openshift-merge-bot[bot] 1d06a1f8d5
Merge pull request #24864 from lsm5/rpm-macro-cleanup
[skip-ci] RPM: cleanup macro defs
2025-02-10 11:09:45 +00:00
Lokesh Mandvekar b06c7d78d3
[skip-ci] RPM: set buildOrigin in LDFLAG
For Copr builds, it will mention the Copr info from where the rpm is
installed.

For non-copr builds, it will mention the value of the packager macro
if set, and skip this field altogether if not.

On local rpm builds, this shows:
```
Build Origin:  Lokesh Mandvekar <lsm5@fedoraproject.org>
```

On koji rpm builds, this shows:
```
Build Origin: Fedora Project
```

On copr rpm builds (for eg. rhcontainerbot/playground), this shows:
```
Build Origin: Copr: rhcontainerbot/playground
```

Signed-off-by: Lokesh Mandvekar <lsm5@fedoraproject.org>
2025-02-10 16:36:42 +05:30
openshift-merge-bot[bot] 7185d46ce1
Merge pull request #25237 from l0rd/stop-automatic-wsl-hyperv-installation
Remove the option to install WSL/HyperV on Windows
2025-02-10 10:33:58 +00:00
openshift-merge-bot[bot] 3967ac21ea
Merge pull request #25247 from containers/renovate/google.golang.org-protobuf-1.x
fix(deps): update module google.golang.org/protobuf to v1.36.5
2025-02-07 20:43:43 +00:00
openshift-merge-bot[bot] e7ea47e2f2
Merge pull request #25256 from containers/renovate/github.com-vbauerster-mpb-v8-8.x
fix(deps): update module github.com/vbauerster/mpb/v8 to v8.9.2
2025-02-07 17:07:14 +00:00
openshift-merge-bot[bot] 24b686e70c
Merge pull request #25244 from giuseppe/mount-fix-segfault
images: fix segfault when mounting without cap_sys_admin
2025-02-07 15:30:59 +00:00
openshift-merge-bot[bot] 708b34993d
Merge pull request #25252 from Luap99/build-origin
Makefile: escape BUILD_ORIGIN properly
2025-02-07 15:28:13 +00:00
Mario Loriedo 91e4f6918a Remove the option to install WSL/HyperV
The Windows installer was able to automatically enable the
Windows features for WSL or HyperV when they were not
already enabled. This PR removes this capability.

Having the installer to automatically install the right prerequiste
(WSL or HyperV) was helpful as users won't have to do it manually to
use Podman after the installation. But it also made the code of
installer more complicated as it needed to manage the installation
of these OS features and a reboot. And we weren't able to automatically
test these scenarios that required a reboot.

In other words the Windows installer, that merely just extracted
some files in a folder, required, to support the installation of
WSL and HyperV, an advanced knowledge of WiX toolkit and of the
Windows Installer SDK, plus contributors-time to manually test
the scenarios that require a reboot.

We decided to remove this capability based on the following reasons:
- We had a couple of regressions in the last month that were hard to
  analyse and fix (#24624 and #24735)
- Podman maintainers currently have a scarce knowledge of the Windows Installer
  and there is no plan to invest in that
- Manually installing WSL or HyperV is not hard (e.g. run `wsl --install`) and
  are features that admins can manage on their fleet of Windows machines
- Competitors such as Docker Desktop don't automatically install these
  components
- Podman `machine init` currently verifies if WSL and HyperV are installed and
  guide the user to install them when they are not

Signed-off-by: Mario Loriedo <mario.loriedo@gmail.com>
2025-02-07 16:10:54 +01: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 b4fc9cd14d
Makefile: escape BUILD_ORIGIN properly
When trying to pass a string with spaces that broke the go command cli
parsing, the full argument must be put in quotes to avoid escaping
issues.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2025-02-07 14:02:25 +01:00
renovate[bot] 1d4c67751c
fix(deps): update module github.com/vbauerster/mpb/v8 to v8.9.2
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-02-07 12:39:09 +00:00
renovate[bot] 30ed3293c4
fix(deps): update module google.golang.org/protobuf to v1.36.5
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-02-07 12:25:16 +00:00
Lokesh Mandvekar 1d220b99da
[skip-ci] RPM: cleanup macro defs
The default `gobuild` macro on CentOS Stream 9 now includes support for
`BUILDTAGS`.

CentOS Stream envs now also define `_user_tmpfilesdir` macro by default.
Both these definitions are no longer needed here.

`libtrust_openssl` buildtag is also set in spec wherever relevant.

Signed-off-by: Lokesh Mandvekar <lsm5@fedoraproject.org>
2025-02-07 16:31:19 +05:30
Matt Heon 46d874aa52 Refactor graph traversal & use for pod stop
First, refactor our existing graph traversal code to improve code
sharing. There still isn't much sharing between inward traversal
(stop, remove) and outward traversal (start) but stop and remove
are sharing most of their code, which seems a positive.

Second, add a new graph-traversal function to stop containers.
We already had start and remove; stop uses the newly-refactored
inward-traversal code which it shares with removal.

Third, rework the shared stop/removal inward-traversal code to
add locking. This allows parallel execution of stop and removal,
which should improve the performance of `podman pod rm` and
retain the performance of `podman pod stop` at about what it is
right now.

Fourth and finally, use the new graph-based stop when possible
to solve unordered stop problems with pods - specifically, the
infra container stopping before application containers, leaving
those containers without a working network.

Fixes https://issues.redhat.com/browse/RHEL-76827

Signed-off-by: Matt Heon <mheon@redhat.com>
2025-02-06 18:28:12 -05:00
openshift-merge-bot[bot] 2cbb5fead9
Merge pull request #25245 from giuseppe/fix-hang-s390x
rootless: fix hang on s390x
2025-02-06 15:20:59 +00:00
Giuseppe Scrivano 2f710723df
images: fix segfault when mounting without cap_sys_admin
commit c6fe5e5395 rearranged the code so
that it accesses the store before checking if the current process has
CAP_SYS_ADMIN.

Restore the check and augment it to also check for CAP_SYS_ADMIN.

Closes: https://github.com/containers/podman/issues/25241

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2025-02-06 16:05:27 +01:00
Giuseppe Scrivano c06dba4845
rootless: fix hang on s390x
avoid using the glibc fork() function after using directly the clone()
syscall, as it confuses glibc causing the fork() to hang in some
cases.

The issue has been observed only on s390x, and the fix was confirmed
in the issue discussion.

Closes: https://github.com/containers/podman/issues/25184

Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2025-02-06 13:49:53 +01:00
openshift-merge-bot[bot] 757c621583
Merge pull request #25007 from mtrmac/zstd-chunked-with-tests
Zstd:chunked podman-side tests
2025-02-06 11:14:07 +00:00
Miloslav Trmač e5bcd6542e Add tests for chunked pulls
Signed-off-by: Miloslav Trmač <mitr@redhat.com>
2025-02-06 00:39:51 +01:00
Miloslav Trmač 27ccfef3a1 Don't use all of tempdir as podman's --tmpdir
... because (podman system reset) will delete all of it,
interfering with the test storing other data in the directory.

Signed-off-by: Miloslav Trmač <mitr@redhat.com>
2025-02-05 22:52:46 +01:00
openshift-merge-bot[bot] 2d42b13d55
Merge pull request #25221 from containers/renovate/golang.org-x-sync-0.x
fix(deps): update module golang.org/x/sync to v0.11.0
2025-02-05 12:21:29 +00:00
openshift-merge-bot[bot] 9cac0355f0
Merge pull request #25178 from lsm5/main-550-bump
Bump version to 5.5.0-dev
2025-02-05 11:54:08 +00:00
openshift-merge-bot[bot] 4bd6bc9f3c
Merge pull request #25191 from containers/renovate/github.com-shirou-gopsutil-v4-4.x
fix(deps): update module github.com/shirou/gopsutil/v4 to v4.25.1
2025-02-04 23:34:10 +00:00
openshift-merge-bot[bot] c05b82a52d
Merge pull request #25226 from containers/renovate/golang.org-x-term-0.x
fix(deps): update module golang.org/x/term to v0.29.0
2025-02-04 23:23:11 +00:00
renovate[bot] 165d5c3062
fix(deps): update module golang.org/x/sync to v0.11.0
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-02-04 23:03:27 +00:00
openshift-merge-bot[bot] 39becc2f05
Merge pull request #24781 from ashley-cui/builtfor
Add BuildOrigin field to podman info
2025-02-04 20:13:27 +00:00
renovate[bot] 03b9f87c7d
fix(deps): update module golang.org/x/term to v0.29.0
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-02-04 19:01:57 +00:00
openshift-merge-bot[bot] dc6fc24818
Merge pull request #25222 from containers/renovate/golang.org-x-sys-0.x
fix(deps): update module golang.org/x/sys to v0.30.0
2025-02-04 18:59:14 +00:00
renovate[bot] e7a0032ec3
fix(deps): update module golang.org/x/sys to v0.30.0
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-02-04 16:34:58 +00:00