-
Notifications
You must be signed in to change notification settings - Fork 1.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Capistrano deletes last working deployment if recovering from too many failures #2120
Comments
Hi @tminich, thanks for the report and apologies for the lack of response.
That's correct. Capistrano does not have any way to mark a deployment as succeeded or failed. This is why I think this is a long-standing design decision and predates my time with Capistrano. However, I definitely understand that this behavior could be surprising. Perhaps it should be documented somewhere? I would be open to accepting a PR that updates the capistrano/docs/documentation/getting-started/configuration/index.markdown Lines 107 to 110 in efdc67b
|
Steps to reproduce
keep_releases
-1)Expected behavior
Capistrano keeps (at least) the last known working release
Actual behavior
Last known working release gets deleted and failed releases are kept so there is no working release to roll back to if necessary
Arguably
keep_releases
should apply to successful and failed deployments separately (or there should be separate configuration options for these cases). I went through the code a bit and from what I can see (not very familiar with Ruby) capistrano doesn't seem to discern between failed and successful deployments for cleanup and rollback at all, which, to be honest, seems a bit strange to me for a deployment tool.The text was updated successfully, but these errors were encountered: