[puppet] Improve NetworkManager compatibility, thanks to Orion Poplawski (#532085)

Todd Zullinger tmz at fedoraproject.org
Wed Jul 18 21:57:53 UTC 2012


commit eda1b9242bbef783e9402667ff86f0ad608988f7
Author: Todd Zullinger <tmz at pobox.com>
Date:   Wed Jul 11 10:03:42 2012 -0400

    Improve NetworkManager compatibility, thanks to Orion Poplawski (#532085)

 puppet-nm-dispatcher |    8 ++++++++
 puppet.spec          |   12 +++++++++++-
 2 files changed, 19 insertions(+), 1 deletions(-)
---
diff --git a/puppet-nm-dispatcher b/puppet-nm-dispatcher
new file mode 100755
index 0000000..6e9e0b3
--- /dev/null
+++ b/puppet-nm-dispatcher
@@ -0,0 +1,8 @@
+#!/bin/bash
+#
+# Restart puppet on network changes to pickup changes to /etc/resolv.conf
+#
+# https://projects.puppetlabs.com/issues/2776
+# https://bugzilla.redhat.com/532085
+
+[[ $2 =~ ^(up|down)$ ]] && /sbin/service puppet condrestart || :
diff --git a/puppet.spec b/puppet.spec
index 719f3fd..f8f5342 100644
--- a/puppet.spec
+++ b/puppet.spec
@@ -20,7 +20,8 @@ URL:            http://puppetlabs.com
 Source0:        http://downloads.puppetlabs.com/%{name}/%{name}-%{version}.tar.gz
 Source1:        http://downloads.puppetlabs.com/%{name}/%{name}-%{version}.tar.gz.asc
 Source2:        puppetstoredconfigclean.rb
-# http://projects.puppetlabs.com/issues/11325
+Source3:        puppet-nm-dispatcher
+# https://projects.puppetlabs.com/issues/11325
 # https://github.com/puppetlabs/puppet/commit/a71208ba
 Patch0:         0001-Ruby-1.9.3-has-a-different-error-when-require-fails.patch
 
@@ -141,6 +142,11 @@ ln -svf puppet-doc.8.gz puppetdoc.8.gz
 ln -svf puppet-resource.8.gz ralsh.8.gz
 popd >/dev/null
 
+# Install a NetworkManager dispatcher script to pickup changes to
+# /etc/resolv.conf and such (https://bugzilla.redhat.com/532085).
+install -Dpv %{SOURCE3} \
+    %{buildroot}%{_sysconfdir}/NetworkManager/dispatcher.d/98-%{name}
+
 # Install the ext/ directory to %%{_datadir}/%%{name}
 install -d %{buildroot}%{_datadir}/%{name}
 cp -a ext/ %{buildroot}%{_datadir}/%{name}
@@ -193,6 +199,9 @@ echo "D /var/run/%{name} 0755 %{name} %{name} -" > \
 %ghost %config(noreplace,missingok) %{_sysconfdir}/puppet/puppetca.conf
 %ghost %config(noreplace,missingok) %{_sysconfdir}/puppet/puppetd.conf
 %config(noreplace) %{_sysconfdir}/logrotate.d/puppet
+%dir %{_sysconfdir}/NetworkManager
+%dir %{_sysconfdir}/NetworkManager/dispatcher.d
+%{_sysconfdir}/NetworkManager/dispatcher.d/98-puppet
 # We don't want to require emacs or vim, so we need to own these dirs
 %{_datadir}/emacs
 %{_datadir}/vim
@@ -278,6 +287,7 @@ rm -rf %{buildroot}
 * Wed Jul 11 2012 Todd Zullinger <tmz at pobox.com> - 2.7.18-1
 - Update to 2.7.17, fixes CVE-2012-3864, CVE-2012-3865, CVE-2012-3866,
   CVE-2012-3867
+- Improve NetworkManager compatibility, thanks to Orion Poplawski (#532085)
 
 * Wed Apr 25 2012 Todd Zullinger <tmz at pobox.com> - 2.7.13-1
 - Update to 2.7.13


More information about the scm-commits mailing list