c9a81d2806
This change converts the appliances from openrc to systemd. In addition, systemd needs to at least be be installed on the build machine as we now use systemd-nspawn instead of chroot/bind mounts do to the fact that systemd-nspawn is much more robust and lese prone to errors. In addition: * All stage4 tarballs and images are now stored in the images/ directory by default. * A package dir is now required and is set up in the packages/ directory by default. * The portage directory is not unpacked in the chroot every time anymore and is instead bind-mounted from a directory by systemd-nspawn. This is the portage/ directory by default. * In addition there is a distfiles/ directory (by default) which is bind-mounted in the chroot. It does what you'd probably expect. * The Makefile learned new target, eclean, which will run eclean-dist and eclean-pkg to clean out obsolete distfiles and binary packages. * The REMOVE_PORTAGE_TREE option is removed as portage is no longer installed. * The unused/untested PRUNE_CRITICAL functionality has been removed. I have no idea if it worked and if it didn't I didn't want to fix it. * As appliances are always using systemd, UDEV is no longer optional. * Timezones and hostnames are now handled by systemd (systemd-firstboot). * Stage4 tarballs are now directly importable as systemd containers (and probably docker too though I haven't tested that yet). * A number of packages (for example dhcpd, acpid) have been removed from the appliances when systemd provides equivalent functionality. * We no longer override etc-update.conf. There's no reason. * A number of Makefile targets, checkpoints, temp files, etc have been removed as they are no longer needed.
36 lines
870 B
Plaintext
Executable File
36 lines
870 B
Plaintext
Executable File
#!/sbin/runscript
|
|
# Copyright 2013-2015 Marduk Enterprises (marduk@python.net)
|
|
# Distributed under the terms of the GNU General Public License v2
|
|
|
|
description="GUnicorn server for the dpaste app"
|
|
|
|
depend() {
|
|
need localmount
|
|
after nginx
|
|
after postgresql-9.3
|
|
}
|
|
|
|
|
|
start() {
|
|
ebegin "Starting dpaste"
|
|
. /opt/dpaste/bin/activate
|
|
export PYTHONPATH=/opt/dpaste/dpaste
|
|
start-stop-daemon --start --exec /opt/dpaste/bin/python -- /opt/dpaste/manage.py run_gunicorn \
|
|
--user=dpaste \
|
|
--daemon \
|
|
--group=dpaste \
|
|
--workers=2 \
|
|
--error-logfile=/opt/dpaste/var/gunicorn.error.log \
|
|
--pid=/opt/dpaste/var/gunicorn.pid \
|
|
--bind=unix:///opt/dpaste/var/dpaste.sock
|
|
}
|
|
|
|
|
|
stop() {
|
|
ebegin "Stopping dpaste"
|
|
start-stop-daemon --stop \
|
|
--pidfile /opt/dpaste/var/gunicorn.pid \
|
|
--exec /opt/dpaste/bin/python
|
|
eend $? "Failed to stop dpaste"
|
|
}
|