Skip to content
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

Improve handling of failed release tasks #2402

Open
danielcompton opened this issue Feb 14, 2018 · 1 comment
Open

Improve handling of failed release tasks #2402

danielcompton opened this issue Feb 14, 2018 · 1 comment

Comments

@danielcompton
Copy link
Collaborator

Problem statement:

When doing releases using lein release if the release fails, your project can be left in a partially released state. To fix it you either need to roll back the commits and tags that were made, or roll forward manually, completing the rest of the release by hand. It would be great if there was a way to prevent this from happening.

Ideas:

  • Some kind of dry-run mode like Add --dry-run option for deploy and release commands #2229 to allow people to preview what will happen before they release
  • Before actually running the release, check that all of the steps can be completed (this is hard to do well because it may depend on remote state like GitHub and Clojars)
  • Provide a way to rollback
  • If a release fails, show the user which steps succeeded, which one failed, and which ones are left to run.
  • Collect the steps remaining to run in a failed release and store them in a temporary file like .lein-release-tasks so they can be rerun on a second attempt.
@danielcompton danielcompton changed the title Atomic/resumable release tasks Improve handling of failed release tasks Feb 14, 2018
@technomancy
Copy link
Owner

technomancy commented Feb 15, 2018 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants