- Update to 0.24.6

- Require ruby-shadow on Fedora and RHEL >= 5
- Simplify Fedora/RHEL version checks for ruby(abi) and BuildArch
- Require chkconfig and initstripts for preun, post, and postun scripts
- Conditionally restart puppet in %postun
- Ensure %preun, %post, and %postun scripts exit cleanly
- Create puppet user/group according to Fedora packaging guidelines
- Quiet a few rpmlint complaints
- Remove useless %pbuild macro
- Make specfile more like the Fedora/EPEL template
epel9
Todd Zullinger 16 years ago
parent 7237c7549d
commit 1e6ad1bd64

@ -1 +1 @@
puppet-0.24.5.tgz puppet-0.24.6.tgz

@ -1,30 +1,33 @@
%{!?ruby_sitelibdir: %define ruby_sitelibdir %(ruby -rrbconfig -e 'puts Config::CONFIG["sitelibdir"]')} %{!?ruby_sitelibdir: %define ruby_sitelibdir %(ruby -rrbconfig -e 'puts Config::CONFIG["sitelibdir"]')}
%define pbuild %{_builddir}/%{name}-%{version}
%define confdir conf/redhat %define confdir conf/redhat
%define has_ruby_abi 0%{?fedora:%fedora} >= 5 || 0%{?rhel:%rhel} >= 5
%define has_ruby_noarch %has_ruby_abi
Summary: A network tool for managing many disparate systems
Name: puppet Name: puppet
Version: 0.24.5 Version: 0.24.6
Release: 1%{?dist} Release: 1%{?dist}
License: GPLv2+ Summary: A network tool for managing many disparate systems
Group: System Environment/Base Group: System Environment/Base
License: GPLv2+
URL: http://puppet.reductivelabs.com/ URL: http://puppet.reductivelabs.com/
Source: http://reductivelabs.com/downloads/puppet/%{name}-%{version}.tgz Source0: http://reductivelabs.com/downloads/puppet/%{name}-%{version}.tgz
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
Requires: ruby >= 1.8.1 BuildRequires: ruby >= 1.8.1
%if %has_ruby_abi
%if 0%{?fedora} || 0%{?rhel} >= 5
BuildArch: noarch
Requires: ruby(abi) = 1.8 Requires: ruby(abi) = 1.8
Requires: ruby-shadow
%endif %endif
Requires: facter >= 1.1.4 Requires: facter >= 1.1.4
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) Requires: ruby >= 1.8.1
%if %has_ruby_noarch Requires(pre): shadow-utils
BuildArchitectures: noarch Requires(post): chkconfig
%endif Requires(preun): chkconfig
BuildRequires: ruby >= 1.8.1 Requires(preun): initscripts
Requires(postun): initscripts
%description %description
Puppet lets you centrally manage every important aspect of your system using a Puppet lets you centrally manage every important aspect of your system using a
@ -36,6 +39,10 @@ along with obviously discrete elements like packages, services, and files.
Group: System Environment/Base Group: System Environment/Base
Summary: Server for the puppet system management tool Summary: Server for the puppet system management tool
Requires: puppet = %{version}-%{release} Requires: puppet = %{version}-%{release}
Requires(post): chkconfig
Requires(preun): chkconfig
Requires(preun): initscripts
Requires(postun): initscripts
%description server %description server
Provides the central puppet server daemon which provides manifests to clients. Provides the central puppet server daemon which provides manifests to clients.
@ -54,6 +61,9 @@ for f in mac_dscl.pp mac_dscl_revert.pp \
sed -i -e'1d' examples/$f sed -i -e'1d' examples/$f
chmod a-x examples/$f chmod a-x examples/$f
done done
for f in external/nagios.rb network/http_server/mongrel.rb relationship.rb; do
sed -i -e '1d' lib/puppet/$f
done
find examples/ -type f -empty | xargs rm find examples/ -type f -empty | xargs rm
find examples/ -type f | xargs chmod a-x find examples/ -type f | xargs chmod a-x
@ -69,14 +79,14 @@ install -d -m0755 %{buildroot}%{_mandir}/man8
install -d -m0755 %{buildroot}%{_localstatedir}/lib/puppet install -d -m0755 %{buildroot}%{_localstatedir}/lib/puppet
install -d -m0755 %{buildroot}%{_localstatedir}/run/puppet install -d -m0755 %{buildroot}%{_localstatedir}/run/puppet
install -d -m0755 %{buildroot}%{_localstatedir}/log/puppet install -d -m0755 %{buildroot}%{_localstatedir}/log/puppet
install -Dp -m0755 %{pbuild}/bin/* %{buildroot}%{_sbindir} install -Dp -m0755 bin/* %{buildroot}%{_sbindir}
mv %{buildroot}%{_sbindir}/puppet %{buildroot}%{_bindir}/puppet mv %{buildroot}%{_sbindir}/puppet %{buildroot}%{_bindir}/puppet
mv %{buildroot}%{_sbindir}/ralsh %{buildroot}%{_bindir}/ralsh mv %{buildroot}%{_sbindir}/ralsh %{buildroot}%{_bindir}/ralsh
mv %{buildroot}%{_sbindir}/filebucket %{buildroot}%{_bindir}/filebucket mv %{buildroot}%{_sbindir}/filebucket %{buildroot}%{_bindir}/filebucket
mv %{buildroot}%{_sbindir}/puppetrun %{buildroot}%{_bindir}/puppetrun mv %{buildroot}%{_sbindir}/puppetrun %{buildroot}%{_bindir}/puppetrun
mv %{buildroot}%{_sbindir}/puppetdoc %{buildroot}%{_bindir}/puppetdoc mv %{buildroot}%{_sbindir}/puppetdoc %{buildroot}%{_bindir}/puppetdoc
install -Dp -m0644 %{pbuild}/lib/puppet.rb %{buildroot}%{ruby_sitelibdir}/puppet.rb install -Dp -m0644 lib/puppet.rb %{buildroot}%{ruby_sitelibdir}/puppet.rb
cp -a %{pbuild}/lib/puppet %{buildroot}%{ruby_sitelibdir} cp -a lib/puppet %{buildroot}%{ruby_sitelibdir}
find %{buildroot}%{ruby_sitelibdir} -type f -perm +ugo+x -print0 | xargs -0 -r chmod a-x find %{buildroot}%{ruby_sitelibdir} -type f -perm +ugo+x -print0 | xargs -0 -r chmod a-x
install -Dp -m0644 %{confdir}/client.sysconfig %{buildroot}%{_sysconfdir}/sysconfig/puppet install -Dp -m0644 %{confdir}/client.sysconfig %{buildroot}%{_sysconfdir}/sysconfig/puppet
install -Dp -m0755 %{confdir}/client.init %{buildroot}%{_initrddir}/puppet install -Dp -m0755 %{confdir}/client.init %{buildroot}%{_initrddir}/puppet
@ -136,40 +146,59 @@ touch %{buildroot}%{_sysconfdir}/puppet/puppetd.conf
%doc %{_mandir}/man8/puppetrun.8.gz %doc %{_mandir}/man8/puppetrun.8.gz
%pre %pre
/usr/sbin/groupadd -r puppet 2>/dev/null || : getent group puppet >/dev/null || groupadd -r puppet
/usr/sbin/useradd -g puppet -c "Puppet" \ getent passwd puppet >/dev/null || \
-s /sbin/nologin -r -d /var/lib/puppet puppet 2> /dev/null || : useradd -r -g puppet -d %{_localstatedir}/lib/puppet -s /sbin/nologin \
-c "Puppet" puppet || :
# ensure that old setups have the right puppet home dir
if [ $1 -gt 1 ] ; then if [ $1 -gt 1 ] ; then
/usr/sbin/usermod -d /var/lib/puppet puppet || : usermod -d %{_localstatedir}/lib/puppet puppet || :
fi fi
%post %post
/sbin/chkconfig --add puppet /sbin/chkconfig --add puppet || :
exit 0
%post server %post server
/sbin/chkconfig --add puppetmaster /sbin/chkconfig --add puppetmaster || :
%preun %preun
if [ "$1" = 0 ] ; then if [ "$1" = 0 ] ; then
/sbin/service puppet stop > /dev/null 2>&1 /sbin/service puppet stop > /dev/null 2>&1
/sbin/chkconfig --del puppet /sbin/chkconfig --del puppet || :
fi fi
%preun server %preun server
if [ "$1" = 0 ] ; then if [ "$1" = 0 ] ; then
/sbin/service puppetmaster stop > /dev/null 2>&1 /sbin/service puppetmaster stop > /dev/null 2>&1
/sbin/chkconfig --del puppetmaster /sbin/chkconfig --del puppetmaster || :
fi
%postun
if [ "$1" -ge 1 ]; then
/sbin/service puppet condrestart >/dev/null 2>&1 || :
fi fi
%postun server %postun server
if [ "$1" -ge 1 ]; then if [ "$1" -ge 1 ]; then
/sbin/service puppetmaster condrestart > /dev/null 2>&1 /sbin/service puppetmaster condrestart > /dev/null 2>&1 || :
fi fi
%clean %clean
rm -rf %{buildroot} rm -rf %{buildroot}
%changelog %changelog
* Wed Oct 22 2008 Todd Zullinger <tmz@pobox.com> - 0.24.6-1
- Update to 0.24.6
- Require ruby-shadow on Fedora and RHEL >= 5
- Simplify Fedora/RHEL version checks for ruby(abi) and BuildArch
- Require chkconfig and initstripts for preun, post, and postun scripts
- Conditionally restart puppet in %%postun
- Ensure %%preun, %%post, and %%postun scripts exit cleanly
- Create puppet user/group according to Fedora packaging guidelines
- Quiet a few rpmlint complaints
- Remove useless %%pbuild macro
- Make specfile more like the Fedora/EPEL template
* Mon Jul 28 2008 David Lutterkort <dlutter@redhat.com> - 0.24.5-1 * Mon Jul 28 2008 David Lutterkort <dlutter@redhat.com> - 0.24.5-1
- Add /usr/bin/puppetdoc - Add /usr/bin/puppetdoc

@ -1 +1 @@
1160bb69966b9145d9f845f1f355dd44 puppet-0.24.5.tgz dcc84cd9bc5c411536ab88589079459b puppet-0.24.6.tgz

Loading…
Cancel
Save