🚀 Highlights
- Job Dependencies: Chain jobs together with
depends_on- jobs wait for their dependencies to complete before running @triggeredSchedule: Define jobs that only run when manually triggered or as dependencies- Docker Compose Service Names: Use service names in addition to container labels for job configuration
✨ New Features
Job Dependencies
Configure job execution order using the new depends_on field:
[job-exec "backup"]
schedule = @daily
container = database
command = pg_dump -U postgres mydb > /backup/db.sql
[job-exec "upload"]
schedule = @triggered
depends_on = backup
container = uploader
command = aws s3 cp /backup/db.sql s3://mybucket/@triggered Schedule Type
New schedule type for jobs that should only run when:
- Triggered manually via API or CLI
- Called as a dependency of another job
[job-exec "cleanup"]
schedule = @triggered
container = app
command = /scripts/cleanup.shDocker Compose Service Name Support
Reference containers by their Docker Compose service names in addition to labels:
services:
web:
image: nginx
labels:
ofelia.enabled: "true"
ofelia.job-exec.web-health.schedule: "@every 5m"
ofelia.job-exec.web-health.command: "curl -f http://localhost/health"🔧 Other Improvements
- Mutation testing infrastructure with Gremlins
- Enhanced test coverage and edge case handling
- Improved documentation with cross-references
- Auto-merge for Dependabot/Renovate PRs
- OCI image annotations for container registry compliance