1
0
Fork 0
mirror of https://github.com/containers/ansible-podman-collections.git synced 2026-02-03 23:01:48 +00:00
ansible-podman-collections/.github/workflows/podman_quadlet_info.yml
Sagi Shnaidman 09bb5454a9 Add podman Quadlet modules
This commit introduces two new modules for managing Podman Quadlets:

- podman_quadlet: Install and remove Podman Quadlet files
  * Supports installing single files, directories, and additional config files
  * Implements idempotent state management (present/absent)
  * Validates parameters and provides meaningful error messages
  * Default force=true for removal operations
  * Removed deprecated 'ignore' parameter in favor of built-in idempotency

- podman_quadlet_info: Gather information about installed Quadlets
  * Lists all installed quadlets or prints specific quadlet content
  * Supports filtering by quadlet kinds (container, pod, network, etc.)
  * Provides detailed quadlet metadata including status and paths

Key features:
- Shared utilities in module_utils/podman/quadlet.py for code reuse
- Comprehensive integration tests for both modules
- Full idempotency support for all operations
- Proper handling of edge cases (missing files, malformed quadlets, etc.)
- Check mode support for safe dry-run operations
- Extensive documentation and examples

The modules use relative imports for module_utils to support local
development and testing with the containers.podman collection.

Signed-off-by: Sagi Shnaidman <sshnaidm@redhat.com>
2026-02-02 18:10:59 +02:00

34 lines
1.1 KiB
YAML

name: Podman quadlet info
on:
push:
paths:
- ".github/workflows/podman_quadlet_info.yml"
- ".github/workflows/reusable-module-test.yml"
- "ci/*.yml"
- "ci/run_containers_tests.sh"
- "ci/playbooks/containers/podman_quadlet_info.yml"
- "plugins/modules/podman_quadlet_info.py"
- "plugins/module_utils/podman/quadlet.py"
- "tests/integration/targets/podman_quadlet_info/**"
branches:
- main
pull_request:
paths:
- ".github/workflows/podman_quadlet_info.yml"
- ".github/workflows/reusable-module-test.yml"
- "ci/*.yml"
- "ci/run_containers_tests.sh"
- "ci/playbooks/containers/podman_quadlet_info.yml"
- "plugins/modules/podman_quadlet_info.py"
- "plugins/module_utils/podman/quadlet.py"
- "tests/integration/targets/podman_quadlet_info/**"
schedule:
- cron: 5 0 * * * # Run daily at 0:05 UTC
jobs:
test_podman_quadlet_info:
uses: ./.github/workflows/reusable-module-test.yml
with:
module_name: "podman_quadlet_info"
display_name: "Podman quadlet info"