Cannot deploy local Drupal 8 site to Acquia Cloud using Dev Desktop

Cannot deploy local Drupal 8 site to Acquia Cloud using Dev Desktop

12 posts / 0 new
Last post
Martinknud@gmail.com's picture
Martinknud
Points: 0
Cannot deploy local Drupal 8 site to Acquia Cloud using Dev Desktop

Hi, any help is greatly appreciated with this.

I teach a class on Drupal and we have used the dev desktop in this course before to deploy student projects to the cloud.
Never had a problem using Drupal 7, however creating a site with Drupal 8.4 (newest version availble in the Dev Desktop) gives problems when trying to deploy it. SSH keys and every is setup correctly.

This is error I get when deploying to the cloud:

Creating site archive...
Writing Drupal archive file...

Fatal error: Declaration of Drush\Command\DrushInputAdapter::hasParameterOption() must be compatible with Symfony\Component\Console\Input\InputInterface::hasParameterOption($values, $onlyParams = false) in C:\Program Files (x86)\DevDesktop\tools\vendor\drush\drush\lib\Drush\Command\DrushInputAdapter.php on line 27
Drush command terminated abnormally due to an unrecoverable error. [error]
Error: Declaration of Drush\Command\DrushInputAdapter::hasParameterOption() must be compatible with
Symfony\Component\Console\Input\InputInterface::hasParameterOption($values, $onlyParams = false) in
C:\Program Files (x86)\DevDesktop\tools\vendor\drush\drush\lib\Drush\Command\DrushInputAdapter.php, line 27
PHP Fatal error: Declaration of Drush\Command\DrushInputAdapter::hasParameterOption() must be compatible with Symfony\Component\Console\Input\InputInterface::hasParameterOption($values, $onlyParams = false) in C:\Program Files (x86)\DevDesktop\tools\vendor\drush\drush\lib\Drush\Command\DrushInputAdapter.php on line 27
Drush was unable to create site archive.
StdErr:Drush command terminated abnormally due to an unrecoverable error. [error]
Error: Declaration of Drush\Command\DrushInputAdapter::hasParameterOption() must be compatible with
Symfony\Component\Console\Input\InputInterface::hasParameterOption($values, $onlyParams = false) in
C:\Program Files (x86)\DevDesktop\tools\vendor\drush\drush\lib\Drush\Command\DrushInputAdapter.php, line 27
PHP Fatal error: Declaration of Drush\Command\DrushInputAdapter::hasParameterOption() must be compatible with Symfony\Component\Console\Input\InputInterface::hasParameterOption($values, $onlyParams = false) in C:\Program Files (x86)\DevDesktop\tools\vendor\drush\drush\lib\Drush\Command\DrushInputAdapter.php on line 27

I have absolutely no clue how to fix this. For information I am using the Drush version that came with the dev desktop - which is 8.1.10.
Using windows 10 as well.

Any clues?

Status: 
Duplicate
dmyburgh's picture
david.myburgh
Points: 99

No guarantees that this will solve the issue, but Drush 8.1.10 is not compatible with Drupal 8.4. You have to use Drush 8.1.15. Hopefully that fixes the uploading as well. I have not personally tried to get Dev Desktop to do what you're trying, though.

Martinknud@gmail.com's picture
Martinknud
Points: 0

Yes, I have actually already tried to update to drush 8.1.15 as I saw this another place as a possible reason.

But I do not seem to be able to upgrade drush as part of the aquia dev desktop.
I tried upgrading with composer "composer global require drush/drush:8.1.15".
It says it is upgrading.

But when I run "drush version" I still get 8.1.10.
Don't know if this is because of the way dev desktop works.

dmyburgh's picture
david.myburgh
Points: 99

Hmm, yeah, Dev Desktop creates its own little command line environment when you click the terminal button next to your site. I'm not really sure how to override the Drush version in there. If you could somehow overwrite the drush that is installed with Dev Desktop that could probably fix it. But you'd have to go into the Applications folder for Dev Desktop and if something goes wrong, that could kill Dev Desktop.

The other way to get a site up on Acquia Cloud is to create a tarball of the site and install that manually via the cloud.acquia.com interface. Not ideal, but Dev Desktop hasn't been updated to work with 8.4 and very likely won't be, so in the future, you'll need an alternative anyway. As a trainer I would recommend you look at using DrupalVM as an alternative to Dev Desktop. And if you're focusing on using Acquia's servers for hosting, BLT is a great starting setup as it has command line tools for working with the cloud system too. BLT includes DrupalVM, btw, but you can use DrupalVM by itself and run your own sites through that. There are also ways to have multiple sites in one DrupalVM instance.

Martinknud@gmail.com's picture
Martinknud
Points: 0

Yes, I have really tried a lot to override this Drush version, but nothing seems to work.
Thanks for the other suggestions - maybe I can do that next semester, but for this semester I am stuck with the Dev Desktop.

It is really strange that Acquia desktop comes bundled with Drush 8.1.10 and let's you install Drupal 8.40 (which is one of the defaults when doing a new site from the dev desktop), if this combination does not work with the acquia cloud.

Surely, others have had this problem?

dmyburgh's picture
david.myburgh
Points: 99

Yeah, the 8.4 release of Drupal has caused many problems and not just with Dev Desktop. I don't believe Dev Desktop will get updated to handle 8.4, so we're pretty much on our own now with this, I'm afraid. I really like DD and use it daily for everything else, but not with any 8.4 sites - I use DrupalVM for those.

Martinknud@gmail.com's picture
Martinknud
Points: 0

A solution for me could maybe be if it would be possible to install older 8.X versions from the dev desktop than 8.40.

But 8.40 seems to be the only 8.X version you can install from the dev desktop.
Any clues if it is possible to install for example 8.30 from the dev desktop?

dmyburgh's picture
david.myburgh
Points: 99

You could simply grab the 8.3.x tarball from drupal.org, uncompress it into the folder where you keep your sites e.g. ~/Sites, and then choose "Import local Drupal site" from the Plus menu button and select that folder. You get the option to add a new database at that point too. This method will work for any Drupal version actually.

Martinknud@gmail.com's picture
Martinknud
Points: 0

Thanks. Yes, I tried that with version 8.3.7 (instead of the default 8.4.0) and now cloud deployment works without any problems from the dev desktip.

I will probably just stick with 8.3.7 in the course until this is fixed and before upgrading to newer Drupal versions.

usernewdev@gmail.com's picture
usernewdev
Points: 1

Hi Martin,
Could you please also tell me the steps you followed to remove that error.
I am new to drupal and also trying to deploy the Acquia Dev local drupal site to Acquia cloud and facing the same error.
Any help would be really appreciative.

Status Change: 
Unresolved
Martinknud@gmail.com's picture
Martinknud
Points: 0

Well, I didn't actually "solve" it.
I followed Davids advice and I made a new manual installation using Davids approach and then I installed Drupal 8.37.
This made it work with the Acqui Cloud deployment.

/Martin.

rjdempsey.com@gmail.com's picture
rjdempsey.com
Points: 0

I know this is a known issue. I'm wondering if Acquia is actually working on this and if they intend to update Dev Desktop anytime soon. The answer will determine whether or not I'll continue to use it and recommend it to others.