Skip to content

add scheduled tasks as CronJobs - #104

Merged
atkrad merged 1 commit into
mainfrom
add-scheduled-tasks
Aug 25, 2026
Merged

add scheduled tasks as CronJobs#104
atkrad merged 1 commit into
mainfrom
add-scheduled-tasks

Conversation

@atkrad

@atkrad atkrad commented Aug 25, 2026

Copy link
Copy Markdown
Member

Summary

  • Add on: schedule so a task renders as a Kubernetes CronJob in the release.
  • Validate cron at spec load. Default Forbid concurrency and Etc/UTC. When timeout is omitted, the CronJob gets a 1h cluster deadline; deployah run does not.
  • Cap task names at 30 characters so CronJob names stay under the 52-character Kubernetes limit.

Related

Fixes #35

Test plan

  • Unit tests added/updated
  • Scenario under scenarios/ (if behavior changes)
  • nix run .#lint / pre-commit clean
  • Manual smoke (command + expected result), if user-facing

Labels

  • One of: kind/feature, kind/bug, kind/docs, kind/chore
  • Add breaking-change if this breaks existing CLI or config behavior
  • Add skip-changelog for internal-only PRs that should not appear in notes

Checklist

  • Title is short and imperative (matches commit style)
  • Docs / CLI help updated when user-facing (README.md, docs/cli/)
  • No secrets or local-only paths in the diff

- add on schedule, cron validation, and Helm CronJob render
- default Forbid concurrency and a 1h CronJob deadline
- document schedule fields and add golden scenarios

Fixes #35
@atkrad atkrad added the kind/feature New capability label Aug 25, 2026
@github-actions github-actions Bot added kind/docs Documentation only area/cli Commands, flags, UX copy area/spec deployah.yaml schema or loading area/helm Chart render, release, post-render area/deploy Deploy and plan session flow area/testing Scenarios, harness, goldens area/ci GitHub Actions and release packaging labels Aug 25, 2026
@atkrad atkrad removed the kind/docs Documentation only label Aug 25, 2026
@atkrad atkrad self-assigned this Aug 25, 2026
@codecov

codecov Bot commented Aug 25, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 90.17341% with 17 lines in your changes missing coverage. Please review.
✅ All tests successful. No failed tests found.

Files with missing lines Patch % Lines
internal/helm/task.go 86.36% 15 Missing ⚠️
internal/helm/generate.go 83.33% 1 Missing ⚠️
internal/spec/task_validate.go 97.82% 1 Missing ⚠️

📢 Thoughts on this report? Let us know!

@atkrad
atkrad merged commit d2c89b0 into main Aug 25, 2026
17 checks passed
@atkrad
atkrad deleted the add-scheduled-tasks branch August 25, 2026 11:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/ci GitHub Actions and release packaging area/cli Commands, flags, UX copy area/deploy Deploy and plan session flow area/helm Chart render, release, post-render area/spec deployah.yaml schema or loading area/testing Scenarios, harness, goldens kind/feature New capability

Projects

None yet

Development

Successfully merging this pull request may close these issues.

proposal: scheduled tasks (CronJob)

1 participant