7600 Commits

Author SHA1 Message Date
renovate[bot]
e50974edc9 chore(deps): update dependency requests to ~=2.33.0
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-25 17:59:42 +00:00
Jan Rodák
5260bd37b6 Merge pull request #28224 from simonbrauner/libpod-pull-progress
Extend libpod pull API to show pull progress
2026-03-24 10:43:32 +01:00
Matt Heon
03ee20c854 Merge pull request #28348 from Luap99/fixes
two small review fixes from storage.conf rework
2026-03-23 11:37:06 -04:00
Paul Holzinger
91bae6f6e4 test/system: drop outdated comment
We do not want to bind mount storage.conf anymore.

Generally a podman with old config should work with the upgrade to new
podman with new config. The old podman with new config however may not
work as such we should not make them use the same config.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2026-03-23 14:54:46 +01:00
Ricardo Branco
b77531879b test: relax rootless runc pid namespace assertion
runc may or may not issue a warning here.

https://github.com/opencontainers/runc/issues/4732

Signed-off-by: Ricardo Branco <rbranco@suse.de>
2026-03-21 21:43:37 +01:00
Miloslav Trmač
85d9999c45 Merge pull request #28194 from Luap99/storage-conf
vendor container-libs with storage.conf rework
2026-03-20 14:03:53 +01:00
Danish Prakash
9565002257 feat: add support for changing default host IPs via containers.conf
Add support for `default_host_ips` in containers.conf to set default
host IP(s) if no IP is set when forwarding ports. Multiple IPs can be
configured, and passing explicit IP with -p will always override
the configured defaults.

Signed-off-by: Danish Prakash <contact@danishpraka.sh>
2026-03-20 13:54:48 +05:30
Paul Holzinger
a33114f248 test/upgrade: remove storage.conf mount
It is not really needed as the storage options are overriden via the cli
anyway and the older podman does not like that the new file has explicit
runroot set.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2026-03-19 21:49:20 +01:00
Paul Holzinger
bb5f759ba8 test/e2e: fix podman pull and run on split imagestore test
We no longer generate a warning for an empty driver in storage.conf so
remove that.

Also update the test to use CONTAINERS_STORAGE_CONF_OVERRIDE instead to
just add a single setting there.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2026-03-19 21:49:20 +01:00
Paul Holzinger
6be50cbb38 test/system: fix empty default test
We no longer generate a warning for an empty driver in storage.conf so
remove that.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2026-03-19 21:49:20 +01:00
Paul Holzinger
0147339e8e Merge pull request #28202 from lsm5/podman6-no-cni-vendor
Podman6: Vendor update w/o CNI + additional cleanups
2026-03-19 21:44:01 +01:00
Paul Holzinger
46502be750 Merge pull request #28234 from Honny1/add-format-for-scp
Add `--format` to `podman image scp`
2026-03-19 19:50:16 +01:00
Paul Holzinger
5d7bc4e947 Merge pull request #28323 from giuseppe/detect-stale-pause-process
rootless: detect and remove stale pause.pid with recycled PIDs
2026-03-19 18:33:53 +01:00
Paul Holzinger
d2e7e8192e Merge pull request #28235 from Honny1/volume-prune-docker
`podman volume prune`: match Docker defaults, add `--all` flag
2026-03-19 17:53:18 +01:00
Jan Rodák
da3c4aa21a Add --format to image scp
Add --format (oci-archive, docker-archive) to pass through to podman save.
Default is unchanged (no --format) so podman save uses its own default.
Document that scp is not storage-to-storage and only archive formats
are supported.

Fixes: https://github.com/containers/podman/issues/28183
Fixes: https://issues.redhat.com/browse/RUN-4403

Signed-off-by: Jan Rodák <hony.com@seznam.cz>
2026-03-19 17:42:33 +01:00
Lokesh Mandvekar
2eb20b3dd9 test: skip build-conflicting-isolation-chroot-and-network on remote
The BUILDAH_ISOLATION env var is not propagated to the server via
podman-remote. The buildah bud test (added in buildah PR #6697) sets
BUILDAH_ISOLATION=chroot to verify the --network conflict, which
silently has no effect on remote, causing the test to fail.

Ref: https://github.com/containers/buildah/pull/6697

Signed-off-by: Lokesh Mandvekar <lsm5@redhat.com>
2026-03-19 20:26:22 +05:30
Lokesh Mandvekar
61cb417c26 Remove CNI references from comments
Update comments that reference CNI as a network backend since it
has been removed.

Signed-off-by: Lokesh Mandvekar <lsm5@redhat.com>
2026-03-19 20:26:21 +05:30
Lokesh Mandvekar
8d1f636e40 vendor update without CNI in buildah and container-libs
rootlessport: clarify RootlessCNI comment

Update the comment for the RootlessCNI conditional to clarify that
the flag is for rootless bridge networking, not CNI specifically.
The bool is set when netStatus != nil in slirp4netns and will be
removed when slirp4netns and rootlessport are fully dropped.

Signed-off-by: Lokesh Mandvekar <lsm5@redhat.com>
2026-03-19 20:26:21 +05:30
Tom Sweeney
bb9d188d4a Merge pull request #28236 from Honny1/fix-unless-stopped
Fix `unless-stopped` containers not restarting after `podman-restart-service` stop them
2026-03-19 10:45:28 -04:00
Giuseppe Scrivano
a2db18f35c rootless: detect and remove stale pause.pid with recycled PIDs
When a pause process dies and its PID gets recycled by an unrelated
process, the stale pause.pid file causes join failures.  Detect this
by checking /proc/<pid>/environ for _PODMAN_PAUSE=1 after a failed
join attempt.

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

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Signed-off-by: Giuseppe Scrivano <gscrivan@redhat.com>
2026-03-19 14:46:29 +01:00
Jan Rodák
d887a8146a Fix creating unnamed volumes as anonymous
Signed-off-by: Jan Rodák <hony.com@seznam.cz>
2026-03-19 13:40:47 +01:00
Jan Rodák
a63910314f Refactor volume_prune tests to use PodmanExitCleanly
Signed-off-by: Jan Rodák <hony.com@seznam.cz>
2026-03-19 13:40:47 +01:00
Jan Rodák
339acf880c volume prune: match Docker default and add --all
Fixes: https://github.com/containers/podman/issues/24597
Fixes: https://issues.redhat.com/browse/RUN-4404

Signed-off-by: Jan Rodák <hony.com@seznam.cz>
2026-03-19 13:40:45 +01:00
Matt Heon
5a40e02c81 Merge pull request #27980 from amyssnippet/fix/27977
fix(quadlet): correct replace behavior and prevent duplicates in .app files
2026-03-18 14:24:38 -04:00
Šimon Brauner
6f497d2437 Extend libpod pull API to show pull progress
Fixes: https://issues.redhat.com/browse/RUN-4362

Signed-off-by: Šimon Brauner <sbrauner@redhat.com>
2026-03-18 13:44:41 +01:00
Jan Rodák
7326b862e3 Fix unless-stopped containers not restarting after podman-restart.service stop them
When `podman-restart.service` stops containers, it marks them as "stopped by
user" which breaks the `unless-stopped` restart policy. Add hidden
`--not-stopped-by-user` flag to prevent this, allowing `unless-stopped`
containers to restart on next boot.

Fixes: https://github.com/containers/podman/issues/28152
Fixes: https://issues.redhat.com/browse/RUN-4357

Signed-off-by: Jan Rodák <hony.com@seznam.cz>
2026-03-16 13:51:17 +01:00
Jan Rodák
acf6472f5b Ignore operational EndpointSettings.IPAddress for static IPs in compat API
Docker treats EndpointSettings.IPAddress as operational/state, not desired create input.
Static address requests should come from IPAMConfig fields. Using both can duplicate
the same IPv4 request and trigger already allocated IPAM errors in compose scenarios.

Ref: moby/moby#46183 (daemon validation), docker/cli#4493 (CLI IPAMConfig), moby/moby#19001 (static IP feature).

Signed-off-by: Jan Rodák <hony.com@seznam.cz>
2026-03-16 13:48:41 +01:00
Jan Rodák
1ccded76ce Use InspectNetwork helper in e2e tests
Signed-off-by: Jan Rodák <hony.com@seznam.cz>
2026-03-16 13:47:01 +01:00
Jan Rodák
6acfd58026 Add multi-IP container support
Add tests for multiple static IPs per container across single and multi-subnet networks.
Document --network option for comma-separated IPs and subnet-based IP ordering.

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

Signed-off-by: Jan Rodák <hony.com@seznam.cz>
2026-03-16 13:47:01 +01:00
Lokesh Mandvekar
03f0b70b28 Merge pull request #28286 from com6056/fix-container-create-409
compat: return 409 Conflict when container name is already in use
2026-03-16 16:44:35 +05:30
Jan Rodák
23bb500a76 Merge pull request #28252 from containers/renovate/openapi-schema-validator-0.x
chore(deps): update dependency openapi-schema-validator to ~=0.8.1
2026-03-16 11:36:04 +01:00
Jan Rodák
e3754862d1 Merge pull request #28265 from kyounghunJang/main
feat: print client info from `podman version` when the server is not available
2026-03-16 11:35:16 +01:00
Tom Sweeney
8b0f9eb8a4 Merge pull request #28281 from ricardobranco777/arm64e2e
tests/e2e: Do not try to list /proc/acpi on non-amd64
2026-03-13 13:25:49 -04:00
Jordan Rodgers
7ecac4a65e compat: return 409 Conflict when container name is already in use
The Docker API spec defines HTTP 409 for POST /containers/create when
the requested name is already in use. The handler was returning 500 for
all errors from ContainerCreate, including ErrCtrExists.

This mismatch breaks buildx parallel builds on Podman: buildx checks
for a conflict response to safely converge multiple concurrent builders
onto the already-running BuildKit container. With 500 it treats the
conflict as a fatal error instead, causing all but the first parallel
build to fail.

The fix follows the same pattern already used in the rename handler,
which correctly returns 409 for ErrCtrExists. The swagger annotation
for this endpoint already documents the 409 response.

Signed-off-by: Jordan Rodgers <com6056@gmail.com>
2026-03-13 09:53:04 -07:00
Matt Heon
f43504a329 Merge pull request #28279 from umut-polat/fix-quadlet-empty-entrypoint
quadlet: allow empty Entrypoint to clear image default
2026-03-13 09:20:06 -04:00
KyounghoonJang
c7921b0049 feat: print client info from podman version when the server is unavailable
In remote mode, `podman version` currently returns a connection error before
printing any version information if it cannot connect to the service.

Introduce a reusable `PrintVersion` helper and invoke it at the root level
when a `ConnectionError` is encountered. This ensures that client information
is still shown even when the server cannot be reached.

Fixes: #28222
Signed-off-by: KyounghoonJang <matkimchi_@naver.com>
2026-03-13 19:09:54 +09:00
umut-polat
926f562bd5 quadlet: allow empty Entrypoint to clear image default
Setting Entrypoint= (empty value) in a quadlet .container file should
produce --entrypoint "" in the generated podman command, which clears
the image's default entrypoint. Previously this was silently ignored
because lookupAndAddString skips empty values.

Move the Entrypoint key out of the generic stringKeys map and handle
it separately so that an empty value is passed through.

Closes #28213

Signed-off-by: umut-polat <52835619+umut-polat@users.noreply.github.com>
2026-03-13 08:14:57 +00:00
Ricardo Branco
67ccf4940c tests/e2e: Do not try to list /proc/acpi on non-amd64
Signed-off-by: Ricardo Branco <rbranco@suse.de>
2026-03-12 21:31:11 +01:00
Paul Holzinger
14dd313d41 Merge pull request #27766 from Banana-Cultist/podman-events-oom
Improve OOMKilled Visibility
2026-03-12 19:23:02 +01:00
Paul Holzinger
1f3c344312 run modernize -fix ./...
modernize seems to be smarter now so it found some more things that are
not even go 1.25 related.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2026-03-12 17:22:01 +01:00
Ricardo Branco
cd2f122fb4 test/e2e: Skip some tests on non-amd64 architectures
Signed-off-by: Ricardo Branco <rbranco@suse.de>
2026-03-12 15:18:04 +01:00
Ricardo Branco
a5dbe484d3 test/e2e: Introduce SkipIfNotAMD64 helper
Signed-off-by: Ricardo Branco <rbranco@suse.de>
2026-03-12 14:53:05 +01:00
Ricardo Branco
e5f61281ff test/e2e: skip LINUX32 personality check on non-amd64 architectures
Signed-off-by: Ricardo Branco <rbranco@suse.de>
2026-03-12 14:53:05 +01:00
Ricardo Branco
a4d0fd8853 test/e2e: Add linkat to seccomp profile
Some architectures (i.e., arm64) do not implement the link(2) system
call and ln(1) uses linkat(2) instead.

Use the names array to block both syscalls so the tests works on all
architectures.

Signed-off-by: Ricardo Branco <rbranco@suse.de>
2026-03-12 14:53:05 +01:00
renovate[bot]
1fe0238758 chore(deps): update dependency openapi-schema-validator to ~=0.8.1
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-11 15:48:31 +00:00
Bruce Fan
ffeb0d103b Improve OOMKilled visibility in podman events and in podman inspect docs
Signed-off-by: Bruce Fan <brucexfan@gmail.com>
2026-03-11 10:15:56 -05:00
renovate[bot]
ed3d3688dc chore(deps): update dependency pytest to v9.0.2
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-11 09:19:21 +00:00
Šimon Brauner
76095dbadc Make libpod return error status code on failure to pull image
Fixes: https://github.com/containers/podman/issues/22105

Signed-off-by: Šimon Brauner <sbrauner@redhat.com>
2026-03-09 14:26:14 +01:00
Jan Kaluza
56e555bfc2 api/compat: switch to moby/moby
Replace github.com/docker/docker API imports with github.com/moby/moby
across compat handlers, swagger models, and tests to align with upstream
type definitions.

Fixes: #27536.

Signed-off-by: Jan Kaluza <jkaluza@redhat.com>
2026-03-09 11:09:23 +01:00
Paul Holzinger
5adac65c0a Merge pull request #28208 from mtrmac/tls-behavior-basics
Add --tls-details for (pull, push, run, login, logout)
2026-03-06 16:33:38 +01:00