spiegel_podman/pkg/api/server
Daniel J Walsh b765c91580
Add --replace option to podman artifact add command
This commit implements the --replace functionality for the artifact add command,
allowing users to replace existing artifacts without having to manually remove
them first.

Changes made:
- Add Replace field to ArtifactAddOptions entity types
- Add --replace CLI flag with validation to prevent conflicts with --append
- Implement replace logic in ABI backend to remove existing artifacts before adding
- Update API handlers and tunnel implementation for podman-remote support
- Add comprehensive documentation and examples to man page
- Add e2e and system BATS tests for --replace functionality
- Fix code formatting in pkg/bindings/artifacts/types_pull_options.go:
  * Reorder imports with proper spacing
  * Fix function declaration spacing
  * Convert spaces to proper tab indentation
  * Remove extraneous blank lines

The --replace option follows the same pattern as other podman replace options
like 'podman container create --replace' and 'podman pod create --replace'.
It gracefully handles cases where no existing artifact exists (no error thrown).

Usage examples:
  podman artifact add --replace quay.io/myimage/artifact:latest /path/to/file
  podman artifact add --replace localhost/test/artifact /tmp/newfile.txt

Fixes: Implements requested --replace functionality for artifact add command
Signed-off-by: Daniel J Walsh <dwalsh@redhat.com>
2025-10-06 12:22:40 -04:00
..
idle set !remote build tags where needed 2024-08-19 11:41:28 +02:00
doc.go set !remote build tags where needed 2024-08-19 11:41:28 +02:00
handler_api.go set !remote build tags where needed 2024-08-19 11:41:28 +02:00
handler_logging.go set !remote build tags where needed 2024-08-19 11:41:28 +02:00
handler_panic.go set !remote build tags where needed 2024-08-19 11:41:28 +02:00
handler_rid.go set !remote build tags where needed 2024-08-19 11:41:28 +02:00
register_archive.go set !remote build tags where needed 2024-08-19 11:41:28 +02:00
register_artifacts.go Add --replace option to podman artifact add command 2025-10-06 12:22:40 -04:00
register_auth.go set !remote build tags where needed 2024-08-19 11:41:28 +02:00
register_containers.go Add support for criu's tcp-close functionality. 2025-08-27 18:52:34 -04:00
register_distribution.go set !remote build tags where needed 2024-08-19 11:41:28 +02:00
register_events.go set !remote build tags where needed 2024-08-19 11:41:28 +02:00
register_exec.go set !remote build tags where needed 2024-08-19 11:41:28 +02:00
register_generate.go set !remote build tags where needed 2024-08-19 11:41:28 +02:00
register_healthcheck.go set !remote build tags where needed 2024-08-19 11:41:28 +02:00
register_images.go Optimize image loading for Podman machines 2025-08-19 12:33:15 +02:00
register_info.go set !remote build tags where needed 2024-08-19 11:41:28 +02:00
register_kube.go feat(libpod): support kube play tar content-type (#24015) 2024-09-27 15:40:55 +02:00
register_manifest.go Add podman manifest rm --ignore 2025-01-22 11:43:47 -05:00
register_monitor.go set !remote build tags where needed 2024-08-19 11:41:28 +02:00
register_networks.go set !remote build tags where needed 2024-08-19 11:41:28 +02:00
register_ping.go set !remote build tags where needed 2024-08-19 11:41:28 +02:00
register_plugins.go set !remote build tags where needed 2024-08-19 11:41:28 +02:00
register_pods.go set !remote build tags where needed 2024-08-19 11:41:28 +02:00
register_quadlets.go pkg/api: api list quadlets resource 2025-10-01 21:10:36 -03:00
register_secrets.go set !remote build tags where needed 2024-08-19 11:41:28 +02:00
register_swagger.go set !remote build tags where needed 2024-08-19 11:41:28 +02:00
register_swarm.go set !remote build tags where needed 2024-08-19 11:41:28 +02:00
register_system.go set !remote build tags where needed 2024-08-19 11:41:28 +02:00
register_version.go set !remote build tags where needed 2024-08-19 11:41:28 +02:00
register_volumes.go Refactor volume import to support the remote client 2025-06-23 13:42:22 -04:00
server.go Merge pull request #27203 from nothiaki/quadlets-api-resource 2025-10-03 12:59:32 +00:00