Please, separate automatic apps and platform upgrades
-
@girish said in Please, separate automatic apps and platform upgrades:
@potemkin_ai Ah yes, thanks. I just read the ticket. This is related to sftp keys migration which happenned many releases ago. It leaves the system in an inconsistent state. Strange bug somewhere.
So was this a "standard" update or - as "many releases ago" suggests - an update crossing several versions?
-
@potemkin_ai said in Please, separate automatic apps and platform upgrades:
@necrevistonnezr not quite correct, not from what I know at least: I remember some apps just were not updated during the transition from 7.4 to 7.5 due to some database dependency.
No, happens quite frequently. Just a few examples:
- https://forum.cloudron.io/post/42603
- https://forum.cloudron.io/post/47840
- https://forum.cloudron.io/post/5325
- https://forum.cloudron.io/post/9472
- https://forum.cloudron.io/post/9950
So, I believe, the dependency mechanism is there and could be used appropriately.
And if that's correct, I would rather have an outdated app instead of the crashed one.
Agreed.
-
@necrevistonnezr said in Please, separate automatic apps and platform upgrades:
So was this a "standard" update or - as "many releases ago" suggests - an update crossing several versions?
We only have standard update i.e updating from previous version to next one. Cannot jump several versions (atleast, we have never tested this, but in any case there is no easy way to do this unless you hotfix the code from gitlab).
I was debugging a bit yesterday but we have a code path where we create keys. These keys have to be written into filesystem and the database. It's written in db for backup and written in filesystem for containers to be able to use them. Unfortunately, writing to fs and db is not an atomic operation. The current code gets confused if there is some crash between the two writes (for example, no disk space). I will just fix it to be more robust.
-
@potemkin_ai said in Please, separate automatic apps and platform upgrades:
Does it mean that separate apps updates and manual platform updates are out of the scope for the foreseeable future?
Ah no. I was simply stating the lay of the land
If it's seen as useful by many, we will implement it.
-
@potemkin_ai internally, there is only one update pattern, we have to implement splitting it up.
-
@potemkin_ai perhaps make an N8N workflow with the API
-
@potemkin_ai it can do that too
-
@potemkin_ai scripting within n8n.. or even just a bunch of curl commands I think
-
Well, if you can do it from the UI there's an API, so one can look at all the browser calls as they're made. I started a few posts here on the forum documenting my steps with similar attempts to automate it, but got stuck with no help.
Might be good to wait until @girish documents the overhauled API and makes things easier.
-
We are just getting the 7.5 announcements out. Will fix up the rest API docs later this week. There's a lot of api calls that have changed. But what you are asking can be done using api as @robi said. If you curious just follow the browser api calls.
-
@girish frankly speaking, reverse engineering is not what I've been hoping for
Please, check screenshots from the same platform - with automatic updates disabled, while it still says that apps are still covered by an automatic updates.
Where is a truth here?
-
@potemkin_ai The app section is referring to the app's update settings. The global section is referring to the global settings. Global settings overrides the app level settings. So, in this case, all updates are disabled.
The app setting is simply saying updates are enabled at the app level. But the global level setting will prevent the app from updating.
-
@girish I see. It feels like the platform doesn't really favour manual updates or a separate platform and apps updates.
I can understand that - the concept of making a lot of upgrades often - but it's really a pity from the perspective of managing quite a few cloudrons in business critical tasks.
-
@girish , will that API call update all of the pending apps as well?
https://docs.cloudron.io/api.html#tag/Updater/operation/updateCloudronIf not, what would be?