Commit graph

4310 commits

Author SHA1 Message Date
Tushar Verma
cf4cb4184c test/e2e: do not use os.Exit for error handling
os.Exit(1) kills the process without ginkgo getting a chance to report
anything, so a failure here shows up as a suite that just stopped with
no output. All six sites run inside ginkgo, three in a SynchronizedBefore
Suite and a helper and three inside It blocks, so Expect works and prints
the error and the location.

The os.Exit(m.Run()) in TestMain stays, that one is correct.

Part of #18540.

Signed-off-by: Tushar Verma <tusharmyself06@gmail.com>
2026-08-25 22:50:18 +05:30
Tushar Verma
9f691c8a65 test/e2e: remove LineInOutputContainsTag
A bool assert on the parsed repo/tag map says nothing about the actual
images output when it fails. Match the line with a regex instead, the
failure then prints every line and the pattern. This also removes
tagOutputToMap which had no other user.
Part of #18540.

Signed-off-by: Tushar Verma <tusharmyself06@gmail.com>
2026-08-25 19:19:39 +05:30
Tushar Verma
88b173cbde test/e2e: remove LineInOutputContains
Both users are plain if conditions, strings.Contains on the output
does the same without a helper.
Part of #18540.

Signed-off-by: Tushar Verma <tusharmyself06@gmail.com>
2026-08-25 10:41:59 +05:30
Tushar Verma
e4699c1b37 test/e2e: remove GrepString
Matching a bool and then indexing into the returned lines gives no
useful output when it fails. Use gomega matchers on the output array
instead, they print the array and the expected match on failure.
Part of #18540.

Signed-off-by: Tushar Verma <tusharmyself06@gmail.com>
2026-08-25 10:40:30 +05:30
Matt Heon
5aba1efe16
Merge pull request #29614 from jiwahn/fix-volume-import-permission
libpod: adjust permissions for imported volumes
2026-08-24 14:36:13 -04:00
Jan Rodák
37efeff76f
Merge pull request #29622 from mtrmac/dd-1G
Don't allocate 1 GB of memory to create a file
2026-08-24 14:32:30 +02:00
Miloslav Trmač
e5d2869e41 Don't allocate 1 GB of memory to create a file
bs=1G means "read 1GB into memory at a time"; we really
don't need that.

On a system with 6GB physical memory (while our test VM is
configured to have 8 GB of virtual RAM), this seems to result
in trashing and exceeding the 30s timeout, while with a
smaller block size, the copy happens in <13 seconds. (dd itself
reports 11 s vs. 27 s).

Signed-off-by: Miloslav Trmač <mitr@redhat.com>
2026-08-21 22:30:38 +02:00
Jiwoo Ahn
de4333ce06 libpod: fix permissions for imported volumes
Imported volumes now get ownership and permissions matching the
container's mount tareget.

Previously, permission adjustment was skipped for imported volumes as
they were already non-empty when mounted.

Fixes: #25442

Signed-off-by: Jiwoo Ahn <ikwydls1314@gmail.com>
2026-08-21 17:35:23 +09:00
umar11b
a46392e486 Add --quiet to podman artifact ls
Problem: podman artifact ls has no way to print just artifact
identifiers. Scripts that want to act on artifacts (e.g. remove them)
have to parse table output or use --format {{.Digest}}. Every other
listing command in podman (images, ps, artifact push/pull) already
supports -q/--quiet for this.

Impact: users can now run `podman artifact ls --quiet` to get one
digest per line, no header, suitable for piping into other podman
commands.

Change: adds a --quiet/-q bool flag to the list command. When set (and
--format is not also given), output.Digest is printed for each
artifact instead of the table.

Signed-off-by: umar11b <uzaman2018@gmail.com>
2026-08-20 16:31:13 -04:00
Matt Heon
f00ce00663
Merge pull request #29565 from magic-peach/fix-29555-kube-memory-emptydir-shared
kube: share memory backed emptyDir between containers in a pod
2026-08-20 15:28:15 -04:00
Atishyy27
ef171ba1b9
Fix ErrorToStringArray handling of empty stderr output
strings.Split(output, "\n") on empty output returns [""], not []. so
ErrorToStringArray() reported empty stderr as one line of empty output
instead of no output, and any caller checking len() got a wrong count.

volume_ls_test.go had to carry HaveLen(1) just to tolerate that on
empty stderr, updated to BeEmpty() now that the length is actually
correct.

filter out empty lines when building the result.

Signed-off-by: Atishyy27 <142108881+Atishyy27@users.noreply.github.com>
2026-08-20 16:24:26 +05:30
Jan Rodák
4edc8d68e3
Merge pull request #29484 from ellieayla/artifact-list-json-output
feat: Add output format: podman artifact ls --format=json
2026-08-19 17:41:01 +02:00
ellieayla
f596bb7a73 feat: Add output format: podman artifact ls --format=json
The 'podman artifact ls' command supports a --format flag accepting a go template string. Some commands (eg 'podman image ls') accept a --format=json parameter, and export pure json object to stdout.

This change adds a --format=json output mode to artifact lists too.

Includes simple documentation mention of --format=json option alongside go template description.

Signed-off-by: ellieayla <1447600+me@users.noreply.github.com>
2026-08-19 10:18:10 -04:00
Akanksha Trehun
70d9884ae9
kube: share memory backed emptyDir between containers in a pod
An emptyDir with "medium: Memory" was translated into a per-container
tmpfs mount, so every container in the pod received its own empty
filesystem. Data written by an init container was therefore invisible to
the regular containers, while Kubernetes specifies that an emptyDir is
shared by all containers in the pod and outlives the init container.

Create an anonymous named volume backed by tmpfs instead. Every
container in the pod refers to the same volume name, so the mount is
shared, and the volume is still removed together with the pod. The
emptyDir sizeLimit is passed through as the tmpfs size option, which was
previously ignored.

Fixes: #29555
Signed-off-by: Akanksha Trehun <akankshatrehun@gmail.com>
2026-08-17 17:58:17 +05:30
umar11b
db6edf74c8 farm: add --quiet/-q flag to podman farm list
The farm command is helpful when it comes to building
multi-architecture container images, with a build out on various
different CPU architecture machines (e.g. amd64, arm64 etc). This
produces a multi-architecture image usable on many different kinds
of machines. Once those farms are built, we can list them out (ls)
in a human readable format.

Currently, podman farm list prints out every field (name,
connections, default, etc). The --quiet/-q flags cut the noise by
only printing the names of the farms, rather than all the other
farm list metadata.

The benefit of having this feature is for automation and scripts to
pull just the farm names from the list, which is mostly important
for CI pipelines to loop over.

Signed-off-by: umar11b <uzaman2018@gmail.com>
2026-08-15 20:52:18 -04:00
Matt Heon
28f33cbad1
Merge pull request #29352 from aryannishad-86/fix-play-kube-nginx-image
test/e2e: fix remaining hardcoded alpine_nginx reference in play_kube_test.go
2026-08-14 09:28:20 -04:00
Jan Rodák
cb7553bade
Merge pull request #29494 from nXtCyberNet/issue/ci
added errorlint
2026-08-14 15:02:05 +02:00
nXtCyberNet
f76d9de01a added errorlint
Fixes: #29488
Signed-off-by: nXtCyberNet <rohantech2005@gmail.com>
2026-08-14 01:35:03 +05:30
Aryan Nishad
702b6a1f0e test/e2e: use NGINX_IMAGE var instead of hardcoded image in play_kube_test.go
The "podman kube --quiet with error" test hardcoded
quay.io/libpod/alpine_nginx:latest directly inside a YAML string instead of
using the NGINX_IMAGE constant, which is already defined per architecture.

This instance was missed in commit cd2f122, which fixed the same pattern in
five other tests in this file, because it used a raw inline literal rather
than the variable.

Signed-off-by: Aryan Nishad <157164036+aryannishad-86@users.noreply.github.com>
2026-08-13 22:51:23 +05:30
Jiwoo Ahn
bf8df1f057 kube: use native seccompProfile fields
Fixes: #27501
Signed-off-by: Jiwoo Ahn <ikwydls1314@gmail.com>
2026-08-13 16:54:23 +09:00
Paul Holzinger
4c1f8f267b
Merge pull request #29301 from vtushar06/ci-desired-runtime-storage
Some checks are pending
ci / int local rootless fedora-prior (push) Blocked by required conditions
ci / sys local rootless fedora-prior (push) Blocked by required conditions
ci / int remote root fedora-prior (push) Blocked by required conditions
ci / sys remote root fedora-prior (push) Blocked by required conditions
ci / int local root fedora-rawhide (push) Blocked by required conditions
ci / sys local root fedora-rawhide (push) Blocked by required conditions
ci / int local rootless fedora-rawhide (push) Blocked by required conditions
ci / sys local rootless fedora-rawhide (push) Blocked by required conditions
ci / int remote root fedora-rawhide (push) Blocked by required conditions
ci / sys remote root fedora-rawhide (push) Blocked by required conditions
ci / apiv2 root fedora-current (push) Blocked by required conditions
ci / bindings root fedora-current (push) Blocked by required conditions
ci / compose_v2 root fedora-current (push) Blocked by required conditions
ci / docker_py root fedora-current (push) Blocked by required conditions
ci / unit root fedora-current (push) Blocked by required conditions
ci / apiv2 rootless fedora-current (push) Blocked by required conditions
ci / compose_v2 rootless fedora-current (push) Blocked by required conditions
ci / farm rootless fedora-current (push) Blocked by required conditions
ci / unit rootless fedora-current (push) Blocked by required conditions
ci / upgrade v5.3.1 root fedora-current (push) Blocked by required conditions
ci / upgrade v5.6.2 root fedora-current (push) Blocked by required conditions
ci / machine linux amd64 (push) Blocked by required conditions
ci / windows unit (push) Blocked by required conditions
ci / windows e2e (push) Blocked by required conditions
ci / windows machine hyperv (push) Blocked by required conditions
ci / windows machine wsl (push) Blocked by required conditions
ci / macos machine applehv (push) Blocked by required conditions
ci / macos machine libkrun (push) Blocked by required conditions
ci / Total Success (push) Blocked by required conditions
zizmor: GitHub Actions Security Analysis / Zizmor (push) Waiting to run
hack/ci: rename STORAGE_FS to CI_DESIRED_STORAGE and add PODMAN_CI
2026-08-12 17:56:22 +02:00
Jan Rodák
1ef3bd6058
Re-enable pesto IPv6 forwarding tests
The pasta IPv6 local-mode fix has been released upstream.

Fixes: https://github.com/podman-container-tools/podman/issues/29268

Signed-off-by: Jan Rodák <hony.com@seznam.cz>
2026-08-12 10:23:55 +02:00
Paul Holzinger
10b0bc1deb
Merge pull request #29341 from Aryanbhargava18/fix/healthcheck-flake-2
test/e2e: fix and re-enable healthcheck run test flake
2026-08-11 18:21:56 +02:00
Jan Rodák
6394caebcd
Merge pull request #29417 from sahilnyk/quadlet-umask
quadlet: add Umask= key to set container umask without PodmanArgs
2026-08-11 14:05:30 +02:00
Matt Heon
2ded88e563
Merge pull request #29302 from prayag0one4/fix-testvol-mount-check
testvol: return error in Path endpoint when volume is unmounted
2026-08-10 13:03:22 -04:00
Salih Muhammed
aec2f54ec6 quadlet: expand %N specifier in the Pod key
Some checks are pending
ci / sys local root fedora-prior (push) Blocked by required conditions
ci / int local rootless fedora-prior (push) Blocked by required conditions
ci / sys local rootless fedora-prior (push) Blocked by required conditions
ci / int remote root fedora-prior (push) Blocked by required conditions
ci / sys remote root fedora-prior (push) Blocked by required conditions
ci / int local root fedora-rawhide (push) Blocked by required conditions
ci / sys local root fedora-rawhide (push) Blocked by required conditions
ci / int local rootless fedora-rawhide (push) Blocked by required conditions
ci / sys local rootless fedora-rawhide (push) Blocked by required conditions
ci / int remote root fedora-rawhide (push) Blocked by required conditions
ci / sys remote root fedora-rawhide (push) Blocked by required conditions
ci / apiv2 root fedora-current (push) Blocked by required conditions
ci / bindings root fedora-current (push) Blocked by required conditions
ci / compose_v2 root fedora-current (push) Blocked by required conditions
ci / docker_py root fedora-current (push) Blocked by required conditions
ci / unit root fedora-current (push) Blocked by required conditions
ci / apiv2 rootless fedora-current (push) Blocked by required conditions
ci / compose_v2 rootless fedora-current (push) Blocked by required conditions
ci / unit rootless fedora-current (push) Blocked by required conditions
ci / upgrade v5.3.1 root fedora-current (push) Blocked by required conditions
ci / upgrade v5.6.2 root fedora-current (push) Blocked by required conditions
ci / machine linux amd64 (push) Blocked by required conditions
ci / windows unit (push) Blocked by required conditions
ci / windows e2e (push) Blocked by required conditions
ci / windows machine hyperv (push) Blocked by required conditions
ci / windows machine wsl (push) Blocked by required conditions
ci / macos machine applehv (push) Blocked by required conditions
ci / macos machine libkrun (push) Blocked by required conditions
ci / Total Success (push) Blocked by required conditions
zizmor: GitHub Actions Security Analysis / Zizmor (push) Waiting to run
The Pod key of a .container unit accepts systemd specifiers, but handlePod
looked the referenced pod up in the units map using the raw value, so
"Pod=%N.pod" failed with "quadlet pod unit %N.pod does not exist" instead
of resolving to the pod named after the container's service.

Expand %N to the container's service name before the lookup, matching the
existing handling in GetContainerResourceName. Since %N is the service
name, setting ServiceName= lets the container and pod unit files use
different names.

Add e2e cases for both combinations: a pod named after the container
file, and a pod named after a ServiceName that differs from the file
name.

Fixes: #29108
Signed-off-by: Salih Muhammed <root@lr0.org>
2026-08-09 04:23:53 -04:00
Paul Holzinger
a5c3046135
test/e2e: update quay.io/libpod/volume-plugin-test-img
Use a new image I build which is also multi-arch so we can remove the
test skip.

Fixes: #28270

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2026-08-07 15:42:44 +02:00
Sahil Nayak
bda5521804 quadlet: add Umask= key to set container umask without PodmanArgs
Fixes: #25278

Co-authored-by: Tom Sweeney <tsweeney@redhat.com>
Signed-off-by: Sahil Nayak <contactsahilpnayak@gmail.com>
2026-08-07 16:17:35 +05:30
Matt Heon
0ad5459fab
Merge pull request #29145 from ROKUMATE/feat-playkube-warn-unknown-keys
Some checks are pending
ci / sys local root fedora-prior (push) Blocked by required conditions
ci / int local rootless fedora-prior (push) Blocked by required conditions
ci / sys local rootless fedora-prior (push) Blocked by required conditions
ci / int remote root fedora-prior (push) Blocked by required conditions
ci / sys remote root fedora-prior (push) Blocked by required conditions
ci / int local root fedora-rawhide (push) Blocked by required conditions
ci / sys local root fedora-rawhide (push) Blocked by required conditions
ci / int local rootless fedora-rawhide (push) Blocked by required conditions
ci / sys local rootless fedora-rawhide (push) Blocked by required conditions
ci / int remote root fedora-rawhide (push) Blocked by required conditions
ci / sys remote root fedora-rawhide (push) Blocked by required conditions
ci / apiv2 root fedora-current (push) Blocked by required conditions
ci / bindings root fedora-current (push) Blocked by required conditions
ci / compose_v2 root fedora-current (push) Blocked by required conditions
ci / docker_py root fedora-current (push) Blocked by required conditions
ci / unit root fedora-current (push) Blocked by required conditions
ci / apiv2 rootless fedora-current (push) Blocked by required conditions
ci / compose_v2 rootless fedora-current (push) Blocked by required conditions
ci / unit rootless fedora-current (push) Blocked by required conditions
ci / upgrade v5.3.1 root fedora-current (push) Blocked by required conditions
ci / upgrade v5.6.2 root fedora-current (push) Blocked by required conditions
ci / machine linux amd64 (push) Blocked by required conditions
ci / windows unit (push) Blocked by required conditions
ci / windows e2e (push) Blocked by required conditions
ci / windows machine hyperv (push) Blocked by required conditions
ci / windows machine wsl (push) Blocked by required conditions
ci / macos machine applehv (push) Blocked by required conditions
ci / macos machine libkrun (push) Blocked by required conditions
ci / Total Success (push) Blocked by required conditions
zizmor: GitHub Actions Security Analysis / Zizmor (push) Waiting to run
podman kube play: add --validate=ignore|warn|strict flag
2026-08-06 18:21:03 -04:00
Danish Prakash
a411828811
Merge pull request #29380 from ricardobranco777/criu_tcp
Some checks are pending
ci / sys local root fedora-prior (push) Blocked by required conditions
ci / int local rootless fedora-prior (push) Blocked by required conditions
ci / sys local rootless fedora-prior (push) Blocked by required conditions
ci / int remote root fedora-prior (push) Blocked by required conditions
ci / sys remote root fedora-prior (push) Blocked by required conditions
ci / int local root fedora-rawhide (push) Blocked by required conditions
ci / sys local root fedora-rawhide (push) Blocked by required conditions
ci / int local rootless fedora-rawhide (push) Blocked by required conditions
ci / sys local rootless fedora-rawhide (push) Blocked by required conditions
ci / int remote root fedora-rawhide (push) Blocked by required conditions
ci / sys remote root fedora-rawhide (push) Blocked by required conditions
ci / apiv2 root fedora-current (push) Blocked by required conditions
ci / bindings root fedora-current (push) Blocked by required conditions
ci / compose_v2 root fedora-current (push) Blocked by required conditions
ci / docker_py root fedora-current (push) Blocked by required conditions
ci / unit root fedora-current (push) Blocked by required conditions
ci / apiv2 rootless fedora-current (push) Blocked by required conditions
ci / compose_v2 rootless fedora-current (push) Blocked by required conditions
ci / unit rootless fedora-current (push) Blocked by required conditions
ci / upgrade v5.3.1 root fedora-current (push) Blocked by required conditions
ci / upgrade v5.6.2 root fedora-current (push) Blocked by required conditions
ci / machine linux amd64 (push) Blocked by required conditions
ci / windows unit (push) Blocked by required conditions
ci / windows e2e (push) Blocked by required conditions
ci / windows machine hyperv (push) Blocked by required conditions
ci / windows machine wsl (push) Blocked by required conditions
ci / macos machine applehv (push) Blocked by required conditions
ci / macos machine libkrun (push) Blocked by required conditions
ci / Total Success (push) Blocked by required conditions
zizmor: GitHub Actions Security Analysis / Zizmor (push) Waiting to run
test/e2e: accept RESTORE in checkpoint tcp error match
2026-08-06 11:05:31 +05:30
ROKUMATE
0d09e609e4 add validate flag to podman kube play
ignore warn and strict modes for unknown yaml fields and kinds
ignore is the default and skips them warn reports them strict fails
warnings are returned in the play report so they show up in the cli and over the api for tools like podman desktop

Closes #18332

Signed-off-by: ROKUMATE <rohitkumawat0110@gmail.com>
2026-08-05 17:42:40 +05:30
Brent Baude
80bf6e6a10
Merge pull request #29227 from ashley-cui/dnsnames
Add dnsnames field & fix alias field
2026-08-04 08:49:33 -05:00
Ashley Cui
d05eddd683 Add dnsnames field & fix alias field
Docker now reserves alias specfically for user-defined aliases, and uses another field, dnsnames, to hold all aliases, including container ID and name.
Part of docker v1.45 compat work, but this touches the cli too, since they updated it there too.

Signed-off-by: Ashley Cui <acui@redhat.com>
2026-08-03 16:19:14 -04:00
Ricardo Branco
8555cffd1f
test/e2e: skip tcp-close restore test on non-crun runtimes
runc doesn't support --tcp-close, so this test always failed there
once the flag hit the runtime. Skip it entirely for non-crun since
since --tcp-established already covers runc above.

Signed-off-by: Ricardo Branco <rbranco@suse.de>
2026-08-03 15:49:44 +02:00
Ricardo Branco
e421a366f5
test/e2e/healthcheck: skip ignore-result test on non-amd64
The badhealthcheck image is available only on amd64.

Skip the test on non-amd64 hosts.

Signed-off-by: Ricardo Branco <rbranco@suse.de>
2026-08-03 15:10:35 +02:00
Ricardo Branco
b93e731c51
test/e2e: accept RESTORE in checkpoint tcp error match
Both the tcp-established and tcp-close checkpoint/restore tests expect
a restore rejected due to an established TCP connection to fail with
"runc: criu failed: type NOTIFY errno 0". criu's RPC server actually
reports this failure as type RESTORE, not NOTIFY. Widen the regex in
both tests to accept RESTORE while still tolerating NOTIFY.

Signed-off-by: Ricardo Branco <rbranco@suse.de>
2026-08-03 14:40:03 +02:00
Aryanbhargava18
b050cb8a80 test/e2e: fix and re-enable healthcheck run test flake
The 'podman healthcheck on valid container' test was skipped since 2019 due to a consistent flake. The root cause was a brittle manual 5-second polling loop that failed on heavily loaded CI runners before the healthcheck daemon could initialize.

This commit modernizes the polling logic by replacing the manual loop with Ginkgo's robust Eventually block with a 30-second timeout, allowing the test to run reliably on all environments, and removes the Skip directive.

Signed-off-by: Aryanbhargava18 <aryanbhargava644@gmail.com>
2026-07-30 13:58:55 +05:30
Tushar Verma
344d79131a hack/ci: rename STORAGE_FS to CI_DESIRED_STORAGE and add PODMAN_CI
Signed-off-by: Tushar Verma <tusharmyself06@gmail.com>
2026-07-29 18:22:44 +05:30
Jan Rodák
dc5c3b0c55
Skip pesto IPv6 forwarding tests pending pasta release
pasta's IPv6 local-mode forwarding requires an unreleased upstream
patch. Skip the affected E2E tests until the fix ships in a pasta
release.

Signed-off-by: Jan Rodák <hony.com@seznam.cz>
Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2026-07-28 18:29:59 +02:00
Jan Rodák
99274534ca
Add pesto port forwarding tests for IPv6 and multi-IP routing
Signed-off-by: Jan Rodák <hony.com@seznam.cz>
2026-07-28 18:29:59 +02:00
Satwik Sai Prakash Sahoo
6d057f585a
test: fix cgroups=split flake by adding Delegate=yes to scope
The cgroups=split e2e test wraps podman in systemd-run --scope but does not request cgroup delegation. Without Delegate=yes, systemd does not guarantee that controllers like pids are written to cgroup.subtree_control for child cgroups. Whether they appear depends on the systemd session state at that moment, causing flaky crun failures when it tries to use unavailable controllers.

Fixes: #28944
Signed-off-by: Satwik Sai Prakash Sahoo <sahoospsatwik@gmail.com>
2026-07-26 12:44:16 +05:30
Paul Holzinger
cc8c07d72b
Merge pull request #29230 from i-OmSharma/fix-kube-generate-selinux-note
fix(kube): gate SELinux volume warning note on host SELinux state
2026-07-24 14:07:32 +02:00
Jiwoo Ahn
f85047302c libpod: cleanup after failed container init
Fixes: #26143

Signed-off-by: Jiwoo Ahn <ikwydls1314@gmail.com>
2026-07-23 22:42:14 +09:00
Paul Holzinger
d79cff0799
test/e2e: do not assume /etc/containers/policy.json
With the new config work we expect policy.json to be shipped under
/usr/share/containers/policy.json. However the CI VMs and local users
might still have it in /etc so instead of assuming any host path lets
just create our own files for the --signature-policy tests.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2026-07-22 12:40:02 +02:00
i-OmSharma
cfd3a3f7ba
kube generate: gate SELinux volume NOTE on host state and rootless
The SELinux volume-permissions NOTE only applies to unprivileged,
rootless containers on an SELinux-enabled host. Emit it only when
both conditions hold, instead of on every volume-bearing object.

Add an e2e case generating from a standalone container with a volume,
asserting the NOTE appears only when rootless and SELinux is enabled.

Fixes: #17743
Signed-off-by: i-OmSharma <sharmaom1201@gmail.com>
2026-07-22 14:21:01 +05:30
Evzen Gasta
a19b696de1 feat(info): add memAvailable to host info
Expose MemAvailable alongside MemFree/MemTotal in `podman info` host
section, sourced from libpod/define/info.go's MemInfo.

Fixes: #29116 https://github.com/podman-container-tools/podman/issues/29116

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Signed-off-by: Evzen Gasta <evzen.ml@seznam.cz>

test(info): add coverage for host.memAvailable

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Signed-off-by: Evzen Gasta <evzen.ml@seznam.cz>
2026-07-22 08:41:59 +02:00
zjuzhongwen
2c8a7acbeb chore: fix some comments to improve readability
Signed-off-by: zjuzhongwen <zjuzhongwen@outlook.com>
2026-07-19 22:18:33 +08:00
Danish Prakash
5561e6c416
Merge pull request #29168 from Honny1/fix-json-format
Fix inspect template `.HostIp` for Docker compatibility
2026-07-14 13:38:30 +05:30
Jan Rodák
030b0be9d8
Add HostIp() method to InspectHostPort for Docker template compat
Docker-compatible inspect templates using `{{.HostIp}}` fail in Podman
because Go templates resolve by struct field name (`HostIP`), not JSON
tag (`HostIp`). Add a `HostIp()` method so both notations work.

Note: this does not address the struct-vs-map difference that prevents
`range` over individual port bindings (would require an API break).

Relates: https://github.com/podman-container-tools/podman/issues/29164

Signed-off-by: Jan Rodák <hony.com@seznam.cz>
2026-07-13 16:08:11 +02:00
Jan Rodák
7ac3e83707
Fix duplicated command in inspect Args when container has single-element command
Fixes: https://github.com/podman-container-tools/podman/issues/29155

Signed-off-by: Jan Rodák <hony.com@seznam.cz>
2026-07-09 17:31:21 +02:00