3a186698a6
There is a common pattern of if init_system == foo then install init script foo-service-init into /etc/init... Lets encode this pattern by allowing elements to put files into init-scripts/init-system directories and then copying the appropriate files for them. Change-Id: I541db18a0a8c5e0755a0af5732f4e15a5e5cf984
27 lines
743 B
Bash
Executable File
27 lines
743 B
Bash
Executable File
#!/bin/bash
|
|
# Note that this relies on the detail that all elements share one dir inside
|
|
# the chroot. This will copy all the files that elements have added to
|
|
# element/static into the image. Mode, symlinks etc will be respected.
|
|
|
|
if [ ${DIB_DEBUG_TRACE:-1} -gt 0 ]; then
|
|
set -x
|
|
fi
|
|
set -eu
|
|
set -o pipefail
|
|
|
|
scripts_dir="$(dirname $0)../init-scripts/$DIB_INIT_SYSTEM/"
|
|
if [ -d "$scripts_dir" ]; then
|
|
dest=
|
|
case $DIB_INIT_SYSTEM in
|
|
upstart) dest=/etc/init/ ;;
|
|
systemd) dest=/usr/lib/systemd/system/ ;;
|
|
sysv) dest=/etc/init.d/ ;;
|
|
esac
|
|
|
|
if [ -z "$dest" ]; then
|
|
echo "ERROR: DIB_INIT_SYSTEM ($DIB_INIT_SYSTEM) is not an unknown type"
|
|
exit 1
|
|
fi
|
|
rsync -lCr "$scripts_dir" $dest
|
|
fi
|