aboutsummaryrefslogtreecommitdiff
path: root/share/templater/drupal-composer/setup
diff options
context:
space:
mode:
Diffstat (limited to 'share/templater/drupal-composer/setup')
-rwxr-xr-xshare/templater/drupal-composer/setup78
1 files changed, 41 insertions, 37 deletions
diff --git a/share/templater/drupal-composer/setup b/share/templater/drupal-composer/setup
index 4b82243..fa057fc 100755
--- a/share/templater/drupal-composer/setup
+++ b/share/templater/drupal-composer/setup
@@ -9,69 +9,73 @@ SHARE="$1"
# Include basic functions
source $SHARE/templater/functions || exit 1
-# Drupal8 implementation
-function templater_drupal8 {
- if [ ! -e 'settings.php' ]; then
- templater_echo "Setting up Drupal 8..."
-
- if [ ! -e ".gitignore" ] || ! grep -q "^settings.php" .gitignore; then
- echo web/sites/default/settings.php >> .gitignore
- echo web/sites/default/settings.local.php >> .gitignore
- echo web/sites/default/settings.prod.php >> .gitignore
- echo web/sites/default/services.yml >> .gitignore
- echo web/sites/default/files >> .gitignore
- echo sql >> .gitignore
+# drupal-composer implementation
+function templater_drupal_composer {
+ if [ ! -e 'web/sites/default/settings.local.php' ]; then
+ templater_echo "Setting up Drupal with composer..."
+
+ # Check for existing composer.json
+ if [ -e "composer.json" ]; then
+ templater_echo "Cannot proceeed, composer.json already present"
+ return 1
fi
- mkdir -p web/sites/default
-
- if [ ! -e "settings.dev.php" ]; then
- cp $SHARE/drupal8/files/default.settings.php web/sites/default/settings.dev.php
- #cp $SHARE/drupal8/files/default.settings.php .
+ # Check for composer
+ if ! which composer &> /dev/null; then
+ templater_echo "error: please install composer first"
+ return 1
fi
- ln -sf settings.dev.php settings.php
+ # Setup project using composer
+ # See https://www.drupal.org/docs/develop/using-composer/using-composer-to-install-drupal-and-manage-dependencies
+ # https://www.drupal.org/docs/develop/using-composer/using-composer-with-drupal
+ #composer create-project drupal/recommended-project .
+ composer create-project drupal-composer/drupal-project:8.x-dev . --no-interaction
- if [ ! -e "settings.local.php" ]; then
- cp $SHARE/drupal7/files/settings.local.php web/sites/default/settings.local.php
+ if [ ! -e "web/sites/default/services.dev.yml" ]; then
+ cp $SHARE/drupal-composer/files/services.dev.yml web/sites/default/services.dev.yml
fi
- if [ ! -e "services.yml" ]; then
- cp $SHARE/drupal8/files/default.services.yml web/sites/default/services.dev.yml
- #cp $SHARE/drupal8/files/default.services.yml .
+ if [ ! -e "web/sites/default/settings.custom.php" ]; then
+ cp $SHARE/drupal-composer/files/settings.custom.php web/sites/default/settings.custom.php
fi
- ln -sf services.dev.yml services.yml
-
- templater_install_makefile $SHARE/drupal8/files/Makefile.drupal-composer
+ if [ ! -e "web/sites/default/settings.local.php" ]; then
+ cp $SHARE/drupal-composer/files/settings.local.php web/sites/default/settings.local.php
- if [ ! -e "drupal.make.yml" ]; then
- cp $SHARE/drupal8/files/drupal.make.yml .
+ if [ -d ".git" ]; then
+ git ignore web/sites/default/settings.local.php
+ fi
fi
+ # Ensure both settings.custom.php and settings.local.php are loaded
+ cat $SHARE/drupal-composer/files/settings.loader.snippet >> web/sites/default/settings.php
+
+ templater_install_makefile $SHARE/drupal-composer/files/Makefile.drupal-composer
+
if [ ! -e "README.drupal-composer.md" ]; then
- cp $SHARE/drupal8/files/README.drupal-composer.md .
+ cp $SHARE/drupal-composer/files/README.drupal-composer.md .
fi
if [ -d "puppet" ] && [ ! -e "puppet/Puppetfile" ]; then
- cp $SHARE/drupal8/files/puppet/Puppetfile puppet/
+ cp $SHARE/drupal-composer/files/puppet/Puppetfile puppet/
else
- cp $SHARE/drupal8/files/puppet/Puppetfile puppet/Puppetfile.drupal-composer
+ cp $SHARE/drupal-composer/files/puppet/Puppetfile puppet/Puppetfile.drupal-composer
fi
# Use pushtodeploy instead
#if [ ! -e "bin/post-receive" ]; then
- # mkdir -p bin && cp $SHARE/drupal8/files/bin/post-receive bin/
+ # mkdir -p bin && cp $SHARE/drupal-composer/files/bin/post-receive bin/
#fi
- templater_echo "Please use pushtodeploy module for automatede deploymends"
+ templater_echo "Please use pushtodeploy module for automated deployments"
- mkdir -p files config/sync themes modules libraries vendor
- touch {files,config/sync,themes,modules,libraries,vendor}/.empty
- git add -f {files,config/sync,themes,modules,libraries}/.empty
+ mkdir -p web/sites/default/config/sync web/libraries vendor
+ touch web/sites/default/{files,config/sync}/.empty
+ git add -f web/sites/default/{files,config/sync}/.empty
else
templater_echo "Drupal already set"
fi
}
# Dispatch
-templater_drupal8
+templater_drupal_composer