2015-12-31 08:22:06 -05:00
|
|
|
#!/bin/bash
|
|
|
|
|
set -eo pipefail; [[ $TRACE ]] && set -x
|
2015-01-11 18:38:51 -05:00
|
|
|
|
2015-05-03 22:21:32 +02:00
|
|
|
. /usr/share/debconf/confmodule
|
|
|
|
|
|
|
|
|
|
readonly DOKKU_ROOT="${DOKKU_ROOT:-/home/dokku}"
|
2015-12-23 20:02:56 -05:00
|
|
|
readonly DOKKU_LIB_ROOT="${DOKKU_LIB_PATH:-/var/lib/dokku}"
|
2015-05-03 22:21:32 +02:00
|
|
|
|
2015-01-11 18:38:51 -05:00
|
|
|
case "$1" in
|
|
|
|
|
abort-upgrade|abort-remove|abort-deconfigure)
|
|
|
|
|
;;
|
|
|
|
|
|
|
|
|
|
configure)
|
|
|
|
|
mandb
|
|
|
|
|
[ ! -x /usr/bin/docker.io ] || ln -sf /usr/bin/docker.io /usr/local/bin/docker
|
|
|
|
|
modprobe aufs || echo "WARNING: Restart server to finish installing dokku!"
|
|
|
|
|
sshcommand create dokku /usr/local/bin/dokku
|
|
|
|
|
egrep -i "^docker" /etc/group || groupadd docker
|
|
|
|
|
usermod -aG docker dokku
|
2015-09-19 19:05:51 -04:00
|
|
|
|
2015-12-31 08:22:06 -05:00
|
|
|
echo "setup plugin directories"
|
2015-09-19 19:05:51 -04:00
|
|
|
# should be replaced by `plugn init`
|
2015-12-23 20:02:56 -05:00
|
|
|
mkdir -p ${DOKKU_LIB_ROOT}/core-plugins/available ${DOKKU_LIB_ROOT}/plugins/available
|
|
|
|
|
mkdir -p ${DOKKU_LIB_ROOT}/core-plugins/enabled ${DOKKU_LIB_ROOT}/plugins/enabled
|
|
|
|
|
touch ${DOKKU_LIB_ROOT}/core-plugins/config.toml ${DOKKU_LIB_ROOT}/plugins/config.toml
|
2015-09-19 19:05:51 -04:00
|
|
|
|
2015-12-31 08:22:06 -05:00
|
|
|
echo "migrate old plugins"
|
2015-12-23 20:02:56 -05:00
|
|
|
find ${DOKKU_LIB_ROOT}/plugins/ -mindepth 1 -maxdepth 1 -type d -printf '%f\n' | while read -r plugin; do
|
2015-09-19 19:05:51 -04:00
|
|
|
if [ "$plugin" = "available" ] || [ "$plugin" = "enabled" ]; then
|
|
|
|
|
continue
|
2015-12-23 20:02:56 -05:00
|
|
|
elif [ -f ${DOKKU_LIB_ROOT}/plugins/$plugin/.core ]; then
|
|
|
|
|
rm -rf ${DOKKU_LIB_ROOT}/plugins/$plugin
|
|
|
|
|
elif [ ! -d ${DOKKU_LIB_ROOT}/plugins/available/$plugin ]; then
|
|
|
|
|
mv ${DOKKU_LIB_ROOT}/plugins/$plugin ${DOKKU_LIB_ROOT}/plugins/available;
|
2015-09-19 19:05:51 -04:00
|
|
|
fi
|
|
|
|
|
done
|
|
|
|
|
|
2015-12-31 08:22:06 -05:00
|
|
|
echo "enable all core plugins"
|
2015-12-23 20:02:56 -05:00
|
|
|
find ${DOKKU_LIB_ROOT}/core-plugins/available -mindepth 1 -maxdepth 1 -type d -printf '%f\n' | while read -r plugin; do
|
|
|
|
|
if [ ! -d ${DOKKU_LIB_ROOT}/plugins/available/$plugin ]; then
|
|
|
|
|
ln -s ${DOKKU_LIB_ROOT}/core-plugins/available/$plugin ${DOKKU_LIB_ROOT}/plugins/available/$plugin;
|
|
|
|
|
PLUGIN_PATH=${DOKKU_LIB_ROOT}/core-plugins plugn enable $plugin
|
|
|
|
|
PLUGIN_PATH=${DOKKU_LIB_ROOT}/plugins plugn enable $plugin
|
2015-09-19 19:05:51 -04:00
|
|
|
fi
|
|
|
|
|
done
|
2015-12-23 20:02:56 -05:00
|
|
|
chown dokku:dokku -R ${DOKKU_LIB_ROOT}/plugins ${DOKKU_LIB_ROOT}/core-plugins
|
2015-09-19 19:05:51 -04:00
|
|
|
|
2015-12-31 08:22:06 -05:00
|
|
|
echo "install all core plugins"
|
2015-09-08 12:14:57 -07:00
|
|
|
dokku plugin:install --core
|
2015-09-19 19:05:51 -04:00
|
|
|
|
2015-12-23 03:59:10 -05:00
|
|
|
rm -f ${DOKKU_ROOT}/VERSION
|
2015-12-23 20:02:56 -05:00
|
|
|
cp ${DOKKU_LIB_ROOT}/STABLE_VERSION ${DOKKU_ROOT}/VERSION
|
2015-01-12 01:54:14 -05:00
|
|
|
|
2015-12-31 08:22:06 -05:00
|
|
|
echo "starting dokku-installer if necessary"
|
2015-01-12 01:54:14 -05:00
|
|
|
if [ -f /etc/init/dokku-installer.conf ] && service dokku-installer status 2> /dev/null | grep waiting; then
|
|
|
|
|
sudo service dokku-installer start
|
|
|
|
|
fi
|
2015-05-03 22:21:32 +02:00
|
|
|
|
|
|
|
|
db_get "dokku/web_config"
|
|
|
|
|
if [ "$RET" = "true" ]; then
|
|
|
|
|
exit 0
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
db_get "dokku/vhost_enable"
|
|
|
|
|
if [ "$RET" = "true" ]; then
|
2015-09-08 12:14:57 -07:00
|
|
|
db_get "dokku/hostname"
|
2015-05-03 22:21:32 +02:00
|
|
|
echo "$RET" > "${DOKKU_ROOT}/VHOST"
|
|
|
|
|
else
|
|
|
|
|
rm -f "${DOKKU_ROOT}/VHOST"
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
db_get "dokku/hostname"
|
|
|
|
|
echo "$RET" > "${DOKKU_ROOT}/HOSTNAME"
|
|
|
|
|
|
|
|
|
|
if [ -z "${DEBCONF_RECONFIGURE}" ]; then
|
|
|
|
|
db_get "dokku/key_file"
|
2015-12-07 11:52:14 -05:00
|
|
|
if [ -f "$RET" ]; then
|
|
|
|
|
sshcommand acl-add dokku default < "$RET"
|
|
|
|
|
fi
|
2015-05-03 22:21:32 +02:00
|
|
|
fi
|
2015-01-11 18:38:51 -05:00
|
|
|
;;
|
|
|
|
|
|
|
|
|
|
*)
|
|
|
|
|
echo "postinst called with unknown argument \`$1'" >&2
|
|
|
|
|
exit 1
|
|
|
|
|
;;
|
|
|
|
|
esac
|
|
|
|
|
|
|
|
|
|
exit 0
|