26841 Commits

Author SHA1 Message Date
Miloslav Trmač
d06c4569f0 Make most of libpod, and everything that relies on it, non-darwin
Require (linux || freebsd), because the code already does that, in practice.
This just means macOS users of IDEs aren't hit with thousands of compilation
errors (and then the IDE can open an Linux-specific file and then process it
under the Linux assumption, which works much better).

This commit contains the parts that differ somehow.

Signed-off-by: Miloslav Trmač <mitr@redhat.com>
2026-02-27 22:18:53 +01:00
Miloslav Trmač
4c3027c149 Make most of libpod, and everything that relies on it, non-darwin
Require (linux || freebsd), because the code already does that, in practice.
This just means macOS users of IDEs aren't hit with thousands of compilation
errors (and then the IDE can open an Linux-specific file and then process it
under the Linux assumption, which works much better).

This commit ONLY replaces
	//go:build !remote
with
	//go:build !remote && (linux || freebsd)

and is split from the rest to allow mechanically verifying that fact,
and focusing a review on the other kinds of changes.

Signed-off-by: Miloslav Trmač <mitr@redhat.com>
2026-02-27 22:18:36 +01:00
Yuvraj Singh Chauhan
30f067354f docs(podman-systemd.unit.5.md): document protocol support for PublishPort
Fixes: #28146
Signed-off-by: Yuvraj Singh Chauhan <ysinghcin@gmail.com>

Update docs/source/markdown/podman-systemd.unit.5.md

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Signed-off-by: Yuvraj Singh Chauhan <24429@iiitu.ac.in>

Update docs/source/markdown/podman-systemd.unit.5.md

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Signed-off-by: Yuvraj Singh Chauhan <24429@iiitu.ac.in>

Update docs/source/markdown/podman-systemd.unit.5.md

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Signed-off-by: Yuvraj Singh Chauhan <24429@iiitu.ac.in>

docs(podman-systemd.unit.5.md): clarify supported protocols for PublishPort

Update docs/source/markdown/podman-systemd.unit.5.md

Co-authored-by: Danish Prakash <contact@danishpraka.sh>
Signed-off-by: Yuvraj Singh Chauhan <24429@iiitu.ac.in>

docs(podman-systemd.unit.5.md): update valid protocols for PublishPort to include sctp (rootful only)

docs(podman-systemd.unit.5.md): clarify supported protocols for PublishPort
2026-02-27 15:30:57 +05:30
dvorst
84eff9ef3b Fix: Rootless Podman-in-Podman on WSL
closes: #27411

Adjust SUB_UID and SUB_GID ranges to support running rootless Podman inside a rootless run Podman container.
Also add a test to verify the change and prevent regression.

By default, a new user is assigned the following sub-ID ranges:
  SUB_UID_MIN=100000, SUB_GID_MIN=100000, SUB_UID_COUNT=65536, SUB_GID_COUNT=65536
This means the user’s sub-UID and sub-GID ranges are 100000–165535.

When the container is run rootless with the user defined below, ID mappings occur as follows:
- Container ID 0 (root) maps to user ID 1000 on the host (which is the user created below).
- Container IDs 1–65536 map to IDs 100000–165535 on host (the subid range previously mentioned).

If a new user is created inside this container (to build containers for example), it will
attempt to use the default sub-ID range (100000–165535). However, this exceeds the container’s
available ID mapping, since only IDs up to 65536 are mapped. This causes nested rootless Podman
to fail.

To enable container-in-container builds, the sub-ID ranges for the user must be large enough
to provide at least 65536 usable IDs. A minimum SUB_UID_COUNT and SUB_GID_COUNT of 165536 is
required, but 1,000,000 is used here to provide additional margin.

1,000,000 matches the subid range other machines are using, defined in [ignition.go](69b397af49/pkg/machine/ignition/ignition.go (L284-L289)).
The script of other machines modify the subid files directly for 1 user, the `sed` command used in
this fix mimics that.

The test is added as en extension to the 'simple init with username' test case, to prevent having
to create a new VM.

Signed-off-by: dvorst <87502756+dvorst@users.noreply.github.com>
2026-02-27 10:52:14 +01:00
Ygal Blum
6c41f55aa7 Quadlet Volume - allow setting mount option without a device
Fixes: #28132

Signed-off-by: Ygal Blum <ygal.blum@gmail.com>
2026-02-26 12:27:23 -05:00
Paul Nettleton
f58c9dcbcb docs(podman-systemd.unit.5.md): add ServiceName= option to all Quadlet types
The `ServiceName=` Quadlet option was only documented for `.pod` and
`.artifact` units. However, it applies to all Quadlet types as it is a
global option.

Added `ServiceName=` listing and description to the `[Container]`,
`[Kube]`, `[Network]`, `[Volume]`, `[Build]`, and `[Image]` sections.

Fixes: #27015
Signed-off-by: Paul Nettleton <k9@k9withabone.dev>
2026-02-26 10:54:53 -06:00
Ygal Blum
64ec31ac00 Add nocreate option for named volumes
Add a per-volume 'nocreate' option that prevents automatic creation of
named volumes when they don't exist. When specified, Podman will fail
if the volume is not found instead of creating it automatically.

Usage: -v myvolume:/data:nocreate
       --mount type=volume,src=myvolume,dst=/data,nocreate

See: #27862
Signed-off-by: Ygal Blum <ygal.blum@gmail.com>
2026-02-26 11:14:32 -05:00
Tim Zhou
e914c30dd5 update swagger changes
Signed-off-by: Tim Zhou <tizhou@redhat.com>
2026-02-26 09:51:15 -05:00
Jan Kaluza
dc9adfeaff Add LLM (AI) Policy.
This commit adds new LLM_POLICY.md which contains our LLM Policy. It is
based on https://docs.google.com/document/d/1VxYDXT3kIiBAFJHY4fsyFRrddtgIKCrFt_juI7ofsXo
which has been discussed on the previous Podman Community Meeting.

Signed-off-by: Jan Kaluza <jkaluza@redhat.com>
2026-02-26 10:41:06 +01:00
Ozgur As
03d9de1528 Fix container clone with secret type=env
ConfigToSpec() serializes the container config to JSON and deserializes
it into a SpecGenerator. Both structs use the JSON tag "secret_env" but
with incompatible types: the container config uses map[string]*secrets.Secret
(complex objects) while the specgen uses map[string]string (env var name
to secret name). This causes an unmarshal error when cloning containers
that use --secret with type=env.

Fix this by saving and clearing EnvSecrets before JSON marshal (same
pattern as existing tmpSystemd/tmpMounts), then converting the secret
objects to name strings and assigning them to the specgen afterward.

Also fix FillOutSpecGen to not overwrite env secrets populated by
ConfigToSpec when no new secrets are provided on the command line.

Fixes: #28130
Signed-off-by: Ozgur As <ozgur@live.com>
2026-02-25 19:53:36 +03:00
Paul Holzinger
d3a81e3e17 Merge pull request #28150 from sidneychang/docs-rootless-networking-defaults
docs: update rootless default networking mode
2026-02-25 16:34:08 +01:00
2190206983@qq.com
176bab3feb docs: update rootless default networking mode
Signed-off-by: sidneychang <2190206983@qq.com>
2026-02-25 23:17:23 +08:00
Paul Holzinger
2021f2b307 Merge pull request #28080 from containers/renovate/google.golang.org-grpc-1.x
fix(deps): update module google.golang.org/grpc to v1.79.0
2026-02-25 14:35:56 +01:00
Jan Rodák
041f7769a5 Merge pull request #28142 from containers/renovate/openapi-schema-validator-0.x
chore(deps): update dependency openapi-schema-validator to ~=0.7.1
2026-02-25 14:11:49 +01:00
Jan Rodák
4e62f2429a Merge pull request #28138 from Luap99/golangci-lint
update golangci-lint to v2.10.1
2026-02-25 13:53:59 +01:00
Jan Rodák
57ad0b59c4 Merge pull request #28151 from ricardobranco777/rmpod
test/system: fix pod inspect ordering test leak
2026-02-25 12:22:58 +01:00
Paul Holzinger
9a1e5e8eeb cmd/podman-tetsing: fix incorrect error message
Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2026-02-25 11:06:25 +01:00
Ricardo Branco
960165b8c5 test/system: fix pod inspect ordering test leak
Add missing cleanup.

Signed-off-by: Ricardo Branco <rbranco@suse.de>
2026-02-24 22:46:08 +01:00
Lokesh Mandvekar
39ea7ef794 Merge pull request #28121 from pkoenig10/filterStatus
List all status values in status filter documentation
2026-02-24 17:38:00 +05:30
renovate[bot]
35d088ff83 chore(deps): update dependency openapi-schema-validator to ~=0.7.1
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-02-24 10:27:19 +00:00
Paul Holzinger
1492cea16e Merge pull request #28137 from pablomh/patch-1
docs(podman-systemd.unit.5.md): Fix variable syntax
2026-02-23 15:33:02 +01:00
Jan Rodák
54e26a8c7e Merge pull request #28127 from ratijas/work/ratijas/labels 2026-02-23 13:22:06 +01:00
Jan Rodák
459225bad2 Merge pull request #28134 from Veector40/fix-rm-timeout-docs
docs: add examples for rm with --force and --time
2026-02-23 13:10:02 +01:00
Jan Rodák
19a11ac214 Merge pull request #28133 from ricardobranco777/yq
test: Use yq for yaml2json when available
2026-02-23 13:07:34 +01:00
Paul Holzinger
02f0766a79 update golangci-lint to v2.10.1
And remove one false positive comment that got fixed as it seems like.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2026-02-23 10:13:48 +01:00
Paul Holzinger
8a0c777017 fix new staticcheck warnings
As reported by golangci-lint v2.10.1.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2026-02-23 10:00:51 +01:00
Paul Holzinger
5e3719c81a fix two issues found by nilness
Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2026-02-23 09:53:35 +01:00
Pablo Méndez Hernández
072018096d docs(podman-systemd.unit.5.md): Fix variable syntax
Fix variable syntax when referencing UID.

Signed-off-by: Pablo Méndez Hernández <pablomh@redhat.com>
2026-02-22 23:05:48 +01:00
Victor Koycheff
fc089d7f1a docs: add examples for rm with --force and --time
Fixes #26365

Signed-off-by: Victor Koycheff <victorkoycheff@gmail.com>
2026-02-22 19:24:02 +02:00
Ricardo Branco
476ca11994 test: Use yq for yaml2json when available
Signed-off-by: Ricardo Branco <rbranco@suse.de>
2026-02-22 11:29:27 +01:00
Ivan Tkachenko
4fae160fcf Fix documentation inconsistency about labels
Fixes #28120

Signed-off-by: Ivan Tkachenko <me@ratijas.me>
2026-02-20 16:10:47 +02:00
Patrick Koenig
0d7f00b4c0 List all status values in status filter documentation
Signed-off-by: Patrick Koenig <pkoenig10@gmail.com>
2026-02-19 09:28:37 -05:00
Miloslav Trmač
ec0f63c6e5 Merge pull request #28106 from Luap99/vendor
vendor: update go.podman.io/... and buildah to latest
2026-02-18 20:27:18 +01:00
Paul Holzinger
72a0a1179e test/buildah-bud: skip build-with-run-mount
That test uses process substitution for the Containerfile which fails
because podman tries to use /dev/fd as context directory.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2026-02-18 15:19:57 +01:00
Paul Holzinger
a3198235bf bindings: do not validate source policy on the client
The client and server version can mismatch in which case the client may
fail on something the newer server can understand or the other way
around. Given the server has to parse and validate that output no matter
what there does not seem to be a strong argument for doing this on the
client side again.

Also this means we do leak the sourcepolicy package into the remote
client.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2026-02-18 14:18:44 +01:00
Nalin Dahyabhai
474ff994b6 build: connect --source-policy-file, --mount for remote builds
Pass --mount settings and the contents of the --source-policy-file
argument to remote builds.

Signed-off-by: Nalin Dahyabhai <nalin@redhat.com>
Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2026-02-18 14:11:12 +01:00
Paul Holzinger
8af2158a83 vendor: update go.podman.io/... and buildah to latest
Mainly so we get a commit after [1] which makes the renovate auto update
work again. And also buildah to get a fix for a flake [2].

[1] https://github.com/containers/container-libs/pull/635
[2] https://github.com/containers/buildah/pull/6688

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2026-02-18 14:07:29 +01:00
Jan Rodák
38e1aa7ba0 Merge pull request #28085 from JCBird1012/main
compat/api: honor VolumeOptions.Subpath for HostConfig.Mounts
2026-02-18 10:48:54 +01:00
Jan Rodák
c581a93da5 Merge pull request #28095 from MayorFaj/fix/28031-publish-option
fix: add validation for --publish flag in container restore
2026-02-18 10:19:06 +01:00
Matt Heon
7e78e842a0 Merge pull request #28076 from amyssnippet/fix-final-v3
inspect: preserve secret target name in env masking
2026-02-17 12:09:32 -05:00
Paul Holzinger
617282ca7c Merge pull request #28102 from timcoding1988/using-aws-oidc-token
Using aws OIDC token
2026-02-17 12:50:54 +01:00
Paul Holzinger
f4aa01967e Merge pull request #28099 from Honny1/quadlets-restart-pod
Respect user-specified `Restart=` policy in pod units
2026-02-17 12:49:20 +01:00
Lokesh Mandvekar
3c38228a11 Merge pull request #28096 from m-horky/mhorky/quadlet-docs
docs(quadlet): Unify [Network] section on removal
2026-02-17 16:21:22 +05:30
Amol Yadav
ed8eec6bbf using Debugf and removed wierd DEBUG logs
Signed-off-by: Amol Yadav <amyssnipet@yahoo.com>
2026-02-17 13:58:22 +05:30
mhorky
9b611b5380 docs(quadlet): Unify [Network] section on removal
The original text was added in 518daef in 2023-08. Later, in 0d4a148
in 2025-04, a new option has been introduced without the text being
updated.

Signed-off-by: mhorky <mhorky@redhat.com>
2026-02-17 08:16:49 +01:00
Tim Zhou
64a3e31ab9 migrate to oidc
Signed-off-by: Tim Zhou <tizhou@redhat.com>
2026-02-16 21:57:51 -05:00
Jan Rodák
33e8abd637 Respect user-specified Restart= policy in pod units
Fixes: https://github.com/containers/podman/issues/28081

Signed-off-by: Jan Rodák <hony.com@seznam.cz>
2026-02-16 22:12:18 +01:00
MayorFaj
1aefd06760 test: remove redundant test for restoring with --publish without --import
Signed-off-by: MayorFaj <mayorfaj@gmail.com>
2026-02-16 20:13:45 +00:00
Matt Heon
e6e821c6e2 Merge pull request #28059 from timcoding1988/cherry-pick-bot
update cherry pick with pr
2026-02-16 14:33:35 -05:00
Brent Baude
8e7b1343ca Merge pull request #28093 from containers/renovate/github.com-kevinburke-ssh_config-1.x
fix(deps): update module github.com/kevinburke/ssh_config to v1.5.0
2026-02-16 13:20:40 -06:00