diff -up galera-25.3.20/garb/files/garb.service.p2 galera-25.3.20/garb/files/garb.service --- galera-25.3.20/garb/files/garb.service.p2 2017-05-02 18:18:12.000000000 +0200 +++ galera-25.3.20/garb/files/garb.service 2017-06-24 23:19:57.458471374 +0200 @@ -10,8 +10,8 @@ Alias=garbd.service [Service] User=nobody -EnvironmentFile=/etc/sysconfig/garb -ExecStart=/usr/bin/garb-systemd start +EnvironmentFile=@sysconfdir@/sysconfig/garb +ExecStart=@bindir@/garbd-systemd start # Use SIGINT because with the default SIGTERM # garbd fails to reliably transition to 'destroyed' state diff -up galera-25.3.20/garb/files/garb.sh.p2 galera-25.3.20/garb/files/garb.sh --- galera-25.3.20/garb/files/garb.sh.p2 2017-05-02 18:18:12.000000000 +0200 +++ galera-25.3.20/garb/files/garb.sh 2017-06-24 23:12:52.329066055 +0200 @@ -5,7 +5,7 @@ # init.d script for garbd # # chkconfig: - 99 01 -# config: /etc/sysconfig/garb | /etc/default/garb +# config: @sysconfdir@/sysconfig/garb | @sysconfdir@/default/garb ### BEGIN INIT INFO # Provides: garb @@ -29,10 +29,10 @@ _SYSTEMCTL_SKIP_REDIRECT=true if [ -f /etc/redhat-release ]; then . /etc/init.d/functions . /etc/sysconfig/network - config=/etc/sysconfig/garb + config=@sysconfdir@/sysconfig/garb else . /lib/lsb/init-functions - config=/etc/default/garb + config=@sysconfdir@/default/garb fi log_failure() { @@ -45,9 +45,9 @@ log_failure() { fi } -PIDFILE=/var/run/garbd +PIDFILE=/var/run/@scl_prefix@garbd -prog=$(which garbd) +prog="$(scl enable @scl@ -- which garbd)" program_start() { local rcode @@ -154,6 +154,19 @@ restart() { start } +# We have to re-enable SCL environment, because /sbin/service +# clears almost all environment variables. +# Since X_SCLS is cleared as well, we lose information about other +# collections enabled. +source @scl_scripts@/garbd-service-environment +source scl_source enable $@scl_upper@_SCLS_ENABLED + +# we want start daemon only inside "scl enable" invocation +if ! scl_enabled @scl@ ; then + echo "Collection @scl@ has to be listed in @scl_scripts@/garbd-service-environment" + exit 1 +fi + # See how we were called. case "$1" in start) diff -up galera-25.3.20/garb/files/garb-systemd.p2 galera-25.3.20/garb/files/garb-systemd --- galera-25.3.20/garb/files/garb-systemd.p2 2017-05-02 18:18:12.000000000 +0200 +++ galera-25.3.20/garb/files/garb-systemd 2017-06-24 23:06:12.176684549 +0200 @@ -2,7 +2,7 @@ # -config=/etc/sysconfig/garb +config=@sysconfdir@/sysconfig/garb log_failure() { echo " ERROR! $@" @@ -12,7 +12,7 @@ log_failure() { program_start() { echo "Starting garbd" - /usr/bin/garbd "$@" + scl enable @scl@ -- @bindir@/garbd "$@" }