Failed update silently rolls back #478
Closed
opened 2025-01-08 18:17:27 +00:00 by 3wordchant
·
7 comments
No Branch/Tag Specified
main
renovate/golang-1.26
renovate/github.com-charmbracelet-lipgloss-2.x
renovate/tonistiigi-xx-1.x
renovate/github.com-charmbracelet-log-2.x
renovate/github.com-charmbracelet-bubbletea-2.x
chore-deps
fix/492
fix/deps
fix/613
0.13.0-beta
0.13.0-rc2-beta
0.13.0-rc1-beta
0.12.0-beta
0.11.0-beta
0.10.1-beta
0.10.0-beta
0.10.0-rc2-beta
0.10.0-rc1-beta
0.9.0-beta
0.8.1-beta
0.8.0-beta
0.8.0-rc2-beta
0.8.0-rc1-beta
0.7.0-beta
0.7.0-rc3-beta
0.7.0-rc2-beta
0.6.0-beta
0.5.1-beta
0.5.0-alpha
0.4.1-alpha
0.4.0-alpha
0.4.0-alpha-rc8
0.4.0-alpha-rc7
0.4.0-alpha-rc6
0.4.0-alpha-rc5
0.4.0-alpha-rc4
0.4.0-alpha-rc3
0.4.0-alpha-rc2
0.4.0-alpha-rc1
0.3.1-alpha-rc2
0.3.1-alpha-rc1
0.3.1-rc1
0.3.0-alpha
0.2.2-alpha
0.2.1-alpha
0.2.0-alpha
0.1.8-alpha
0.1.7-alpha
0.1.6-alpha
0.1.5-alpha
0.1.4-alpha
0.1.3-alpha
0.1.2-alpha
0.1.1-alpha
0.1.0-alpha
10.0.5
10.0.3
10.0.2
10.0.1
10.0.0
9.0.0
8.0.1
8.0.0
0.7.4
0.7.3
0.7.2
0.7.1
0.7.0
checkout
0.6.0
0.5.0
0.4.1
0.4.0
0.3.1
0.3.0
0.2.0
0.1.2
0.1.1
0.1.0
Labels
Clear labels
bug
build
ci/cd
critical fix
design
documentation
duplicate
easy-first-issue
enhancement
help wanted
i10n
i18n
installer
invalid
question
release
release-candidate
security
tech-debt
test
wontfix
Something is not working
go build related issues
Building things with CI/CD
https://docs.coopcloud.tech/federation/resolutions/passed/010/
UI/UX
Documenting all the things
This issue or pull request already exists
Something for new people to get stuck into. We hope it's easy!
New feature
Need some help
Everything to do with localisation
Everything to do with internationalisation
Everything to do with the install script.
Something is wrong
More information is needed
Release management
Related to the new release candidate
Security related
Unit/integration testing
This won't be fixed
Milestone
No items
No Milestone
Projects
Clear projects
No project
abra v0.10.0
Assignees
3wordchant
aadil (Aadil Ayub)
abra-bot (Abra Bot)
ammaratef45
amras (Sarma)
Apfelwurm
BornDeleuze
Brooke
carla
cas (Cassowary)
coopcloud
cyrnel
decentral1se (decentral1se)
dede
fauno (fauno)
iexos
jade (Jade Ambrose)
jjsfunhouse
jmakdah2
joe-irving
kawaiipunk (KawaiiPunk)
knoflook
kolaente
lambdabundesverband
linnealovespie
moosemower
moritz
notplants
oxaliq (sorrel)
p4u1
pharaohgraphy (Andrew 🐦🔥❤️🔥✴️)
renovate-bot (Comrade Renovate Bot)
ripclap
simon
sixsmith (Sixsmith)
stevensting
trav
val (val (he/him))
yksflip
Clear assignees
No Assignees
decentral1se
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: toolshed/abra#478
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Steps to reproduce:
3.0.1+1.22.3-rootlessusing an old version of abra that doesn't interact with versions in the.envfileabra app upgrade git.foo.barExpected result:
App upgraded
Actual result:
The correct new version is written to the
.envfile:But the old version is still deployed 🤔
Hmmmm, it would seem that there is some confusion between a missing
.envversion and the parsing of the live deployment labels? A wild new edge case, great find! I will try to reproduce shortly.@3wordchant had a play with this. I found a bonus side bug which I'm gonna try fix up: #479
However, for the Gitea release latest release, I think it's failing to come up some time after depoloyment? Can you check that? I suspect the runtime is then rolling back to
3.0.1+1.22.3-rootlessbased on the deploy config andabracan't really do much since the deployment technically succeeded aka "silently rolling back because StAbiLiTy".I could be wrong but I wasn't able to reproduce this with several integration tests. But I also wasn't able to get a succesful Gitea upgrade from
3.0.1.xto3.0.2.x🤔 I was seeing this error: https://github.com/go-gitea/gitea/issues/28388 (the "solution" is a bit of a mystery for me)In the case I'm right, I'm not sure what we can do to make this obvious to people. Currently, you can
docker ps -f name=<stack> -ato see exited containers? Are there better ways? How can this be incorporated into theabraoutput?Related: toolshed/organising#615
Holy shit, I've just realised that we've been throwing away the output of the runtime deployment status all this time 😱 What the absolute hell 😂
With this diff:
I get:
Chaotic log output
Where we can clearly see:
So, it's now just a question of how to show this. I might try to copy/pasta over the presentation logic of Docker itself. But that wouldn't help with #473. I might try some fancy layout 🤔
Tips welcome!
`abra app upgrade` deploys the old versionto failed update silently rolls backfailed update silently rolls backto Failed update silently rolls backOh woah, yeh, the output has several issues with it, also the implementation! I don't think we can just bring in the output as-is, it will be confusing (also it includes a bunch of Docker jargon in it 😬 maybe that is why I naively silenced it ages ago, I can't remember 🤔)
https://github.com/docker/cli/issues/4907
(Just posting my notes as I go...)
Ah so sorry @decentral1se , I missed all these incredible updates because of The (latest) Great SMTP Breakage. Very stoked about your idea, let me know if you want help testing.
I kind of got sucked into a whirpool of changes and lost my way in #484. I need to regroup and come up with a plan with a reduced feature set. One part re: the logs is broken out into #473 now. That can be implemented after we correctly record if the deployment succeed / failed / was rolled back.