diff options
Diffstat (limited to '')
-rw-r--r-- | debian/setup-instance | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/debian/setup-instance b/debian/setup-instance new file mode 100644 index 0000000..b202457 --- /dev/null +++ b/debian/setup-instance @@ -0,0 +1,61 @@ +#!/bin/sh + +set -eu + +if [ $# != 1 ] ; then + echo usage: $0 '<suffix>' + exit 1 +fi + +is_systemd () { + case "$(readlink -f /proc/1/exe || true)" in + *systemd*) + return 0 + ;; + *) + return 1 + ;; + esac +} + +# the SUFFIX must not contain spaces or shell meta characters +SUFFIX=$1 + +if [ -e /etc/apache2-$SUFFIX ] ; then + echo ERROR: /etc/apache2-$SUFFIX already exists + exit 2 +fi + +echo Setting up /etc/apache2-$SUFFIX ... +cp -a /etc/apache2 /etc/apache2-$SUFFIX + +if is_systemd ; then + echo "systemd is in use, no init script installed" + echo "use the 'apache2@$SUFFIX.service' service to control your new instance" + echo "sample commands:" + echo "systemctl start apache2@$SUFFIX.service" + echo "systemctl enable apache2@$SUFFIX.service" +else + echo "Setting up /etc/init.d/apache2-$SUFFIX ..." + cp /usr/share/doc/apache2/examples/secondary-init-script /etc/init.d/apache2-$SUFFIX + # adjust service name (this prevents us from using a simple symlink) + perl -p -i -e s,XXX,$SUFFIX, /etc/init.d/apache2-$SUFFIX + chmod 755 /etc/init.d/apache2-$SUFFIX +fi + +echo -n Setting up symlinks: +for a in a2enmod a2dismod a2ensite a2dissite a2enconf a2disconf apache2ctl ; do + echo -n " $a-$SUFFIX" + ln -s /usr/sbin/$a /usr/local/sbin/$a-$SUFFIX +done +echo + +echo Setting up /etc/logrotate.d/apache2-$SUFFIX and /var/log/apache2-$SUFFIX ... +cp -a /etc/logrotate.d/apache2 /etc/logrotate.d/apache2-$SUFFIX +perl -p -i -e s,apache2,apache2-$SUFFIX,g /etc/logrotate.d/apache2-$SUFFIX +mkdir /var/log/apache2-$SUFFIX +chmod 750 /var/log/apache2-$SUFFIX +chown root:adm /var/log/apache2-$SUFFIX + +echo "Setting up /etc/default/apache-htcacheclean-$SUFFIX" +cp -a /etc/default/apache-htcacheclean /etc/default/apache-htcacheclean-$SUFFIX |