Skip to content

feat(manifest): scheduled jobs #331

Open

Description

@PiquelChips

Problem

Jobs run only around rollouts (before-rollout). Periodic work (backups, restore tests, cleanup, partition maintenance) has to run as loops inside applications, on every replica unless they coordinate.

Proposal

[[spec.jobs]]
name = "backup"
service = "postgres"
command = ["pgbackrest", "backup"]
run = { schedule = "0 3 * * *" }
  • A cron schedule, in UTC.
  • At most one run at a time per job, with a timeout; a missed run starts once when the daemon comes back.
  • Runs are journal actions with their output, visible in Events, and a failed run notifies like a failed deployment.

Wanted by piquel-fr's sourceorigin-dev/sourceorigin#220 and sourceorigin-dev/sourceorigin#215.


Written with Claude Opus 5.5 in Claude Code.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions