]> git.pld-linux.org Git - packages/puppet.git/blame - puppet.spec
- up to 3.7.3
[packages/puppet.git] / puppet.spec
CommitLineData
bb855c6f
BZ
1# TODO
2# for man - rst2man.py needed (docutils snap?)
add5fc4a 3Summary: A network tool for managing many disparate systems
bb855c6f 4Name: puppet
5c13fcb2
AM
5Version: 3.7.3
6Release: 0.1
7e8408a7 7License: Apache v2.0
bb855c6f 8Group: Networking/Admin
add5fc4a 9Source0: http://puppetlabs.com/downloads/puppet/%{name}-%{version}.tar.gz
5c13fcb2 10# Source0-md5: cc294da1d51df07bcc7f6cf78bd90ce0
a1a906d9 11Patch0: install-p.patch
9af5b5eb 12Patch1: ruby19.patch
add5fc4a 13URL: http://www.puppetlabs.com/
bb855c6f 14BuildRequires: docutils
5c13fcb2 15BuildRequires: hiera
7e8408a7
ER
16BuildRequires: rpm-rubyprov
17BuildRequires: rpmbuild(macros) >= 1.656
18BuildRequires: ruby-facter >= 1.6
19BuildRequires: sed >= 4.0
20BuildRequires: which
21BuildConflicts: ruby-ftools
2bc6800e
ER
22Provides: group(puppet)
23Provides: user(puppet)
24Requires(postun): /usr/sbin/groupdel
25Requires(postun): /usr/sbin/userdel
26Requires(pre): /bin/id
27Requires(pre): /usr/bin/getgid
28Requires(pre): /usr/sbin/groupadd
29Requires(pre): /usr/sbin/useradd
1a387339
ER
30Requires: hiera < 2
31Requires: hiera >= 1.0
7e8408a7
ER
32Requires: ruby-facter < 2
33Requires: ruby-facter >= 1.6
7e8408a7 34BuildArch: noarch
bb855c6f
BZ
35BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
36
fdb59856
ER
37%define schemadir /usr/share/openldap/schema
38
bb855c6f 39%description
add5fc4a
ER
40Puppet lets you centrally manage every important aspect of your system
41using a cross-platform specification language that manages all the
42separate elements normally aggregated in different files, like users,
43cron jobs, and hosts, along with obviously discrete elements like
44packages, services, and files.
bb855c6f 45
3badc16c
ER
46%package server
47Summary: Server for the puppet system management tool
48Group: Base
49Requires: %{name} = %{version}-%{release}
12d9a65f 50Requires(post,preun): /sbin/chkconfig
3badc16c
ER
51Requires: rc-scripts
52
53%description server
54Provides the central puppet server daemon which provides manifests to
55clients. The server can also function as a certificate authority and
56file server.
bb855c6f 57
fdb59856
ER
58%package -n openldap-schema-%{name}
59Summary: Puppet LDAP schema
60Summary(pl.UTF-8): Schemat LDAP dla Puppet
61Group: Networking/Daemons
62Requires(post,postun): sed >= 4.0
63Requires: openldap-schema-rfc2739
64Requires: openldap-servers
65Requires: sed >= 4.0
66
67%description -n openldap-schema-%{name}
68This package contains puppet.schema for openldap.
69
70%description -n openldap-schema-%{name} -l pl.UTF-8
71Ten pakiet zawiera puppet.schema dla pakietu openldap.
72
73%package -n vim-syntax-%{name}
5c16f30d
ER
74Summary: Vim syntax for puppet .pp files
75Group: Applications/Editors/Vim
76Requires: vim-rt >= 4:7.2.170
77
fdb59856 78%description -n vim-syntax-%{name}
5c16f30d
ER
79Vim syntax for puppet .pp files
80
bb855c6f
BZ
81%prep
82%setup -q
3191db80
AZ
83#%patch0 -p1
84#%patch1 -p1
bb855c6f 85
bb855c6f
BZ
86%install
87rm -rf $RPM_BUILD_ROOT
add5fc4a 88%{__ruby} install.rb \
08d42e39 89 --quick \
add5fc4a 90 --no-rdoc \
7e8408a7 91 --sitelibdir=%{ruby_vendorlibdir} \
bb855c6f
BZ
92 --destdir=$RPM_BUILD_ROOT
93
dfa863f6
ER
94install -d $RPM_BUILD_ROOT{%{_sysconfdir}/%{name}/{manifests,modules},%{_datadir}/%{name}/modules} \
95 $RPM_BUILD_ROOT/etc/{rc.d/init.d,sysconfig,logrotate.d} \
96 $RPM_BUILD_ROOT%{_localstatedir}/{lib,log,run}/%{name}
97
98cp -p ext/redhat/client.sysconfig $RPM_BUILD_ROOT/etc/sysconfig/puppet
99cp -p ext/redhat/client.init $RPM_BUILD_ROOT/etc/rc.d/init.d/puppet
100cp -p ext/redhat/server.sysconfig $RPM_BUILD_ROOT/etc/sysconfig/puppetmaster
101cp -p ext/redhat/server.init $RPM_BUILD_ROOT/etc/rc.d/init.d/puppetmaster
102cp -p ext/redhat/queue.init $RPM_BUILD_ROOT/etc/rc.d/init.d/puppetqueue
103
104cp -p ext/redhat/fileserver.conf $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/fileserver.conf
105cp -p ext/redhat/puppet.conf $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/puppet.conf
106cp -p ext/redhat/logrotate $RPM_BUILD_ROOT/etc/logrotate.d/puppet
107
108# Install the ext/ directory to %{_datadir}/%{name}
109install -d $RPM_BUILD_ROOT%{_datadir}/%{name}
110cp -a ext $RPM_BUILD_ROOT%{_datadir}/%{name}
17807372 111
fdb59856
ER
112install -d $RPM_BUILD_ROOT%{schemadir}
113cp -p ext/ldap/puppet.schema $RPM_BUILD_ROOT%{schemadir}
114
5c16f30d
ER
115# Install vim syntax files
116install -d $RPM_BUILD_ROOT%{_datadir}/vim/{ftdetect,syntax}
dfa863f6
ER
117mv $RPM_BUILD_ROOT{%{_datadir}/%{name}/ext/vim/ftdetect/puppet.vim,%{_datadir}/vim/ftdetect}
118mv $RPM_BUILD_ROOT{%{_datadir}/%{name}/ext/vim/syntax/puppet.vim,%{_datadir}/vim/syntax}
5c16f30d 119
9afa5e9f
ER
120install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
121cp -a examples/* $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
122
dfa863f6
ER
123# emacs and vim bits are installed elsewhere
124%{__rm} -r $RPM_BUILD_ROOT%{_datadir}/%{name}/ext/{emacs,vim}
125
fdb59856
ER
126# remove misc packaging artifacts not applicable to rpms or other cruft
127%{__rm} -r $RPM_BUILD_ROOT%{_datadir}/%{name}/ext/{gentoo,freebsd,solaris,suse,windows,osx,ips,debian}
128%{__rm} -r $RPM_BUILD_ROOT%{_datadir}/%{name}/ext/{redhat,ldap,systemd}
129%{__rm} $RPM_BUILD_ROOT%{_datadir}/%{name}/ext/{build_defaults.yaml,project_data.yaml,envpuppet*}
dfa863f6
ER
130
131# Rpmlint fixup
132chmod 755 $RPM_BUILD_ROOT%{_datadir}/%{name}/ext/regexp_nodes/regexp_nodes.rb
133chmod 755 $RPM_BUILD_ROOT%{_datadir}/%{name}/ext/puppet-load.rb
134
228f2952
ER
135install -d $RPM_BUILD_ROOT%{systemdtmpfilesdir}
136echo "D /var/run/%{name} 0755 %{name} %{name} -" > \
137 $RPM_BUILD_ROOT%{systemdtmpfilesdir}/%{name}.conf
138
bb855c6f
BZ
139%clean
140rm -rf $RPM_BUILD_ROOT
141
2bc6800e
ER
142%pre
143%groupadd -g 292 puppet
144%useradd -u 292 -g puppet -c "Puppet" -d %{_localstatedir}/lib/%{name} puppet
145
146%postun
147if [ "$1" = "0" ]; then
148 %userremove puppet
149 %groupremove puppet
150fi
151
12d9a65f
ER
152%post
153/sbin/chkconfig --add puppet
154%service puppet restart
155
156%preun
157if [ "$1" = "0" ]; then
158 %service -q puppet stop
159 /sbin/chkconfig --del puppet
160fi
161
162%post server
163/sbin/chkconfig --add puppetmaster
164/sbin/chkconfig --add puppetqueue
165%service puppetmaster restart
166%service puppetqueue restart
167
168%preun server
169if [ "$1" = "0" ]; then
170 /sbin/chkconfig --del puppetmaster
171 /sbin/chkconfig --del puppetqueue
172 %service -q puppetmaster stop
173 %service -q puppetqueue stop
174fi
175
fdb59856
ER
176%post -n openldap-schema-%{name}
177%openldap_schema_register %{schemadir}/%{name}.schema -d core
178%service -q ldap restart
179
180%postun -n openldap-schema-%{name}
181if [ "$1" = "0" ]; then
182 %openldap_schema_unregister %{schemadir}/%{name}.schema
183 %service -q ldap restart
184fi
185
12d9a65f 186
bb855c6f
BZ
187%files
188%defattr(644,root,root,755)
3191db80 189%doc README.md
20b9dc2f 190%dir %{_sysconfdir}/%{name}
17807372 191%dir %{_sysconfdir}/%{name}/modules
20b9dc2f 192%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/auth.conf
7e8408a7 193%attr(755,root,root) %{_bindir}/extlookup2hiera
bb855c6f 194%attr(755,root,root) %{_bindir}/puppet
7e8408a7
ER
195%{ruby_vendorlibdir}/puppet
196%{ruby_vendorlibdir}/puppet.rb
197%{ruby_vendorlibdir}/semver.rb
5c13fcb2
AM
198%{ruby_vendorlibdir}/puppetx.rb
199%{ruby_vendorlibdir}/puppetx
08d42e39 200%{_mandir}/man5/puppet.conf.5*
7e8408a7
ER
201%{_mandir}/man8/extlookup2hiera.8*
202%{_mandir}/man8/puppet*.8*
dfa863f6
ER
203%exclude %{_mandir}/man8/puppet-ca.8*
204%exclude %{_mandir}/man8/puppet-master.8*
9afa5e9f 205%{_examplesdir}/%{name}-%{version}
08d42e39 206
dfa863f6
ER
207%dir %{_datadir}/%{name}
208%{_datadir}/%{name}/modules
209%{_datadir}/%{name}/ext
210
7e8408a7
ER
211# hiera addons
212%{ruby_vendorlibdir}/hiera/backend/puppet_backend.rb
213%{ruby_vendorlibdir}/hiera/scope.rb
214%{ruby_vendorlibdir}/hiera_puppet.rb
215
dfa863f6
ER
216%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/puppet
217%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/puppet
218%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/puppet.conf
219%attr(754,root,root) /etc/rc.d/init.d/puppet
228f2952 220%{systemdtmpfilesdir}/puppet.conf
dfa863f6 221
806f39e5
ER
222# These need to be owned by puppet so the server can write to them.
223%dir %attr(755,puppet,puppet) %{_localstatedir}/run/%{name}
18ed06ad 224%dir %attr(750,puppet,puppet) %{_localstatedir}/log/%{name}
806f39e5
ER
225%dir %{_localstatedir}/lib/%{name}
226
3badc16c
ER
227%files server
228%defattr(644,root,root,755)
dfa863f6
ER
229%dir %{_sysconfdir}/%{name}/manifests
230%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/fileserver.conf
231%config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/puppetmaster
232%attr(754,root,root) /etc/rc.d/init.d/puppetmaster
233%attr(754,root,root) /etc/rc.d/init.d/puppetqueue
234%{_mandir}/man8/puppet-ca.8*
235%{_mandir}/man8/puppet-master.8*
5c16f30d 236
fdb59856
ER
237%files -n openldap-schema-%{name}
238%defattr(644,root,root,755)
239%{schemadir}/*.schema
240
241%files -n vim-syntax-%{name}
5c16f30d
ER
242%defattr(644,root,root,755)
243%{_datadir}/vim/ftdetect/puppet.vim
244%{_datadir}/vim/syntax/puppet.vim
This page took 0.151353 seconds and 4 git commands to generate.