-
Notifications
You must be signed in to change notification settings - Fork 3
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
Question: How to handle rollback? #9
Comments
Apologies for the very late reply, I must have missed the notification. Rollbacks are interesting, generally I feel that where possible a roll forward should be the preferred option. However, I know that's not always possible for every scenario. The way I have addressed this in the past is to simply re-release the previous version of the production artefacts, by the same Where it gets complicated is with database migrations, but that's a huge topic to get into :)
I believe the opposite, you have have a complete list within git, BTW, the idea of introducing more tags into GTF isn't discouraged at all though, if you are using git tags to trigger more and more actions, then I feel that promotes git ops and should be encouraged. |
If your services are each contained in its own repo, and you have a "controlling" repo explicitly specifying the version of the release, a rollback is a simple decrease in version in the controlling iac definition and a re-deploy. The deployment history is captured in this service definition repo. That seems to me to be the simplest way of going about it. |
That would be a good example of roll the deployment manifest forward, by rolling back the services to the previous version. Eg
|
@vasdee I also thought of an alternative that shouldnt violate semver |
@haydster7 I think it is worth a foot note, but tag flow isn't prescriptive about how your want to implement the rollback strategy. raised #12 for discussion |
Hello,
Huge thanks for this great specification of the GTF. I've something similar except for the deployment process.
In fact, it is a good idea to use tag and this awesomely described pattern to trigger deployment. The only drawback is that you lose a clear view of the deployment history. You will need new tooling to gather that information.
This leads to what I wanted to point out: the rollback workflow. If you wanted to do a rollback, you would need to delete/recreate the tag or use a tag pattern like
rollback/<env>/<version>
. What are your thoughts on this?Looking forward to hearing from you
Regards
The text was updated successfully, but these errors were encountered: