How do you handle (auto/manual) updating apps with confidence?
-
I discovered something new today with how Cloudron performs App updates.
I disabled the auto-update of my n8n server, because n8n is a very sensitive/critical piece in our system, and I didn't want to run into troubles with "automated regressions" caused by automated updates.
Naively, and without checking it, I thought that when I clicked on "Update" button, it would update to the latest version available.

But it doesn't! It only updates 1 version per 1 version.
I updated n8n two days ago to v1.53.1, and noticed today the regression (which was fixed in 1.53.2 and was able to update it to fix the regression.
And that's when I noticed those releases were quite old already! The latest version is 1.58.1.
But n8n will only allow me to update to 1.54.2:

And, considering each update creates a downtime of 2-4 minutes, I can't really chain manual updates like that. Even without downtime, it would take me too much time to manually chain updates to reach the latest stable version.
Also, I understand Cloudron performs a backup when doing an update, but I couldn't find any way to "rollback" to a previous version for instance. What if I run into an issue like what happened in
1.53.1but there is no fix released to address it yet, what are my options then?I certainly wish to handle my updates in a more reliable way:
- Ability to rollback to a previously installed version
- Configure auto-update to "wait" 2 weeks after a version has been released before installing it
- This aims at avoiding causing a system regression due to an auto-update that happened before a bug in production was identified and solved
- Chain updates for minor versions
- For instance, if an App releases
1.53.1on Sept 1st, and then1.53.2the next day, and1.53.3the next day again, then combined with "awaiting 2 weeks" rule, the auto updater should chain update 1.53.1, 1.53.2 and 1.53.3 at the same time, around Sept 15th.
- For instance, if an App releases
Those abilities combined together would feel much more reassuring from my point of view, I don't feel safe enabling auto-update on critical apps at this time, although I really don't want to manually update version one by one either, and wish to keep up-to-date, even if it's a bit delayed.
-
I discovered something new today with how Cloudron performs App updates.
I disabled the auto-update of my n8n server, because n8n is a very sensitive/critical piece in our system, and I didn't want to run into troubles with "automated regressions" caused by automated updates.
Naively, and without checking it, I thought that when I clicked on "Update" button, it would update to the latest version available.

But it doesn't! It only updates 1 version per 1 version.
I updated n8n two days ago to v1.53.1, and noticed today the regression (which was fixed in 1.53.2 and was able to update it to fix the regression.
And that's when I noticed those releases were quite old already! The latest version is 1.58.1.
But n8n will only allow me to update to 1.54.2:

And, considering each update creates a downtime of 2-4 minutes, I can't really chain manual updates like that. Even without downtime, it would take me too much time to manually chain updates to reach the latest stable version.
Also, I understand Cloudron performs a backup when doing an update, but I couldn't find any way to "rollback" to a previous version for instance. What if I run into an issue like what happened in
1.53.1but there is no fix released to address it yet, what are my options then?I certainly wish to handle my updates in a more reliable way:
- Ability to rollback to a previously installed version
- Configure auto-update to "wait" 2 weeks after a version has been released before installing it
- This aims at avoiding causing a system regression due to an auto-update that happened before a bug in production was identified and solved
- Chain updates for minor versions
- For instance, if an App releases
1.53.1on Sept 1st, and then1.53.2the next day, and1.53.3the next day again, then combined with "awaiting 2 weeks" rule, the auto updater should chain update 1.53.1, 1.53.2 and 1.53.3 at the same time, around Sept 15th.
- For instance, if an App releases
Those abilities combined together would feel much more reassuring from my point of view, I don't feel safe enabling auto-update on critical apps at this time, although I really don't want to manually update version one by one either, and wish to keep up-to-date, even if it's a bit delayed.
@AmbroiseUnly said in How do you handle (auto/manual) updating apps with confidence?:
Ability to rollback to a previously installed version
this is very easy, just restore a previous backup
https://docs.cloudron.io/backups/#restore-app
The other features don't exist yet, so I'd suggest adding feature request posts for them.
Personally I just let everything update automatically as it mostly Just Works and because it's so easy to restore a backup if something breaks.
-
I discovered something new today with how Cloudron performs App updates.
I disabled the auto-update of my n8n server, because n8n is a very sensitive/critical piece in our system, and I didn't want to run into troubles with "automated regressions" caused by automated updates.
Naively, and without checking it, I thought that when I clicked on "Update" button, it would update to the latest version available.

But it doesn't! It only updates 1 version per 1 version.
I updated n8n two days ago to v1.53.1, and noticed today the regression (which was fixed in 1.53.2 and was able to update it to fix the regression.
And that's when I noticed those releases were quite old already! The latest version is 1.58.1.
But n8n will only allow me to update to 1.54.2:

And, considering each update creates a downtime of 2-4 minutes, I can't really chain manual updates like that. Even without downtime, it would take me too much time to manually chain updates to reach the latest stable version.
Also, I understand Cloudron performs a backup when doing an update, but I couldn't find any way to "rollback" to a previous version for instance. What if I run into an issue like what happened in
1.53.1but there is no fix released to address it yet, what are my options then?I certainly wish to handle my updates in a more reliable way:
- Ability to rollback to a previously installed version
- Configure auto-update to "wait" 2 weeks after a version has been released before installing it
- This aims at avoiding causing a system regression due to an auto-update that happened before a bug in production was identified and solved
- Chain updates for minor versions
- For instance, if an App releases
1.53.1on Sept 1st, and then1.53.2the next day, and1.53.3the next day again, then combined with "awaiting 2 weeks" rule, the auto updater should chain update 1.53.1, 1.53.2 and 1.53.3 at the same time, around Sept 15th.
- For instance, if an App releases
Those abilities combined together would feel much more reassuring from my point of view, I don't feel safe enabling auto-update on critical apps at this time, although I really don't want to manually update version one by one either, and wish to keep up-to-date, even if it's a bit delayed.
@AmbroiseUnly said in How do you handle (auto/manual) updating apps with confidence?:
But it doesn't! It only updates 1 version per 1 version.
Cloudron does rolling updates only - https://en.wikipedia.org/wiki/Rolling_release . In general, this is what most apps support (you cannot just from one random release to another, it's just untested by upstream developers).
Ability to rollback to a previously installed version
App -> Backup ? https://docs.cloudron.io/backups/#restore-app . This will restore the package to the previous version.
-
@AmbroiseUnly said in How do you handle (auto/manual) updating apps with confidence?:
But it doesn't! It only updates 1 version per 1 version.
Cloudron does rolling updates only - https://en.wikipedia.org/wiki/Rolling_release . In general, this is what most apps support (you cannot just from one random release to another, it's just untested by upstream developers).
Ability to rollback to a previously installed version
App -> Backup ? https://docs.cloudron.io/backups/#restore-app . This will restore the package to the previous version.
@joseph Yes, I understand why it must be "rolling updates", that's fine by me, it's not really the issue. The issue rather lies in the fact I wasn't fully aware of that, and how can I run many of those rolling updates quickly?
If I re-enable auto-update, how will it behave, assuming it's 10 versions behind the latest?
Will it do 1 update every day until it has caught up? -
@joseph Yes, I understand why it must be "rolling updates", that's fine by me, it's not really the issue. The issue rather lies in the fact I wasn't fully aware of that, and how can I run many of those rolling updates quickly?
If I re-enable auto-update, how will it behave, assuming it's 10 versions behind the latest?
Will it do 1 update every day until it has caught up?@AmbroiseUnly said in How do you handle (auto/manual) updating apps with confidence?:
If I re-enable auto-update, how will it behave, assuming it's 10 versions behind the latest?
Will it do 1 update every day until it has caught up?correct, it will update based on the update schedule.
-
@AmbroiseUnly said in How do you handle (auto/manual) updating apps with confidence?:
If I re-enable auto-update, how will it behave, assuming it's 10 versions behind the latest?
Will it do 1 update every day until it has caught up?correct, it will update based on the update schedule.
-
@joseph said in How do you handle (auto/manual) updating apps with confidence?:
based on the update schedule
Which just to have it said, could be adjusted to install a new version every hour.
@fbartels said in How do you handle (auto/manual) updating apps with confidence?:
@joseph said in How do you handle (auto/manual) updating apps with confidence?:
based on the update schedule
Which just to have it said, could be adjusted to install a new version every hour.