/[packages]/cauldron/puppet/current/SPECS/puppet.spec
ViewVC logotype

Contents of /cauldron/puppet/current/SPECS/puppet.spec

Parent Directory Parent Directory | Revision Log Revision Log


Revision 35788 - (show annotations) (download)
Mon Jan 24 00:14:45 2011 UTC (13 years, 3 months ago) by misc
File size: 6256 byte(s)
- clean version specific and extranous requires

1 %define name puppet
2 %define version 2.6.4
3 %define release %mkrel 1
4
5 %define ppconfdir conf/redhat
6
7 Name: %{name}
8 Version: %{version}
9 Release: %{release}
10 Summary: System Automation and Configuration Management Software
11 License: GPLv2+
12 Group: Monitoring
13 URL: http://www.puppetlabs.com/
14 Source0: http://puppetlabs.com/downloads/puppet/%{name}-%{version}.tar.gz
15 Source100: puppet.init
16 Source101: puppetmaster.init
17 BuildArch: noarch
18 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-buildroot
19 BuildRequires: ruby facter
20 Requires: facter
21 Requires(post): rpm-helper
22 Requires(preun):rpm-helper
23
24 %description
25 Puppet lets you centrally manage every important aspect of your system using a
26 cross-platform specification language that manages all the separate elements
27 normally aggregated in different files, like users, cron jobs, and hosts,
28 along with obviously discrete elements like packages, services, and files.
29
30 This package provide the puppet client daemon.
31
32
33 %package server
34 Group: Monitoring
35 Summary: Server for the puppet system management tool
36 Requires: %{name} = %{version}
37 Requires(post): rpm-helper
38 Requires(preun):rpm-helper
39
40 %description server
41 Provides the central puppet server daemon (puppetmaster) which provides
42 manifests to clients.
43 The server can also function as a certificate authority and file server.
44
45 %prep
46 %setup -q
47
48 %build
49 # Use /usr/bin/ruby directly instead of /usr/bin/env ruby in
50 #+ executables. Otherwise, initscripts break since pidof can't
51 #+ find the right process
52 for f in bin/* ; do
53 sed -i -e '1c#!/usr/bin/ruby' $f
54 done
55
56 %install
57 %{__rm} -rf %{buildroot}
58
59 ruby install.rb --destdir=%{buildroot} --quick --no-rdoc
60
61 %{__install} -d -m 0755 %{buildroot}%{_sysconfdir}/%{name}/manifests
62 %{__install} -d -m 0755 %{buildroot}%{_initrddir}
63 %{__install} -d -m 0755 %{buildroot}%{_defaultdocdir}/%{name}
64 %{__install} -d -m 0755 %{buildroot}%{_localstatedir}/lib/%{name}
65 %{__install} -d -m 0755 %{buildroot}%{_var}/run/%{name}
66 %{__install} -d -m 0755 %{buildroot}%{_logdir}/%{name}
67
68 #%{__find} %{buildroot}%{ruby_sitelibdir}/%{name} -type f -perm +ugo+x -print0 | xargs -0 -r %{__chmod} a-x
69 #
70 %{__install} -Dp -m 0644 %{ppconfdir}/client.sysconfig %{buildroot}%{_sysconfdir}/sysconfig/puppetd
71 %{__install} -Dp -m 0644 %{ppconfdir}/server.sysconfig %{buildroot}%{_sysconfdir}/sysconfig/puppetmasterd
72 %{__install} -m 755 %{SOURCE100} %{buildroot}%{_initrddir}/puppet
73 %{__install} -m 755 %{SOURCE101} %{buildroot}%{_initrddir}/puppetmaster
74 %{__install} -Dp -m 0644 %{ppconfdir}/fileserver.conf %{buildroot}%{_sysconfdir}/%{name}/fileserver.conf
75 %{__install} -Dp -m 0644 %{ppconfdir}/puppet.conf %{buildroot}%{_sysconfdir}/%{name}/puppet.conf
76 %{__install} -Dp -m 0644 %{ppconfdir}/logrotate %{buildroot}%{_sysconfdir}/logrotate.d/puppet
77 # We need something for these ghosted files, otherwise rpmbuild
78 # will complain loudly. They won't be included in the binary packages
79 touch %{buildroot}%{_sysconfdir}/%{name}/puppetmasterd.conf
80 touch %{buildroot}%{_sysconfdir}/%{name}/puppetca.conf
81 touch %{buildroot}%{_sysconfdir}/%{name}/puppetd.conf
82
83 ## install vim syntax file
84 %{__install} -d -m 755 %{buildroot}%{_datadir}/vim/syntax
85 %{__install} -d -m 755 %{buildroot}%{_datadir}/vim/ftdetect
86
87 %{__install} -m 644 ext/vim/syntax/puppet.vim %{buildroot}%{_datadir}/vim/syntax
88 %{__install} -m 644 ext/vim/ftdetect/puppet.vim %{buildroot}%{_datadir}/vim/ftdetect
89
90 ## install emacs syntax file
91 %{__install} -d -m 0755 %{buildroot}%{_sysconfdir}/emacs/site-start.d
92 %{__install} -d -m 0755 %{buildroot}%{_datadir}/emacs/site-lisp
93 %{__install} -m 0644 ext/emacs/puppet-mode-init.el %{buildroot}%{_sysconfdir}/emacs/site-start.d
94 %{__install} -m 0644 ext/emacs/puppet-mode.el %{buildroot}%{_datadir}/emacs/site-lisp
95
96 ## Install logcheck files
97 %{__install} -d -m 0755 %{buildroot}%{_sysconfdir}/logcheck/ignore.d.{server,workstation}
98 %{__install} -m 0644 ext/logcheck/puppet %{buildroot}%{_sysconfdir}/logcheck/ignore.d.server/
99 %{__install} -m 0644 ext/logcheck/puppet %{buildroot}%{_sysconfdir}/logcheck/ignore.d.workstation/
100
101 %clean
102 rm -rf %{buildroot}
103
104 %pre
105 %_pre_useradd puppet %{_localstatedir}/lib/%{name} /sbin/nologin
106
107 %post
108 %_post_service puppet
109
110 %preun
111 %_preun_service puppet
112
113
114 %post server
115 %_post_service puppetmaster
116
117 %preun server
118 %_preun_service puppetmaster
119
120
121 %files
122 %defattr(-, root, root, 0755)
123 %doc CHANGELOG COPYING LICENSE README examples
124 %dir %{_sysconfdir}/puppet
125 %{_bindir}/puppet
126 %{_bindir}/ralsh
127 %{_bindir}/pi
128 %{_bindir}/filebucket
129 %{_bindir}/puppetdoc
130 %{_sbindir}/puppetd
131 %{ruby_sitelibdir}/puppet.rb
132 %{ruby_sitelibdir}/%{name}
133 %{_initrddir}/puppet
134
135 %{_mandir}/man8/puppet.*
136 %{_mandir}/man8/ralsh.*
137 %{_mandir}/man8/pi.*
138 %{_mandir}/man8/filebucket.*
139 %{_mandir}/man8/puppetdoc.*
140 %{_mandir}/man8/puppetd.*
141 %{_mandir}/man5/puppet.conf.*
142 %config(noreplace) %{_sysconfdir}/sysconfig/puppetd
143 %config(noreplace) %{_sysconfdir}/%{name}/puppet.conf
144 %config(noreplace) %{_sysconfdir}/logrotate.d/puppet
145 %ghost %config(noreplace,missingok) %{_sysconfdir}/%{name}/puppetd.conf
146
147 %{_sysconfdir}/logcheck/ignore.d.workstation/%{name}
148 %{_sysconfdir}/logcheck/ignore.d.server/
149 %{_sysconfdir}/emacs/site-start.d/puppet-mode-init.el
150 %{_datadir}/emacs/site-lisp/puppet-mode.el
151 %{_datadir}/vim/syntax/puppet.vim
152 %{_datadir}/vim/ftdetect/puppet.vim
153
154 # These need to be owned by puppet so the server can
155 # write to them
156 %attr(-, %{name}, %{name}) %{_var}/run/%{name}
157 %attr(-, %{name}, %{name}) %{_logdir}/%{name}
158 %attr(-, %{name}, %{name}) %{_localstatedir}/lib/%{name}
159
160 %files server
161 %defattr(-, root, root, 0755)
162 %{_sbindir}/puppetmasterd
163 %{_sbindir}/puppetca
164 %{_sbindir}/puppetrun
165 %{_sbindir}/puppetqd
166 %{_initrddir}/puppetmaster
167 %config(noreplace) %{_sysconfdir}/%{name}/fileserver.conf
168 %config(noreplace) %{_sysconfdir}/%{name}/auth.conf
169 %dir %{_sysconfdir}/puppet/manifests
170 %config(noreplace) %{_sysconfdir}/sysconfig/puppetmasterd
171 %ghost %config(noreplace,missingok) %{_sysconfdir}/%{name}/puppetca.conf
172 %ghost %config(noreplace,missingok) %{_sysconfdir}/%{name}/puppetmasterd.conf
173
174 %{_mandir}/man8/puppetca.*
175 %{_mandir}/man8/puppetrun.*
176 %{_mandir}/man8/puppetqd.*
177 %{_mandir}/man8/puppetmasterd.*
178
179

  ViewVC Help
Powered by ViewVC 1.1.30