From 0d1c5f6df255dabf2497db98df9db3ce937953bd Mon Sep 17 00:00:00 2001 From: Konstantinos Samaras-Tsakiris <ksamtsak@gmail.com> Date: Tue, 27 Apr 2021 19:09:08 +0200 Subject: [PATCH] Move drupal operations scripts to this repo --- drupal-operations-scripts/check-if-installed.sh | 16 ++++++++++++++++ drupal-operations-scripts/clear-cache.sh | 9 +++++++++ drupal-operations-scripts/clone.sh | 10 ++++++++++ drupal-operations-scripts/database-backup.sh | 9 +++++++++ drupal-operations-scripts/database-restore.sh | 13 +++++++++++++ .../disable-maintenance-mode.sh | 10 ++++++++++ .../enable-maintenance-mode.sh | 10 ++++++++++ drupal-operations-scripts/site-install.sh | 9 +++++++++ generate-pipeline.sh | 3 --- 9 files changed, 86 insertions(+), 3 deletions(-) create mode 100755 drupal-operations-scripts/check-if-installed.sh create mode 100755 drupal-operations-scripts/clear-cache.sh create mode 100755 drupal-operations-scripts/clone.sh create mode 100755 drupal-operations-scripts/database-backup.sh create mode 100755 drupal-operations-scripts/database-restore.sh create mode 100755 drupal-operations-scripts/disable-maintenance-mode.sh create mode 100755 drupal-operations-scripts/enable-maintenance-mode.sh create mode 100755 drupal-operations-scripts/site-install.sh diff --git a/drupal-operations-scripts/check-if-installed.sh b/drupal-operations-scripts/check-if-installed.sh new file mode 100755 index 0000000..61f95ec --- /dev/null +++ b/drupal-operations-scripts/check-if-installed.sh @@ -0,0 +1,16 @@ +#!/bin/sh +set -exu + +# Change working directory to the drupal code +cd /app + +# Check if Drupal site is installed +echo "Checking if Drupal site is installed" +drush status bootstrap | grep -q Successful + +# Make sure we get a successful response + if [$? -ne 0]; then + echo "Drupal is not installed" >&2 + exit 1 + fi + exit 0 diff --git a/drupal-operations-scripts/clear-cache.sh b/drupal-operations-scripts/clear-cache.sh new file mode 100755 index 0000000..c25d751 --- /dev/null +++ b/drupal-operations-scripts/clear-cache.sh @@ -0,0 +1,9 @@ +#!/bin/sh +set -exu + +# Change working directory to the drupal code +cd /app + +# Clean cache +echo "Cleaning cache" +drush cr diff --git a/drupal-operations-scripts/clone.sh b/drupal-operations-scripts/clone.sh new file mode 100755 index 0000000..65499ec --- /dev/null +++ b/drupal-operations-scripts/clone.sh @@ -0,0 +1,10 @@ +#!/bin/sh +set -exu + +# Change working directory to the drupal code +cd /app + +# Clone data from source to destination +rsync -av /drupal-data-source/ /drupal-data +/scripts/database-restore.sh +/scripts/clear-cache.sh diff --git a/drupal-operations-scripts/database-backup.sh b/drupal-operations-scripts/database-backup.sh new file mode 100755 index 0000000..9d2a220 --- /dev/null +++ b/drupal-operations-scripts/database-backup.sh @@ -0,0 +1,9 @@ +#!/bin/sh +set -exu + +# Change working directory to the drupal code +cd /app + +# Database backup +echo "Database backup" +drush sql-dump > /drupal-data/dbdump.sql diff --git a/drupal-operations-scripts/database-restore.sh b/drupal-operations-scripts/database-restore.sh new file mode 100755 index 0000000..a067561 --- /dev/null +++ b/drupal-operations-scripts/database-restore.sh @@ -0,0 +1,13 @@ +#!/bin/sh +set -exu + +# Change working directory to the drupal code +cd /app + +# Database drop +echo "Database drop" +drush sql-drop -y + +# Database restore +echo "Database restore" +`drush sql-connect` < /drupal-data/dbdump.sql diff --git a/drupal-operations-scripts/disable-maintenance-mode.sh b/drupal-operations-scripts/disable-maintenance-mode.sh new file mode 100755 index 0000000..b13076c --- /dev/null +++ b/drupal-operations-scripts/disable-maintenance-mode.sh @@ -0,0 +1,10 @@ +#!/bin/sh +set -exu + +# Change working directory to the drupal code +cd /app + +# Disable maintenance mode +echo "Disabling maintenance mode" +drush state:set system.maintenance_mode 0 --input-format=integer +drush cache:rebuild diff --git a/drupal-operations-scripts/enable-maintenance-mode.sh b/drupal-operations-scripts/enable-maintenance-mode.sh new file mode 100755 index 0000000..744fe0f --- /dev/null +++ b/drupal-operations-scripts/enable-maintenance-mode.sh @@ -0,0 +1,10 @@ +#!/bin/sh +set -exu + +# Change working directory to the drupal code +cd /app + +# Enable maintenance mode +echo "Enabling maintenance mode" +drush state:set system.maintenance_mode 1 --input-format=integer +drush cache:rebuild diff --git a/drupal-operations-scripts/site-install.sh b/drupal-operations-scripts/site-install.sh new file mode 100755 index 0000000..8cd6ba6 --- /dev/null +++ b/drupal-operations-scripts/site-install.sh @@ -0,0 +1,9 @@ +#!/bin/sh +set -exu + +# Change working directory to the drupal code +cd /app + +# Install Drupal site +echo "Installing Drupal site" +drush site-install -y --config-dir=../config/sync --account-name=admin --account-pass=pass --account-mail=admin@example.com diff --git a/generate-pipeline.sh b/generate-pipeline.sh index e1785dc..8394603 100755 --- a/generate-pipeline.sh +++ b/generate-pipeline.sh @@ -69,9 +69,6 @@ job_site_${versionName##*/}: - export drushVersion=`/yq e .variables.drushVersion $versionName` - wget https://gitlab.cern.ch/drupal/paas/composer-drupal-project/-/archive/\${drupalDistroRefspec}/composer-drupal-project-\${drupalDistroRefspec}.tar; - tar xf composer-drupal-project-\${drupalDistroRefspec}.tar; - - wget https://gitlab.cern.ch/drupal/paas/drupal-operations/-/archive/master/drupal-operations-master.tar?path=scripts - - tar xf drupal-operations-master.tar?path=scripts - - mv drupal-operations-master-scripts/scripts drupal-operations-scripts - mv composer-drupal-project-\${drupalDistroRefspec} cern-drupal-distribution; - /kaniko/executor --context \$CI_PROJECT_DIR --dockerfile \$CI_PROJECT_DIR/Dockerfile --destination \$CI_REGISTRY_IMAGE/site-builder-base:${versionName##*/}\$IMAGE_DESTINATION_EXTENSION -- GitLab