]> git.ipfire.org Git - thirdparty/pdns.git/commitdiff
Move the EL6 dnsdist package to upstart 6426/head
authorPieter Lexis <pieter.lexis@powerdns.com>
Fri, 30 Mar 2018 13:21:52 +0000 (15:21 +0200)
committerPieter Lexis <pieter.lexis@powerdns.com>
Fri, 30 Mar 2018 14:37:43 +0000 (16:37 +0200)
build-scripts/build-dnsdist-rpm
pdns/dnsdistdist/contrib/dnsdist.upstart.conf [new file with mode: 0644]

index 9fff41c4364c07632fae0cca3f4fa64d967a6799..5a334628b38e3d631587265b13a7ed4ec9af01a5 100755 (executable)
@@ -85,8 +85,10 @@ if [ -f /etc/redhat-release ]; then
   case "$OS" in
     CentOS\ *\ 6*)
       INIT_BUILDREQUIRES=''
-      INIT_INSTALL='install -d -m 755 %{buildroot}/%{_initrddir} && install -m 755 contrib/dnsdist.init.centos6 %{buildroot}/%{_initrddir}/dnsdist'
-      INIT_FILES='%{_initrddir}/dnsdist'
+      INIT_INSTALL='install -d -m 755 %{buildroot}%{_sysconfdir}/init && install -m 644 contrib/dnsdist.upstart.conf %{buildroot}%{_sysconfdir}/init/%{name}.conf'
+      INIT_FILES='%{_sysconfdir}/init/dnsdist.conf'
+      DEFAULTS_INSTALL='install -d -m 755 %{buildroot}%{_sysconfdir}/default && install -m 644 contrib/dnsdist.default %{buildroot}%{_sysconfdir}/default/%{name}'
+      DEFAULTS_FILES='%{_sysconfdir}/default/%{name}'
       INIT_CONFIGURE='\'
       SODIUM_BUILDREQUIRES=''
       SODIUM_CONFIGURE='--disable-libsodium \'
@@ -171,7 +173,9 @@ exit 0
 
 %post
 %if 0%{?el6}
-/sbin/chkconfig --add %{name}
+if [ -x /sbin/initctl ]; then
+   /sbin/initctl reload-configuration
+fi
 %elif 0%{?suse_version}
 %service_add_post %{name}.service
 %else
@@ -180,10 +184,9 @@ exit 0
 
 %preun
 %if 0%{?el6}
-if [ "\$1" -eq "0" ]; then
-  # Package removal, not upgrade
-  /sbin/service %{name} stop > /dev/null 2>&1 || :
-  /sbin/chkconfig --del %{name}
+if [ \$1 -eq 0 ] ; then
+    # This is package removal, not upgrade
+    /sbin/stop %{name} >/dev/null 2>&1 || :
 fi
 %elif 0%{?suse_version}
 %service_del_preun %{name}.service
@@ -193,8 +196,8 @@ fi
 
 %postun
 %if 0%{?el6}
-if [ "\$1" -ge "1" ] ; then
-  /sbin/service %{name} condrestart >/dev/null 2>&1 || :
+if [ -x /sbin/initctl ] && /sbin/initctl status %{name} 2>/dev/null | grep -q 'running' ; then
+  /sbin/initctl stop %{name} > /dev/null 2>&1 || :
 fi
 %elif 0%{?suse_version}
 %service_del_postun %{name}.service
diff --git a/pdns/dnsdistdist/contrib/dnsdist.upstart.conf b/pdns/dnsdistdist/contrib/dnsdist.upstart.conf
new file mode 100644 (file)
index 0000000..1253df5
--- /dev/null
@@ -0,0 +1,14 @@
+description "dnsdist - A DNS loadbalancer"
+start on runlevel [2345]
+stop on runlevel [016]
+
+kill timeout 10
+respawn
+
+script
+  DNSDIST_OPTIONS=''
+  DNSDIST_USER=dnsdist
+  DNSDIST_GROUP=dnsdist
+  test -r /etc/default/dnsdist && source /etc/default/dnsdist
+  exec /usr/bin/dnsdist --supervised --uid $DNSDIST_USER --gid $DNSDIST_GROUP $DNSDIST_OPTIONS
+end script