if [ ! -f $app/.init ]; then
python $manage telemeta-create-admin-user
python $manage telemeta-create-boilerplate
- python $manage update_index --workers $processes
+ python $manage update_index --workers $processes
touch $app/.init
fi
--- /dev/null
+#!/bin/sh
+
+### BEGIN INIT INFO
+# Provides: %s
+# Required-Start: docker
+# Required-Stop: docker
+# Default-Start: 2 3 4 5
+# Default-Stop: 0 1 6
+# Short-Description: Docker Services
+### END INIT INFO
+
+set -e
+
+PROJECT_NAME=%s
+YAMLFILE=%s
+OPTS="-f $YAMLFILE -p $PROJECT_NAME"
+UPOPTS="-d --no-recreate --no-build --no-deps"
+
+. /lib/lsb/init-functions
+
+case "$1" in
+ start)
+ log_daemon_msg "Starting $PROJECT_NAME composition" "$PROJECT_NAME" || true
+ if su -c "docker-compose $OPTS up $UPOPTS > /dev/null 2>&1" root ; then
+ log_end_msg 0 || true
+ else
+ log_end_msg 1 || true
+ fi
+ ;;
+
+ stop)
+ log_daemon_msg "Stopping $PROJECT_NAME composition" "$PROJECT_NAME" || true
+ if su -c "docker-compose $OPTS stop > /dev/null 2>&1" root; then
+ log_end_msg 0 || true
+ else
+ log_end_msg 1 || true
+ fi
+ ;;
+
+ reload|force-reload)
+ log_daemon_msg "Reloading $PROJECT_NAME composition" "$PROJECT_NAME" || true
+ if docker-compose $OPTS up $UPOPTS > /dev/null 2>&1 ; then
+ log_end_msg 0 || true
+ else
+ log_end_msg 1 || true
+ fi
+ ;;
+
+ restart|try-restart)
+ log_daemon_msg "Restarting $PROJECT_NAME composition" "$PROJECT_NAME" || true
+ if docker-compose $OPTS stop > /dev/null 2>&1; docker-compose $OPTS up $UPOPTS > /dev/null 2>&1 ; then
+ log_end_msg 0 || true
+ else
+ log_end_msg 1 || true
+ fi
+ ;;
+
+ status)
+ docker-compose $OPTS ps && exit 0 || exit $?
+ ;;
+
+ *)
+ log_action_msg "Usage: /etc/init.d/$PROJECT_NAME {start|stop|reload|force-reload|restart|try-restart|status}" || true
+ exit 1
+ ;;
+esac
+
+exit 0
--- /dev/null
+#!/usr/bin/python
+
+import os
+
+path = os.getcwd()
+name = path.split(os.sep)[-1]
+service = '/lib/systemd/system/' + name + '.service'
+
+print 'installing ' + name + '...'
+
+if not os.path.exists('/etc/init.d/docker'):
+ os.system('wget -qO- https://get.docker.com/ | sh')
+ os.system('pip install docker-compose')
+
+rules="""
+[Unit]
+Description=%s composition
+Requires=docker.service
+After=docker.service
+
+[Service]
+ExecStart=/usr/local/bin/docker-compose -f %s/docker-compose.yml up -d
+ExecStop=/usr/local/bin/docker-compose -f %s/docker-compose.yml stop
+
+[Install]
+WantedBy=local.target
+""" % (name, path, path)
+
+# print rules
+
+f = open(service, 'w')
+f.write(rules)
+f.close()
+
+os.system('systemctl enable ' + service)
+os.system('systemctl daemon-reload')
+
+print 'done'
--- /dev/null
+#!/usr/bin/python
+
+import os
+
+path = os.getcwd()
+name = path.split(os.sep)[-1].lower()
+service = '/etc/init.d/' + name
+conf = path + os.sep + 'docker-compose.yml'
+
+print 'installing ' + name + '...'
+
+if not os.path.exists('/etc/init.d/docker'):
+ os.system('wget -qO- https://get.docker.com/ | sh')
+ os.system('pip install docker-compose')
+
+f = open('init.sh.example', 'r')
+rules = f.read() % (name, name, conf)
+f.close()
+
+f = open(service, 'w')
+f.write(rules)
+f.close()
+
+os.system('chmod 755 ' + service)
+os.system('update-rc.d ' + name + ' defaults')
+
+print 'done'