Drupal 9 is here and SimplyTest needs to be able to support it. Here is a rough sketch:

1. Copy the Drupal 8 base preview into a new base branch for Drupal 9

2. Copy the Drupal 8 YAML file to Drupal 9

3. Test and remediate.

It may be worth exploring the upgrade to Drush 10 only for Drupal 9

Comments

nerdstein created an issue. See original summary.

greg.1.anderson’s picture

The following versions of Drush work with Drupal 9:

- Drush 8.3.1
- Drush 10.0.0-rc4

nerdstein’s picture

StatusFileSize
new4.13 KB

Patch to test.

The base preview is compiled with Drush ~10.0.0-rc

nerdstein’s picture

Status: Active » Needs review
StatusFileSize
new4.91 KB

Uno mas

nerdstein’s picture

The patch is working now, but it generates a Drush error. Note, this was using 10.0.0-rc4. As follows:

drush -r "${DOCROOT}" si standard --account-name=admin --account-pass=admin -y
TypeError: Argument 1 passed to Drush\SiteAlias\ProcessManager::configureProcess() must be an instance of Consolidation\SiteProcess\ProcessBase, instance of Symfony\Component\Process\Process given, called in /root/.composer/vendor/drush/drush/src/SiteAlias/ProcessManager.php on line 143 in /root/.composer/vendor/drush/drush/src/SiteAlias/ProcessManager.php on line 149 #0 /root/.composer/vendor/drush/drush/src/SiteAlias/ProcessManager.php(143): Drush\SiteAlias\ProcessManager::configureProcess(Object(Symfony\Component\Process\Process))
#1 /root/.composer/vendor/drush/drush/src/Drush.php(405): Drush\SiteAlias\ProcessManager->shell('command -v mysq...', NULL, NULL, NULL, 60)
#2 /root/.composer/vendor/drush/drush/src/Exec/ExecTrait.php(93): Drush\Drush::shell('command -v mysq...')
#3 /root/.composer/vendor/drush/drush/src/Commands/core/SiteInstallCommands.php(341): Drush\Commands\core\SiteInstallCommands::programExists('mysql')
#4 /root/.composer/vendor/consolidation/annotated-command/src/Hooks/Dispatchers/ValidateHookDispatcher.php(43): Drush\Commands\core\SiteInstallCommands->pre(Object(Consolidation\AnnotatedCommand\CommandData))
#5 /root/.composer/vendor/consolidation/annotated-command/src/Hooks/Dispatchers/ValidateHookDispatcher.php(27): Consolidation\AnnotatedCommand\Hooks\Dispatchers\ValidateHookDispatcher->callValidator(Array, Object(Consolidation\AnnotatedCommand\CommandData))
#6 /root/.composer/vendor/consolidation/annotated-command/src/CommandProcessor.php(195): Consolidation\AnnotatedCommand\Hooks\Dispatchers\ValidateHookDispatcher->validate(Object(Consolidation\AnnotatedCommand\CommandData))
#7 /root/.composer/vendor/consolidation/annotated-command/src/CommandProcessor.php(178): Consolidation\AnnotatedCommand\CommandProcessor->validateRunAndAlter(Array, Array, Object(Consolidation\AnnotatedCommand\CommandData))
#8 /root/.composer/vendor/consolidation/annotated-command/src/AnnotatedCommand.php(302): Consolidation\AnnotatedCommand\CommandProcessor->process(Object(Symfony\Component\Console\Output\ConsoleOutput), Array, Array, Object(Consolidation\AnnotatedCommand\CommandData))
#9 /var/www/html.original/vendor/symfony/console/Command/Command.php(255): Consolidation\AnnotatedCommand\AnnotatedCommand->execute(Object(Drush\Symfony\DrushArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#10 /var/www/html.original/vendor/symfony/console/Application.php(976): Symfony\Component\Console\Command\Command->run(Object(Drush\Symfony\DrushArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#11 /var/www/html.original/vendor/symfony/console/Application.php(276): Symfony\Component\Console\Application->doRunCommand(Object(Consolidation\AnnotatedCommand\AnnotatedCommand), Object(Drush\Symfony\DrushArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#12 /var/www/html.original/vendor/symfony/console/Application.php(152): Symfony\Component\Console\Application->doRun(Object(Drush\Symfony\DrushArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#13 /root/.composer/vendor/drush/drush/src/Runtime/Runtime.php(118): Symfony\Component\Console\Application->run(Object(Drush\Symfony\DrushArgvInput), Object(Symfony\Component\Console\Output\ConsoleOutput))
#14 /root/.composer/vendor/drush/drush/src/Runtime/Runtime.php(49): Drush\Runtime\Runtime->doRun(Array, Object(Symfony\Component\Console\Output\ConsoleOutput))
#15 /root/.composer/vendor/drush/drush/drush.php(72): Drush\Runtime\Runtime->run(Array)
#16 /root/.composer/vendor/drush/drush/drush(4): require('/root/.composer...')
#17 {main}
TypeError: Argument 1 passed to Drush\SiteAlias\ProcessManager::configureProcess() must be an instance of Consolidation\SiteProcess\ProcessBase, instance of Symfony\Component\Process\Process given, called in /root/.composer/vendor/drush/drush/src/SiteAlias/ProcessManager.php on line 143 in Drush\SiteAlias\ProcessManager::configureProcess() (line 149 of /root/.composer/vendor/drush/drush/src/SiteAlias/ProcessManager.php).

I've pinged @greg.1.anderson on Slack for guidance

nerdstein’s picture

Logged issue upstream for feedback - https://github.com/drush-ops/drush/issues/4234

nerdstein’s picture

StatusFileSize
new5.06 KB

Removing global drush from the base preview and putting it into the instance

nerdstein’s picture

StatusFileSize
new5.06 KB

Need to load drush before moving it to the bin directory.

nerdstein’s picture

StatusFileSize
new5.03 KB

This patch removes the bin directory copy all together and calls Drush from vendor/bin directly.

nerdstein’s picture

That worked! Available on bergste.in

nerdstein’s picture

Status: Needs review » Reviewed & tested by the community

I'm going to ship this so we can have it available for Amsterdam

  • nerdstein committed 45f3f11 on 7.x-1.x
    Issue #3090311 by nerdstein, greg.1.anderson: Drupal 9 support
    
greg.1.anderson’s picture

Woo woo! Glad you got it worked out!

gábor hojtsy’s picture

Unfortunately does not seem to work with the alpha yet. #3113157: Drupal 9 support does not work on simplytest.me

nerdstein’s picture

Status: Reviewed & tested by the community » Fixed

this is fixed

Status: Fixed » Closed (fixed)

Automatically closed - issue fixed for 2 weeks with no activity.