Skip to content

v0.6.0

Choose a tag to compare

@mostlymaxi mostlymaxi released this 09 Jun 20:31
Immutable release. Only release title and notes can be modified.

Compile regular Rust into Argo Workflow YAML.

Highlights

  • Per-cluster template versioning: every WorkflowTemplate is <base>-<tag>, build-time-sealed; release/dev channels with --dev-tag; cargo athena prune <tag> to clean up a version.
  • Daemon containers: #[container(daemon)].
  • Binary-first CLI: positional [BINARY] / $PATH name, -w, flat ls/describe/emulate; global athena.toml fallback; a probe handshake (source-free consumer commands).
  • athena-publish GitHub Action: CI cross-compile + upload.
  • Workflow PVCs: #[ephemeral_pvc] / #[external_pvc] + pvc!(Type).
  • Broader Argo coverage: parallelism(_if_root), tolerations/affinity (+ _if_root + boundary), pod_spec_patch(_if_root), image_pull_secrets_if_root, #[inject("<argo expr>")].
  • cargo.athena/* provenance labels on every WorkflowTemplate (kubectl get wt -l).
  • Docs overhaul plus internal refactors (shared munge helpers, single-sourced version coordinate, CLI color/help polish).

Full changelog: v0.5.2...v0.6.0

What's Changed

  • feat(macros): tolerations + affinity (container + _if_root) by @mostlymaxi in #47
  • feat(macros): pod_spec_patch + pod_spec_patch_if_root by @mostlymaxi in #45
  • feat(macros): image_pull_secrets_if_root by @mostlymaxi in #46
  • feat(macros): #[inject("")] per-arg attribute by @mostlymaxi in #48
  • feat(macros): boundary_tolerations + boundary_affinity by @mostlymaxi in #49
  • chore(smoke): rely on cargo bin auto-discovery by @mostlymaxi in #50
  • test(e2e): cover service_account + node_selector injection by @mostlymaxi in #51
  • feat(macros): parallelism + parallelism_if_root on #[workflow] by @mostlymaxi in #52
  • refactor(host!): bake mount path at expand time, return &'static Path by @mostlymaxi in #53
  • refactor(macros): bake artifact paths + secret env names at expand time by @mostlymaxi in #54
  • feat(macros): #[ephemeral_pvc] / #[external_pvc] + pvc!(Type) by @mostlymaxi in #55
  • refactor: extract munge helpers to cargo-athena-api by @mostlymaxi in #56
  • feat(emit): stamp cargo.athena/* provenance labels on every WT by @mostlymaxi in #57
  • chore(flake): bump fenix to track stable 1.96.0 by @mostlymaxi in #58
  • feat(cli+core): global athena.toml fallback + probe handshake by @mostlymaxi in #59
  • feat(cli): binary-first commands (positional binary, -w, flat ls/describe/emulate) by @mostlymaxi in #60
  • ci: athena-publish composite GitHub Action by @mostlymaxi in #61
  • docs: tighten user-facing docs (impl-detail, accuracy, style) by @mostlymaxi in #62
  • feat: per-cluster template versioning + daemon containers by @mostlymaxi in #63
  • refactor(versioning): single-source the version coordinate by @mostlymaxi in #64
  • feat(cli): readable --help + colored feedback by @mostlymaxi in #78
  • release: v0.6.0 by @mostlymaxi in #79

Full Changelog: v0.5.2...v0.6.0