Drupal 10, the latest version of the open-source digital experience platform with even more features, is here.hosting_task_extra depends on provision_task_extra but we have no easy way to check this.
Which leaves it up to documentation ... leading to user frustration :(
In a hosting.feature. definition we could add which Drush modules are required.
On a verify of the hostmaster site we already write a list of hosting features into the drushrc.php
Why not save a list of drush modules in the hostmaster db from that same script?
Chicken/egg: it should be a warning not a hard dependency ....










Comments
Comment #1
ergonlogicIn comment #4 from #2180053: Include more "golden" contrib, I suggested something similar to allow us to download the required backend components for hosting extensions that require them. I'm don't understand what you mean by this though:
Comment #2
helmo CreditAttribution: helmo commentedIt's mostly about warning a user.
Having 'a list of drush modules in the hostmaster db' would allow us to match that against drush dependencies we find in hook_hosting_feature() definitions. If we find something is missing we could e.g. alert via hook_requirements()
Your angle is about automatically installing. It would be nice, but think we should be careful with that.
Comment #3
ergonlogicI added #2269031: Automatically download Drush dependencies to follow-up on the latter part.
Comment #4
Steven Jones CreditAttribution: Steven Jones commentedComment #5
Steven Jones CreditAttribution: Steven Jones commentedI wonder if the correct answer here is to get Drush to allow managing extensions via composer, and then we can have something that runs composer in the backend to pull in the correct dependencies, but there's a lot of 'interesting' stuff that needs to happen to make that a reality.
We're probably looking to help out with:
https://github.com/drush-ops/drush/issues/572
https://github.com/drush-ops/drush/issues/524
Comment #6
Steven Jones CreditAttribution: Steven Jones commentedSo re-reading https://github.com/drush-ops/drush/issues/572 it seems that actually you can already install Drush commands with composer, and thus you can do depedency management of extensions too!
Comment #7
helmo CreditAttribution: helmo at Initfour websolutions commentedNow that we #2300537: Merge Provision extensions into Hosting modules I see little need for this.
Comment #8
ergonlogicWhile #2300537: Merge Provision extensions into Hosting modules makes this easy for back-end components of Aegir extensions, some have dependencies on 3rd party Drush extensions. For example, task_extras requires registry-rebuild.