--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/cms/drupal/profiles/drustack/drustack.sh Fri Sep 08 12:04:06 2017 +0200
@@ -0,0 +1,128 @@
+#!/bin/bash
+
+OPTIND=1
+TOP_DIR=$(pwd)
+
+# Define default options.
+PACKAGE="standard"
+ACTION="build"
+SOURCE="false"
+VERSION=""
+CONCURRENCY=8
+
+# Read command line options.
+while getopts ":h?fusv:c:" opt; do
+ case "$opt" in
+ h|\?)
+ echo "Usage: `basename $0` [-h] [-f] [-u] [-s] [-v version] [-c concurrency]"
+ exit 1
+ ;;
+ f)
+ PACKAGE="full"
+ ;;
+ u)
+ ACTION="upgrade"
+ ;;
+ s)
+ SOURCE=true
+ ;;
+ v)
+ VERSION="?h=$OPTARG"
+ ;;
+ c)
+ CONCURRENCY=$OPTARG
+ ;;
+ esac
+done
+
+# Global Settings
+# ===============
+
+MAKE_OPTIONS="--concurrency=$CONCURRENCY --contrib-destination=profiles/drustack --no-cache --force-complete"
+MAKE_FILE="http://cgit.drupalcode.org/drustack/plain/makes/$PACKAGE.make$VERSION"
+MAKE_PATH="."
+
+
+# Global Functions
+# ================
+
+function pre_build()
+{
+ if [[ $ACTION == 'build' ]]; then
+ MAKE_OPTIONS="$MAKE_OPTIONS --prepare-install"
+ fi
+}
+
+function pre_upgrade()
+{
+ if [[ $ACTION == 'upgrade' ]]; then
+ chmod a+w sites/*
+ rm -rf profiles/drustack
+ fi
+}
+
+function pre_source()
+{
+ if [[ "$SOURCE" == true ]]; then
+ MAKE_OPTIONS="$MAKE_OPTIONS --no-gitinfofile --working-copy"
+ fi
+}
+
+function post_upgrade()
+{
+ if [[ $ACTION == 'upgrade' ]]; then
+ chmod a-w sites/*
+ fi
+}
+
+function post_package()
+{
+ if [[ "$SOURCE" == false ]]; then
+ rm -rf profiles/drustack/.gitignore
+
+ find profiles/drustack/*/contrib/ -type f -name '*.info' |
+ xargs grep -l 'project = "drustack"' |
+ while read DATA; do
+ TMP=`mktemp`
+ head -n -6 $DATA > $TMP
+ mv $TMP $DATA
+ done
+ fi
+}
+
+function post_source()
+{
+ if [[ "$SOURCE" == true ]]; then
+ find $TOP_DIR -type d -name '.git' |
+ while read DATA; do
+ PROJECT=`echo $DATA | sed "s/^.*\/\([^\/]*\)\/\.git/\1/g"`
+ cd $DATA/../
+ git remote set-url --push origin `whoami`@git.drupal.org:project/$PROJECT.git
+ git fetch
+ git status
+ git remote -v
+ done
+ fi
+}
+
+
+# Install Packages
+# ================
+
+set -o xtrace
+
+cd $TOP_DIR
+
+pre_build
+pre_upgrade
+
+#pre_package
+pre_source
+
+drush -y make $MAKE_OPTIONS $MAKE_FILE $MAKE_PATH
+
+#post_build
+post_upgrade
+
+post_package
+post_source