We use time.sleep instead of a deterministic way to determine when to send resume-upgrade after rolling back. This sometimes leads to this error when resume-upgrade is run too early
Resume upgrade event failed: Highest number unit is unhealthy. Upgrade will not resume.
We are using prime in charmcraft which is deprecated in charmcraft 3.1.1
Solution
Use a more deterministic approach - check that all units are active and idle (one will have rolled back while the other two will not)
Use parts to prime version files and the dump plugin to prime scripts/ directory
Issue
resume-upgrade
after rolling back. This sometimes leads to this error whenresume-upgrade
is run too earlyprime
in charmcraft which is deprecated in charmcraft 3.1.1Solution
active
andidle
(one will have rolled back while the other two will not)