Skip to content

feat: add autoscale settings to datumctl compute - #295

Open
savme wants to merge 3 commits into
mainfrom
feat/datumctl-compute-autoscale
Open

feat: add autoscale settings to datumctl compute#295
savme wants to merge 3 commits into
mainfrom
feat/datumctl-compute-autoscale

Conversation

@savme

@savme savme commented Sep 11, 2026

Copy link
Copy Markdown
Contributor

This PR adds CPU/memory-based autoscaling to deploy and scale in datumctl, and surfaces it in workloads describe.

Deploy with autoscaling from the start:

datumctl compute deploy api --image=ghcr.io/acme/api:1.4.2 --location=us-east-1 --min=1 --max=3 --cpu-percent=70

Turn autoscaling on or adjust it on an existing workload, without redeploying:

datumctl compute scale api --max=5 --cpu-percent=70
datumctl compute scale api --max=8 # just raise the ceiling, autoscaling stays as configured
datumctl compute scale api --max=0 # turn autoscaling back off

See what's configured:

datumctl compute workloads describe api

Placements
  default    us-east-1, eu-west-1              scale: 2..10 (cpu@70%)

Notes:

  • Flags only change what was passed - running scale api --max=5 on an autoscaled workload doesn't reset its CPU target
  • If a workload was declared with multiple named placements via a manifest, deploy warns before collapsing them into one (flags produce only a single placement)

Test plan

  • Unit tests pass
  • datumctl compute scale and datumctl compute deploy tested

@savme
savme requested a review from scotwells September 11, 2026 14:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant