2017-06-28 11:19:32 +00:00
|
|
|
#!/bin/sh -e
|
2017-06-01 15:43:43 +00:00
|
|
|
|
|
|
|
pkg=$(cat "$__object/parameter/from-package")
|
2017-09-02 19:25:17 +00:00
|
|
|
servicedir=$(cat "$__object/parameter/servicedir")
|
2017-06-01 15:43:43 +00:00
|
|
|
|
2018-10-02 19:44:27 +00:00
|
|
|
__package "$pkg"
|
|
|
|
__directory "$servicedir" --mode 700
|
2017-06-01 15:43:43 +00:00
|
|
|
|
2018-01-05 21:04:13 +00:00
|
|
|
os=$(cat "$__global/explorer/os")
|
|
|
|
init=$(cat "$__global/explorer/init")
|
2017-09-02 19:25:17 +00:00
|
|
|
|
2018-01-05 21:04:13 +00:00
|
|
|
case $os in
|
|
|
|
freebsd)
|
|
|
|
# TODO change to __start_on_boot once it supports freebsd
|
|
|
|
__config_file /etc/rc.conf.d/svscan --source - <<-EOT
|
|
|
|
svscan_enable="YES"
|
|
|
|
svscan_servicedir="$servicedir"
|
|
|
|
EOT
|
|
|
|
require="$require __package/$pkg __directory/$servicedir __config_file/etc/rc.conf.d/svscan" \
|
|
|
|
__process svscan --name ".*/svscan $servicedir" --start 'service svscan start'
|
|
|
|
;;
|
|
|
|
*)
|
|
|
|
case $init in
|
|
|
|
init)
|
|
|
|
if [ -f "$__object/parameter/install-init-script" ]; then
|
2017-09-02 19:25:17 +00:00
|
|
|
__config_file /etc/init.d/svscan --mode 755 --source "$__type/files/init.d-svscan"
|
2018-01-05 21:04:13 +00:00
|
|
|
REQUIREEXTRA="__config_file/etc/init.d/svscan"
|
|
|
|
fi
|
|
|
|
require="$require $REQUIREEXTRA" __start_on_boot svscan
|
|
|
|
require="$require __package/$pkg __directory/$servicedir __start_on_boot/svscan" \
|
|
|
|
__process svscan --name ".*/svscan $servicedir" --start 'service svscan start'
|
2017-09-02 19:25:17 +00:00
|
|
|
;;
|
2018-01-05 21:04:13 +00:00
|
|
|
*)
|
|
|
|
echo "Your init system ($init) is not supported by this type. Submit a patch at github.com/ungleich/cdist!"
|
|
|
|
exit 1
|
|
|
|
;;
|
|
|
|
esac
|
|
|
|
;;
|
|
|
|
esac
|