Skip to content
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

Fetch app updates prior to starting Nextcloud upgrade #580

Open
blizzz opened this issue Aug 29, 2024 · 4 comments
Open

Fetch app updates prior to starting Nextcloud upgrade #580

blizzz opened this issue Aug 29, 2024 · 4 comments
Labels
1. to develop enhancement feature: apps management Note: Technically in server but triggered by updater. See same tag in `server` robustness 💪 Enhancements (and bugs) related to robustness

Comments

@blizzz
Copy link
Member

blizzz commented Aug 29, 2024

To combat issues like nextcloud/server#47602 we should also fetch necessary app archives around downloading the nextcloud release.

A brainstorming with @nickvergessen brought up these ideas:

  • Have a step to download app archives around download the nextcloud server archive
  • To do so it is necessary to query the running instance to get the enabled apps
  • Allow to specify apps that shall be ignored per parameter Report, but otherwise ignore apps that are not available on appstore
  • When appstore is unavailable or an app download failed report and:
    • ask whether to continue in interactive mode
    • In non-interactive mode fail,
    • continue when --force is specified.
  • app folder need to be read from config.php, if something is specified then i the first writable location shall be used. Placing them there is only possible after replacing code. Easier (for now?) is to add them just to the apps directory
@blizzz blizzz added enhancement 1. to develop robustness 💪 Enhancements (and bugs) related to robustness labels Aug 29, 2024
@blizzz
Copy link
Member Author

blizzz commented Aug 29, 2024

cc @Altahrim

@joshtrichards
Copy link
Member

Related: #401 & #456

To do so it is necessary to query the running instance to get the enabled apps

The Updater itself technically doesn't handle upgrading of the apps, have db access, nor have access to any of our usual APIs. We should probably handle all this prior to even invoking Updater let alone occ upgrade.

We do have a convenient spot before Updater: the updatenotification app, which already checks apps that need updating and compatibility. We could also pre-download apps there (or follow the same approach anyway, by handling all this before the Updater is even invoked).

app folder need to be read from config.php, if something is specified then i the first writable location shall be used. Placing them there is only possible after replacing code. Easier (for now?) is to add them just to the apps directory

Not quite following the context for this one. Are you talking about where to drop the Archive files for the new pre-downloaded apps?

@blizzz
Copy link
Member Author

blizzz commented Aug 29, 2024

To do so it is necessary to query the running instance to get the enabled apps

The Updater itself technically doesn't handle upgrading of the apps, have db access, nor have access to any of our usual APIs. We should probably handle all this prior to even invoking Updater let alone occ upgrade.

Yes, that is true, but it is already download the server code, so downloading relevant apps is not so far off either.

The issue with loading them before invoking the updater has the issue that the apps have to be put somewhere, and not replace current apps (they might not be compatible). There would be ways around this too, though.

We do have a convenient spot before Updater: the updatenotification app, which already checks apps that need updating and compatibility. We could also pre-download apps there (or follow the same approach anyway, by handling all this before the Updater is even invoked).

For the updatenotification can also be disabled, so we cannot exclusively rely on it.

app folder need to be read from config.php, if something is specified then i the first writable location shall be used. Placing them there is only possible after replacing code. Easier (for now?) is to add them just to the apps directory

Not quite following the context for this one. Are you talking about where to drop the Archive files for the new pre-downloaded apps?

Yes, they have to be put in place after replacing the nextcloud server code.

@joshtrichards
Copy link
Member

Related: nextcloud/server#33561

@joshtrichards joshtrichards added the feature: apps management Note: Technically in server but triggered by updater. See same tag in `server` label Oct 17, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
1. to develop enhancement feature: apps management Note: Technically in server but triggered by updater. See same tag in `server` robustness 💪 Enhancements (and bugs) related to robustness
Projects
None yet
Development

No branches or pull requests

2 participants