Skip to content

feat(deploy): add recreate deploy strategy [SLIP-71]#17

Merged
mitchelljphayes merged 1 commit into
mainfrom
slip-71-recreate-deploy-strategy-v2
Jun 21, 2026
Merged

feat(deploy): add recreate deploy strategy [SLIP-71]#17
mitchelljphayes merged 1 commit into
mainfrom
slip-71-recreate-deploy-strategy-v2

Conversation

@mitchelljphayes

Copy link
Copy Markdown
Owner

Add recreate deploy strategy (stop-old → start-new → health-check → route-update) as alternative to blue-green.

  • RuntimeBackend trait: add start_container(), stop_container(), inspect_container_port()
  • DeployStatus: add StoppingOld, RemovingRoute, RestartingOld + rollback_failed
  • 3-tier rollback: restart old → recreate from previous_tag → alert
  • Strategy validation: accept 'blue-green' and 'recreate'
  • drain_timeout warned for recreate

SLIP-71

Add 'recreate' strategy (stop-old → start-new → health-check → route-update)
as alternative to blue-green. Old container is stopped but not removed
until new passes health check, enabling fast rollback via restart.

- RuntimeBackend trait: add start_container(), stop_container(), inspect_container_port()
- DeployStatus: add StoppingOld, RemovingRoute, RestartingOld + rollback_failed field
- 3-tier rollback: restart old → recreate from previous_tag → alert
- Strategy validation: accept 'blue-green' and 'recreate' only
- drain_timeout warned (not errored) for recreate
- Works for both container and pod deploys
@mitchelljphayes mitchelljphayes merged commit 0e0763e into main Jun 21, 2026
4 checks passed
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