Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
32 commits
Select commit Hold shift + click to select a range
9fcba88
Add Quadlet container deployment method
cooktheryan Dec 30, 2025
e8059d9
Fix Quadlet CI jobs to use dynamic repository paths
cooktheryan Dec 30, 2025
6df5f97
Use dynamic branch reference in Quadlet CI jobs
cooktheryan Dec 30, 2025
eb8f239
Mount repository directory in Quadlet CI jobs to enable file:// URL a…
cooktheryan Dec 30, 2025
9738d66
Fix Quadlet CI tests to use GitHub URLs like other engine methods
cooktheryan Dec 30, 2025
32ab337
Fix Quadlet Process() to call currentToLatest() on every run
cooktheryan Dec 30, 2025
6b9d00b
Fix getRepo() to properly return errors from getClone()
cooktheryan Dec 30, 2025
1e8bfdc
Fix Quadlet file placement by using fileTransferPodman
cooktheryan Dec 30, 2025
6adf80c
Fix Quadlet directory creation on host filesystem
cooktheryan Dec 30, 2025
cd3119e
Improve Quadlet directory creation to handle nested paths
cooktheryan Dec 30, 2025
e842e2e
Fix Quadlet targetPath to remove trailing slashes
cooktheryan Dec 30, 2025
a9434be
Replace D-Bus calls with container-based systemctl commands
cooktheryan Dec 30, 2025
a37badc
Add daemon-reload and start actions to systemd-script
cooktheryan Dec 30, 2025
803f11b
Remove redundant systemdStartService call for create
cooktheryan Dec 31, 2025
aa10cf2
Mount Quadlet directory in systemctl containers and fix CI workflow
cooktheryan Dec 31, 2025
29a2a1a
Add comprehensive debug logging to Quadlet deployment
cooktheryan Dec 31, 2025
b747e07
Capture and log systemctl container output
cooktheryan Dec 31, 2025
9ab9aca
Fix containers.Logs() API call - proper channel usage
cooktheryan Dec 31, 2025
b54ecce
Add debug check for Quadlet generator before manual daemon-reload
cooktheryan Dec 31, 2025
9ac2006
Make all DEBUG steps run always (if: always())
cooktheryan Dec 31, 2025
ff39e97
Add checks for XDG_RUNTIME_DIR existence in rootless mode
cooktheryan Dec 31, 2025
ca0dde6
Extend timeouts and add file listing debug step
cooktheryan Dec 31, 2025
290a223
Switch rootless test from simple to httpd and use 1-minute schedule
cooktheryan Dec 31, 2025
c3de21a
Switch quadlet-user-validate test from simple to httpd service
cooktheryan Dec 31, 2025
334e624
Fix critical bug: fetchit hanging during quadlet daemon-reload
cooktheryan Dec 31, 2025
689dd48
Remove unused containers import that broke build
cooktheryan Dec 31, 2025
7cd385b
Fix Quadlet rootless: mount D-Bus socket for systemctl communication
cooktheryan Dec 31, 2025
949bd0f
Fix Quadlet: use systemctl start instead of enable
cooktheryan Dec 31, 2025
953cc67
Fix Quadlet service management: match systemd.go mount approach
cooktheryan Dec 31, 2025
659f726
feat: Add comprehensive Podman v5.7.0 Quadlet support
cooktheryan Jan 6, 2026
6a992d1
docs: Update specification files with v5.7.0 implementation details
cooktheryan Jan 6, 2026
f7c6304
need to hack on quadlet to test
cooktheryan Jan 6, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
399 changes: 395 additions & 4 deletions .github/workflows/docker-image.yml

Large diffs are not rendered by default.

1,223 changes: 1,223 additions & 0 deletions QUADLET-REFERENCE.md

Large diffs are not rendered by default.

14 changes: 14 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,20 @@ https://fetchit.readthedocs.io/

A quickstart example is available at https://github.com/containers/fetchit/blob/main/docs/quick_start.rst

## Deployment Methods

Fetchit supports multiple deployment methods:
- **Quadlet** - Declarative container management using Podman Quadlet v5.7.0 (recommended for new deployments)
- Supports all 8 file types: `.container`, `.volume`, `.network`, `.pod`, `.build`, `.image`, `.artifact`, `.kube`
- Includes v5.7.0 features: HttpProxy, StopTimeout, BuildArg, IgnoreFile, OCI artifacts
- **Kube** - Deploy using Kubernetes YAML manifests
- **Raw** - Execute raw podman commands
- **systemd** - Legacy systemd service file deployment (deprecated, use Quadlet instead)
- **FileTransfer** - Copy files from Git to host
- **Ansible** - Run Ansible playbooks

See [examples/](examples/) for configuration examples of each method. For Quadlet quickstart, see [specs/002-quadlet-support/quickstart.md](specs/002-quadlet-support/quickstart.md).

## Requirements

- **Podman v5.0+** (tested with v5.7.0)
Expand Down
Loading
Loading