Problem/Motivation

We're about to start alpha testing with contrib modules — see #3355463: Looking for Alpha tester for future functionality, which will be made possible by #3355446: [PP-1] Implement experimental cron updates for contrib in automatic_updates_extensions.

The current update logic is all/nothing. It tries to stage all updates, and then executes all of them. Which has been fine for core, since then only a single package is ever staged for being installed. But with contrib, that changes.

What if there are 5 module updates available and only 1 of them has DB updates? That would then trigger \Drupal\automatic_updates\Validator\StagedDatabaseUpdateValidator and hence ZERO updates would be installed!

Steps to reproduce

  1. Trigger an unattended update >=2 contrib modules, with 1 module update containing DB updates.
  2. Observe that the update fails

Proposed resolution

AU should be smart enough to then track that, retry staging without that one module, and at least update the other 4.

Remaining tasks

Figure out how to do this.

User interface changes

TBD

API changes

TBD

Data model changes

TBD

Comments

Wim Leers created an issue. See original summary.

wim leers’s picture

Title: [PP-1] Pave the path for contrib updates: » [PP-1] Pave the path for contrib updates: automatically limit the staged updates to those modules without DB updates
Issue summary: View changes
tedbow’s picture

Issue tags: +contrib-only