-
-
Notifications
You must be signed in to change notification settings - Fork 608
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
Void rolled back releases #1148
Conversation
4bb3b33
to
8797751
Compare
What if we just deleted roll backed releases? The only downside I can think of is that if you decide to re-deploy a rolled back release it will just take a little longer since it's a full new deploy. I'm guessing that's rare though since you usually roll back for a reason and apply a fix like you detailed. |
Do you mean replace https://github.com/roots/trellis/pull/1148/files#diff-1ff8e19172c2564b1d6f0cdc568feebdR28-R31 with something like
Not much differences in deploy speed I believe. |
Yep exactly that. I don't know if this changes any of the assumptions in the prior/user release roles though. |
Note that 0c2dd89 might delete more releases than you expected. During
They should work, i.e: look for the newest good (i.e: deploy was successful & never been rolled back) release which older than |
Seems ok to me. What do you think of the delete method vs the other one? |
I suggest we keep the rolled back release instead of deleteing it, i.e: revert 0c2dd89 Reasons:
Only thing I don't like is hardcoding |
Sounds good to me 👍 |
0c2dd89
to
437b172
Compare
Dropped |
437b172
to
37ab5d5
Compare
rebased, ready for review |
Problem A
current
symlink toreleases/11111111
)current
symlink toreleases/22222222
)releases/22222222
is buggy; rollback (current
symlink toreleases/11111111
)current
symlink toreleases/33333333
)releases/33333333
is also buggy; rollback (current
symlink toreleases/22222222
)We already know
releases/22222222
is buggy and rolled back in step 3. However, Trellis doesn't know. Trellis rolls back to the last release which older thancurrent
trellis/roles/rollback/tasks/prior-release.yml
Line 21 in ac87cd5
Solution A
Write
DEPLOY_UNFINISHED
to release we move away from.Problem B
If the last release which older than
current
containsDEPLOY_UNFINISH
, rollback fails.trellis/roles/rollback/tasks/main.yml
Lines 8 to 11 in ac87cd5
Solution B
Clean up old and failed (
DEPLOY_UNFINISH
) releases at the beginning ofrollback.yml
Do we count this as beraking changes?