Blob Blame History Raw
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 "$@"
 }