feat(scale): implement scale rollout with canary/blue-green/rolling strategies#237
feat(scale): implement scale rollout with canary/blue-green/rolling strategies#237wjgong001 wants to merge 2 commits into
Conversation
…trategies Supports canary percent, blue-green parallel fleet, and rolling batch replacement. Reads from fleet state, tracks rollout history, includes dry-run/status/rollback modes.
|
🤖 Auto-rebase: The branch was rebased successfully locally but could not be pushed to the fork. Please enable 'Allow edits from maintainers' in the PR settings, or rebase manually: |
3 similar comments
|
🤖 Auto-rebase: The branch was rebased successfully locally but could not be pushed to the fork. Please enable 'Allow edits from maintainers' in the PR settings, or rebase manually: |
|
🤖 Auto-rebase: The branch was rebased successfully locally but could not be pushed to the fork. Please enable 'Allow edits from maintainers' in the PR settings, or rebase manually: |
|
🤖 Auto-rebase: The branch was rebased successfully locally but could not be pushed to the fork. Please enable 'Allow edits from maintainers' in the PR settings, or rebase manually: |
Description
Replaces the
scale rolloutstub with a working implementation. Continuation of the scale command work (PRs #225 cost, #227 auto, #231 up, #232 dns+down).What it does
sh1pt scale rollout --version v2.1.0 --strategy canary --percent 10— deploy to 10% of fleetsh1pt scale rollout --version v2.1.0 --strategy blue-green— parallel fleet, cut over atomicallysh1pt scale rollout --version v2.1.0 --strategy rolling— replace in batches--dry-runto preview without modifying state--statusto list all rollouts with their state (in-progress/completed/rolled-back/failed)--rollback <id>to revert a completed rollout--jsonfor machine-readable outputReads/writes same
~/.sh1pt/credentials.jsonfleet state as other scale commands. Rollout history persisted in~/.sh1pt/rollouts.json.Verification
pnpm --filter @profullstack/sh1pt typecheckpasses (exit 0)Progress toward ugig gig
Replaces one more stub toward the "implement the 4 main sh1pt cli commands" goal.