bootstrap.sh: fix setting the --uri option for Drush 9
authorAntonio Ospite <ao2@ao2.it>
Mon, 27 Aug 2018 13:53:54 +0000 (15:53 +0200)
committerAntonio Ospite <ao2@ao2.it>
Mon, 27 Aug 2018 14:04:25 +0000 (16:04 +0200)
Set the --uri option in Drush 9.

This is basically a port of commit 9d37dad (bootstrap.sh: set the drush
--uri option, 2018-03-16) for Drush 9.

libexec/bootstrap.sh

index ca374c4..9dc149f 100755 (executable)
@@ -140,6 +140,18 @@ then
   fi
 fi
 
+# Make sure that drush knows what the actual base URI is, this is needed to
+# have a consistent behavior between the cli and the web interface, for
+# example in the case of modules that use base_path().
+if grep -q "^[[:space:]]*uri:" drush/drush.yml;
+then
+  sed -i -e "s@^\([[:space:]]*\)uri: .*@\1uri: 'http://localhost/${SITE_BASE_PATH}'@g" drush/drush.yml
+else
+  echo "" >> drush/drush.yml
+  echo "options:" >> drush/drush.yml
+  echo "  uri: 'http://localhost/${SITE_BASE_PATH}'" >> drush/drush.yml
+fi
+
 pushd "$WEB_ROOT"
 
 # Update the install_profile setting if it's already there
@@ -152,25 +164,6 @@ then
   chmod 555 sites/default
 fi
 
-# Make sure that drush knows what the actual base URI is, this is needed to
-# have a consistent behavior between the cli and the web interface, for
-# example in the case of modules that use base_path().
-chmod 755 sites/default
-if [ ! -e sites/default/drushrc.php ];
-then
-  echo "<?php" > sites/default/drushrc.php
-  echo "" >> sites/default/drushrc.php
-fi
-
-if grep -q "^\\\$options\['uri'\] =" sites/default/drushrc.php;
-then
-  sed -i -e "s@^\(\$options\['uri'\]\) = '[^']*';@\1 = 'http://localhost/${SITE_BASE_PATH}';@g" sites/default/drushrc.php
-else
-  echo "\$options['uri'] = 'http://localhost/${SITE_BASE_PATH}';" >> sites/default/drushrc.php
-fi
-chmod 444 sites/default/drushrc.php
-chmod 555 sites/default
-
 # Install the site
 $DRUSH --verbose --yes \
   site-install \