2347 Commits

Author SHA1 Message Date
6405925f79 Add artifact fallback to podman inspect command
This commit implements automatic artifact fallback for the podman inspect command
as requested in GitHub issue #27075.

Changes made:
- Add ArtifactType constant to cmd/podman/common/inspect.go
- Update AutocompleteInspectType to include artifact type in completions
- Add artifact case to main inspect switch statement for explicit --type artifact
- Implement artifact fallback in inspectAll function for automatic detection
- Update shell completion to recognize artifacts in getEntityType function
- Update command help text, usage, and examples to include artifacts
- Update podman-inspect.1.md man page with artifact documentation
- Add comprehensive e2e tests for artifact inspect functionality

The inspect command now automatically falls back to artifact inspection when
no container, image, volume, network, or pod matches the specified name.
Users can also explicitly use --type artifact for direct artifact inspection.

This maintains backward compatibility while extending functionality to support
the artifact object type seamlessly.

Examples:
  podman inspect myartifact                        # Auto-detects artifact
  podman inspect --type artifact myartifact       # Explicit artifact type
  podman inspect --format '{{.Name}}' myartifact  # Format support

Fixes: https://github.com/containers/podman/issues/27075
Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2025-10-02 06:52:32 -04:00
3747e3db3f Merge pull request #24601 from meln5674/feature/remote-tls
Support (m)TLS API Socket
2025-09-30 16:19:14 +00:00
116e4588c4 Merge pull request #27173 from ninja-quokka/update_volume_mount_options
[DOCS] Update volume mount docs for subpath support
2025-09-29 15:38:38 +00:00
6a6a8aba94 Merge pull request #27159 from nothiaki/artifact-list-virtual-size
Added virtual size option in artifact ls format
2025-09-29 14:29:03 +00:00
c11941eadb [DOCS] Update volume mount docs for subpath support
Support for the subpath option was added the named volume mount type in
[1] however this was missed from the docs.

[1] https://github.com/containers/podman/pull/24532`

Signed-off-by: Lewis Roy <lewis@redhat.com>
2025-09-27 15:41:40 +10:00
feb36e4fe6 Implement TLS API Support
* Added flags to point to TLS PEM files to use for exposing and connecting
  to an encrypted remote API socket with server and client authentication.
* Added TLS fields for system connection ls templates.
* Added special "tls" format for system connection ls to list TLS fields
  in human-readable table format.
* Updated remote integration and system tests to allow specifying a
  "transport" to run the full suite against a unix, tcp, tls, or mtls
  system service.
* Added system tests to verify basic operation of unix, tcp, tls, and mtls
  services, clients, and connections.

Signed-off-by: Andrew Melnick <meln5674.5674@gmail.com>
2025-09-26 09:09:54 -06:00
4764b0e403 Add creation timestamp to podman artifacts
This commit implements automatic creation timestamp functionality for artifacts
as requested in GitHub issue #27081, allowing users to see when artifacts were created.

Changes made:
- Add org.opencontainers.image.created annotation with Unix nanoseconds timestamp during artifact creation
- Preserve original creation timestamp when using --append option
- Update artifact inspect and add man pages to document the new functionality
- Add comprehensive e2e and system BATS tests to verify creation timestamp behavior
- Store timestamp as integer (Unix nanoseconds) for programmatic access

The creation timestamp helps users understand artifact freshness, particularly
useful for AI models and other time-sensitive artifacts managed by tools like RamaLama.

Usage examples:
  podman artifact add myartifact:latest /path/to/file     # Creates with timestamp
  podman artifact inspect myartifact:latest              # Shows created annotation as integer
  podman artifact add --append myartifact:latest /file2  # Preserves original timestamp

Fixes: https://github.com/containers/podman/issues/27081
Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2025-09-25 08:39:28 -04:00
4652f5c3c6 docs: clarify that --userns=keep-id runs container as host UID
Fixes: #24934

Signed-off-by: Daniel Lazaro <git@dlazaro.ca>
2025-09-24 19:05:34 -04:00
5ae0e0de3d cmd/podman: added virtual size option in artifact ls
Signed-off-by: Celso Henrique Souza Silva <celsohenrique367@gmail.com>
2025-09-24 19:03:02 -03:00
f26483ba7d fix: standardize casing for cgroups in documentation
Fixes: #27089

Signed-off-by: Tong Li <djfkvcing117@gmail.com>
2025-09-23 20:11:56 +08:00
ab5e400a9a docs: remove remote limitation note for --build-context option
- Removal of a note in the build-context documentation about remote Podman client limitations
- Removal of skip statements for build-context tests in the test suite

Pull request #26628 adds support for --build-context for the remote client.

Signed-off-by: Jan Rodák <hony.com@seznam.cz>
2025-09-15 15:50:02 +02:00
8d06a9e9f7 fix: Correct typo in chrootdirs option
In explanation of chrootdirs option, leading / is dropped
from podman managed file path (/etc/hostname). So this PR
adds leading /.

Signed-off-by: Vanou Ishii <ishii.vanou@fujitsu.com>
2025-09-13 14:09:04 +09:00
070d7c3ad3 Revert "Rewrite the Quadlet documentation."
This reverts commit c12b1b32bc165766c1aa229ca05432c75cc74c3b.

The content contains incorrect information and misses a lot of details
from the previous page that must be restored.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2025-09-11 19:00:19 +02:00
bb422c8372 Revert "Change the syntax to not depend on jinja2."
This reverts commit 9de737bf29eba1606c1aff560e2cbba4fa1576e4.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2025-09-11 19:00:17 +02:00
fd60d63bf4 Revert "Deduplicate more options."
This reverts commit 6756eb34129381707626ec45761799ac5623dc5c.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2025-09-11 19:00:02 +02:00
4ae8e386ef Revert "docs: restore podman-systemd.unit.5"
This reverts commit cab3c6de6d59fc51aff26591c24ffe2d5ee2a20e.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2025-09-11 18:59:11 +02:00
cab3c6de6d docs: restore podman-systemd.unit.5
There are endless of links pointing to this document we should not get
rid of that.
Also I find having two podman-quadlet with different numbers rather
confusing, while I understand the motivation I think for most users this
is not intuitive. Most people will not type the man section numbers.

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2025-09-05 18:59:19 +02:00
6756eb3412 Deduplicate more options.
Signed-off-by: Jan Kaluza <jkaluza@redhat.com>
2025-09-05 15:26:16 +02:00
9de737bf29 Change the syntax to not depend on jinja2.
Signed-off-by: Jan Kaluza <jkaluza@redhat.com>
2025-09-02 16:04:34 +02:00
c12b1b32bc Rewrite the Quadlet documentation.
This commit does the following:

- Splits the podman-systemd.unit.5.md into multiple files - one for each
  quadlet file type, podman-quadlet.7.md for general quadlet information
  and podman-quadlet-basic-usage.7.md for quadlet examples.
- Removes the original podman-systemd.unit.5.md file.
- Adds support for jinja2 templating language in the markdown_preprocess.
- Uses jinja2 in options/*.md to use the single .md file for both podman
  subcommands man-pages and quadlet man-pages. This deduplicates
  the Quadlet man-pages a lot.
- Adds new `@@option quadlet:source.md` preprocess command to import
  such .md files from options directory.

Signed-off-by: Jan Kaluza <jkaluza@redhat.com>
2025-09-02 12:49:45 +02:00
428c854be6 Merge pull request #26932 from ogajduse/feature/quadlet-httpproxy-26925
quadlet: add HttpProxy option for Container sections
2025-09-01 16:04:15 +00:00
c65fd9a2c2 quadlet: add HttpProxy option for Container sections
Add support for HttpProxy key in quadlet Container sections to control
proxy environment variable inheritance during image pulls and builds.

- HttpProxy=true enables proxy inheritance (default podman behavior)
- HttpProxy=false disables proxy inheritance
- When omitted, uses podman's default behavior

This addresses the need for declarative proxy configuration in IPv6-only
networks and other scenarios where proxy settings need to be controlled
at the container level without manual workarounds.

Fixes #26925

Signed-off-by: Ondřej Gajdušek <ogajduse@redhat.com>
2025-09-01 13:45:06 +02:00
dedeb24e9f Merge pull request #26931 from jelly/mention-zst
Mention zstandard tarball import support
2025-08-29 17:39:28 +00:00
b9812e3d9e Mention zstandard tarball import support
The `podman-import` man page already mentions support for zstd
compressed tarball support but the cli output didn't.

Signed-off-by: Jelle van der Waa <jvanderwaa@redhat.com>
2025-08-29 17:51:04 +02:00
dc1ccba6cb Merge pull request #26813 from fiesh/improve-documentation
Improve dns documentation
2025-08-29 15:08:19 +00:00
68b6876481 Merge pull request #26895 from intirix/tcp-close
Add support for criu's tcp-close functionality.
2025-08-28 10:40:59 +00:00
9c3652c188 Add support for criu's tcp-close functionality.
Fixes: #26676
Signed-off-by: Jeff Mercer <jeff.mercer@gmail.com>
2025-08-27 18:52:34 -04:00
835c581c4b Merge pull request #26737 from arsenalzp/podman-26691
Podman wait condition for return of first container
2025-08-27 16:03:29 +00:00
3548ae1caf Merge pull request #26853 from shiavm006/issue-1
ocs(run,create): document remote transport limitations for oci-archive/docker-archive/docker-daemon
2025-08-21 21:11:17 +00:00
249fa21e8a Improve documentation wording
Relax _will_ to _may_ and add a clarifying _then_.

Furthermore, we add a paragraph describing the behavior of the `--dns`
command line option.  This references #26812.

Signed-off-by: Christoph Weiss <weiss@wsoptics.de>
2025-08-20 17:23:40 +02:00
a91d5f033f Merge pull request #26834 from shiavm006/bugfix-1
docs: add missing groups and hgroups descriptors to podman top documentation
2025-08-19 14:33:38 +00:00
83ae19246e Merge pull request #26831 from Raghul-M/connection-add
docs: Add missing flag examples to podman system connection add man page
2025-08-19 14:30:47 +00:00
cdc2d4e17c Merge pull request #26838 from Raghul-M/podmanrm
docs: Add missing --ignore flag example to podman rm man page
2025-08-18 18:26:08 +00:00
e8a40a3994 Merge pull request #26825 from Raghul-M/commands_manpages
docs: Add --format flag examples to commands in man pages
2025-08-18 16:55:12 +00:00
96d9a00adb docs(run,create): note remote clients support only docker transport
On remote clients (incl. Mac/Windows, excl. WSL2), file-based transports (oci-archive:, docker-archive:, docker-daemon:) are not supported. Also fix trailing whitespace per pre-commit.

Signed-off-by: shiavm006 <shivammittal42006@gmail.com>
2025-08-18 18:45:08 +05:30
e1d6dfd2c7 Fixes #26369
Signed-off-by: Raghul-M <raghul.m1430@gmail.com>
2025-08-16 01:30:20 +05:30
46ee62ca6a Fixes: #26353
Signed-off-by: Raghul-M <raghul.m1430@gmail.com>
2025-08-15 23:14:24 +05:30
8674775039 Merge pull request #26826 from Raghul-M/systemsocket_manpage
docs: Add custom socket path example to podman system service man page
2025-08-15 17:29:44 +00:00
3dddd21188 Merge pull request #26766 from kwentine/patch-1
docs: Typos
2025-08-15 17:07:51 +00:00
c33af3c8dd docs: add missing groups and hgroups descriptors to podman-top documentation
Signed-off-by: shiavm006 <shivammittal42006@gmail.com>
2025-08-15 19:46:56 +05:30
fda74ee619 added system-connection-add options example
Signed-off-by: Raghul-M <raghul.m1430@gmail.com>
2025-08-15 16:42:02 +05:30
21f2128d79 added example for custom socket
Signed-off-by: Raghul-M <raghul.m1430@gmail.com>
2025-08-14 23:37:57 +05:30
fb294e91df Merge pull request #26740 from mohitjain1911/feature/filter-flag-docs-26351
Manpages: Add --filter flag usage examples to various commands #26351
2025-08-14 15:14:03 +00:00
f38e32760d feat: Add artifact remove --all option
Prior to this commit `artifact remove --all` was not supported on remote
clients.

This patch adds a new artifact API endpoint `artifact/remove` which can
either take a list of artifacts to remove or remove all artifacts by
setting all=true.

This patch removes the temporary warning message in the tunnel interface
implementation of ArtifactRm if `--all` was passed on the command line
and uses the new `artifact/remove` endpoint.

This patch also updates the `artifact remove` command both remote and
local to accept a list of artifacts to remove rather than limiting to
just one.

Signed-off-by: Lewis Roy <lewis@redhat.com>
2025-08-13 23:00:20 +10:00
a9e80f9d6d Merge pull request #26785 from Luap99/user-mode-docs
make machine --user-mode-networking docs more clear
2025-08-11 21:13:50 +00:00
6ab595814d Merge pull request #26732 from shiavm006/docs-pod-create-examples-only
docs: add examples with resource limits and mounts
2025-08-11 18:56:40 +00:00
5706d2a61e make machine --user-mode-networking docs more clear
The docs were outdated mentioning the qemu backed for Mac and I find the
way they are written to be a bit confusing.

I think it is best to start with that this option is not supported on
all the providers except WSL.

Fixes: #26780

Signed-off-by: Paul Holzinger <pholzing@redhat.com>
2025-08-11 17:27:18 +02:00
9f7af81cf8 Merge pull request #26718 from ninja-quokka/machine_init_tls_verify
Add support for configuring tls verification with machine init
2025-08-09 16:25:14 +00:00
7247d84fbe Fix typo
Signed-off-by: Quentin Ågren <quentin.agren@gmail.com>
2025-08-07 07:28:06 +02:00
a75f74b1d3 Fixes: #26691
Signed-off-by: Oleksandr Krutko <alexander.krutko@gmail.com>
2025-08-06 22:34:18 +03:00