The remote client (podman --remote) was incorrectly throwing an error
when --detach-keys="" was specified for attach, run, or start commands.
According to documentation and the v1.7.0 release notes, specifying an
empty string should disable detaching, not cause an error.
Fixes: #27414
Signed-off-by: shiavm006 <shivammittal42006@gmail.com>
This also includes a number of significant changes to the SQLite
state made possible by removal of the legacy DB.
1. Enable database unit tests for SQLite state, with numerous
tweaks to get tests passing. Most notable changes are to
container removal - where we previously didn't return an error
if there was no container to remove - and RemovePodContainers,
which I don't think ever worked properly from my reading of
the failures.
2. Removal of AddContainerToPod/RemoveContainerToPod. On SQLite,
these functions are identical to AddContainer/RemoveContainer
and there is no reason to retain duplicates.
3. Removal of SafeRewriteContainerConfig - it's identical to
RewriteContainerConfig in SQLite, no reason to have duplicate
entrypoints.
As an exciting side-note, this removes Podman's requirement that
containers and pods cannot share a name, which was a BoltDB
restriction only.
Signed-off-by: Matt Heon <matthew.heon@pm.me>
- Add comprehensive mock registry server for e2e search tests
- Replace quay.io and other external registry calls with local mock
- Improve test reliability by removing network dependencies
- Maintain full test coverage with controlled mock data
Fixes: https://github.com/containers/podman/issues/27304
Fixes: https://issues.redhat.com/browse/RUN-3623
Signed-off-by: Jan Rodák <hony.com@seznam.cz>
Tremendous amount of changes in here, but all should amount to
the same thing: changing Go import paths from v5 to v6.
Also bumped go.mod to github.com/containers/podman/v6 and updated
version to v6.0.0-dev.
Signed-off-by: Matt Heon <mheon@redhat.com>
This change adds a .CreatedAt format option to the podman artifact ls
command to match the behavior of podman images --format CreatedAt.
The .Created field continues to display human-readable elapsed time
(e.g., '6 hours ago'), while the new .CreatedAt field displays the
full timestamp (e.g., '2025-10-23 12:34:56 +0000 UTC').
Changes:
- Refactored artifactListOutput struct to store time.Time value
- Added CreatedAt() method returning full timestamp string
- Added Created() method for human-readable duration
- Updated documentation to include .CreatedAt field
- Added e2e test for .CreatedAt format option
Generated-with: Cursor AI
Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
After the tests had all but passed on #27343, I noted
a minor typo. This corrects the one character flaw.
Signed-off-by: tomsweeneyredhat <tsweeney@redhat.com>
Add new alias `podman quadlet cat` to `podman quadlet print`
to align Podman's quadlet CLI with systemd conventions.
Fixes: https://github.com/containers/podman/issues/27296
Signed-off-by: Artem Sierikov <sierikov@pm.me>
Vendor Buildah v1.42.0 into Podman for v5.7.0.
This will also drag in:
go.podman.io/common v0.66.0
go.podman.io/image v5.38.0
go.podman.io/storage v1.61.0
Signed-off-by: tomsweeneyredhat <tsweeney@redhat.com>
We started logging this in 5.6. In 5.7, we up to a warning. The
upcoming 5.8 will up the warnings further to errors.
Required as we're removing BoltDB support in 6.0 next Spring.
Signed-off-by: Matt Heon <matthew.heon@pm.me>
Signed-off-by: axel7083 <42176370+axel7083@users.noreply.github.com>
fix: update kube play command cobra use
Signed-off-by: axel7083 <42176370+axel7083@users.noreply.github.com>
Add multi-file support to podman kube play/down
- Support multiple YAML files and URLs in single command
- Combine files with YAML document separators (---)
- Refactor for better testability with dependency injection
- Update documentation with examples for multiple inputs
- Improve memory efficiency with streaming I/O operations
Fixes: https://github.com/containers/podman/issues/26274
Fixes: https://issues.redhat.com/browse/RUN-3586
Signed-off-by: Jan Rodák <hony.com@seznam.cz>
Many commands support the `--format` flag which accept a go template to
allow for formatting for certain values, but it is not
yet implemented for artifact inspect command.
Adding this feature will allow easy formatting in scripts as well as
running it on a terminal.
This feature is implemented for artifact inspect by taking reference
from images and network commands implementation.
Fixes: [#27112](https://github.com/containers/podman/issues/27112)
Signed-off-by: Akash Yadav <akashyadav256526@gmail.com>
Problem: While removing cgroupsv1 code, I noticed my neovim Go config
automatically changed fileperms to the new octal format and I didn't
want that polluting my diffs.
Decision: I thought it best to switch to the new octal format in a dedicated PR.
Action:
- Cursor switched to new octal format for all fileperm ocurrences in Go
source and test files.
- vendor/, docs/ and non-Go files were ignored.
- Reviewed manually.
Ref: https://go.dev/ref/spec#Go_1.13
Signed-off-by: Lokesh Mandvekar <lsm5@redhat.com>
pkg/libartifact has been moved to common and as such needs to be removed
from podman and the new common vendored in along with required deps.
https://issues.redhat.com/browse/RUN-3618
Signed-off-by: Brent Baude <bbaude@redhat.com>
Adds /libpod/local/build endpoint, client bindings, and path translation
utilities to enable container builds from mounted directories to podman machine without tar uploads.
This optimization significantly speeds up build operations when working with remote Podman machines by eliminating redundant file transfers for already-accessible files.
Fixes: https://issues.redhat.com/browse/RUN-3249
Signed-off-by: Jan Rodák <hony.com@seznam.cz>