/[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 1759826 - (show annotations) (download)
Mon Nov 29 10:01:23 2021 UTC (2 years ago) by neoclust
File size: 5355 byte(s)
New version 7.12.1
1 %define ppconfdir conf/redhat
2
3 Name: puppet
4 Version: 7.12.1
5 Release: %mkrel 1
6 Summary: System Automation and Configuration Management Software
7 License: Apache Software License
8 Group: Monitoring
9 URL: http://www.puppetlabs.com/
10 Source0: http://downloads.puppetlabs.com/%{name}/%{name}-%{version}.tar.gz
11 Source100: puppet.service
12 Source101: puppetmaster.service
13 Source102: %{name}-tmpfiles.conf
14 #Patch7: puppet-4.2.1-replace-opt-with-usr-lib.patch
15
16 BuildArch: noarch
17 BuildRequires: ruby
18 BuildRequires: ruby-hiera
19 BuildRequires: facter
20 Requires: ruby
21 Requires: ruby-semantic_puppet
22 Requires: facter
23 Requires(post): systemd >= %{systemd_required_version}
24 Requires(pre): rpm-helper
25 Requires(post): rpm-helper
26 Requires(preun):rpm-helper
27 Obsoletes: puppet3
28 Obsoletes: ruby-hiera-puppet <= 1.0.0
29 Obsoletes: ruby-hiera-puppet-doc <= 1.0.0
30
31 %description
32 Puppet lets you centrally manage every important aspect of your system using a
33 cross-platform specification language that manages all the separate elements
34 normally aggregated in different files, like users, cron jobs, and hosts,
35 along with obviously discrete elements like packages, services, and files.
36
37 This package provide the puppet client daemon.
38
39 %package server
40 Group: Monitoring
41 Summary: Server for the puppet system management tool
42 Requires: %{name} = %{version}
43 Requires(post): rpm-helper
44 Requires(preun):rpm-helper
45 Obsoletes: puppet3-server
46
47 %description server
48 Provides the central puppet server daemon (puppetmaster) which provides
49 manifests to clients.
50 The server can also function as a certificate authority and file server.
51
52 %prep
53 %setup -q
54 %autopatch -p1
55
56 %build
57
58 %install
59 ruby install.rb \
60 --destdir=%{buildroot} \
61 --sitelibdir=%{ruby_vendorlibdir} \
62 --localedir=%{_datadir}/%{name}/locale \
63 --quick \
64 --no-rdoc
65
66 install -d -m 0755 %{buildroot}%{_sysconfdir}/puppetlabs/code/environments/production/manifests
67 install -d -m 0755 %{buildroot}%{_sysconfdir}/puppetlabs/code/environments/production/modules
68 install -d -m 0755 %{buildroot}%{_sysconfdir}/puppetlabs/puppet
69 install -d -m 0755 %{buildroot}%{_sysconfdir}/puppetlabs/puppetserver
70 install -d -m 0755 %{buildroot}%{_datadir}/puppet/modules
71 install -d -m 0755 %{buildroot}%{_localstatedir}/lib/puppetlabs/puppet/cache
72 install -d -m 0755 %{buildroot}%{_localstatedir}/log/puppetlabs/puppet
73
74 # puppet agent
75 install -D -m 644 %{SOURCE100} %{buildroot}%{_unitdir}/puppet.service
76 # puppet master
77 install -D -m 644 %{SOURCE101} %{buildroot}%{_unitdir}/puppetmaster.service
78
79 install -D -m 644 conf/puppet.conf \
80 %{buildroot}%{_sysconfdir}/puppetlabs/puppet/puppet.conf
81 install -D -m 644 %{SOURCE102} %{buildroot}%{_tmpfilesdir}/puppet.conf
82
83 # logrotate
84 install -d %{buildroot}%{_sysconfdir}/logrotate.d
85 cat > %{buildroot}%{_sysconfdir}/logrotate.d/puppetagent <<EOF
86 /var/log/puppet/*log {
87 create 0644 puppet puppet
88 sharedscripts
89 postrotate
90 /bin/systemctl reload puppet.service > /dev/null 2>&1 || true
91 endscript
92 }
93 EOF
94 cat > %{buildroot}%{_sysconfdir}/logrotate.d/puppetmaster <<EOF
95 /var/log/puppet/*log {
96 create 0644 puppet puppet
97 sharedscripts
98 postrotate
99 /bin/systemctl reload puppetmaster.service > /dev/null 2>&1 || true
100 endscript
101 }
102 EOF
103
104 install -d %{buildroot}%{_datadir}/puppetlabs
105 cp -a ext/ %{buildroot}%{_datadir}/puppetlabs
106 # remove misc packaging artifacts in source not applicable to rpm
107 rm -rf %{buildroot}%{_datadir}/puppetlabs/ext/{gentoo,freebsd,solaris,suse,windows,osx,ips,debian}
108 rm -f %{buildroot}%{_datadir}/puppetlabs/ext/{build_defaults.yaml,project_data.yaml}
109 rm -f %{buildroot}%{_datadir}/puppetlabs/ext/redhat/*.init
110
111 %pre
112 %_pre_useradd puppet %{_localstatedir}/lib/%{name} /sbin/nologin
113
114 %post
115 %_tmpfilescreate %{name}
116 %_post_service puppet
117
118 %preun
119 %_preun_service puppet
120
121 %post server
122 %_post_service puppetmaster
123
124 %preun server
125 %_preun_service puppetmaster
126
127 %files
128 %doc LICENSE README.md examples
129 %dir %{_sysconfdir}/puppetlabs
130 %dir %{_sysconfdir}/puppetlabs/code
131 %dir %{_sysconfdir}/puppetlabs/code/environments/
132 %dir %{_sysconfdir}/puppetlabs/code/environments/production
133 %dir %{_sysconfdir}/puppetlabs/code/environments/production/manifests
134 %dir %{_sysconfdir}/puppetlabs/code/environments/production/modules
135 %dir %{_sysconfdir}/puppetlabs/puppet
136 %config(noreplace) %{_sysconfdir}/puppetlabs/puppet/puppet.conf
137 %config(noreplace) %{_sysconfdir}/puppetlabs/puppet/hiera.yaml
138 %{_tmpfilesdir}/puppet.conf
139 %{_unitdir}/puppet.service
140 %{_bindir}/puppet
141 %{ruby_vendorlibdir}/hiera
142 %{ruby_vendorlibdir}/hiera_puppet.rb
143 %config(noreplace) %{_sysconfdir}/logrotate.d/puppetagent
144 %{ruby_vendorlibdir}/puppet
145 %{ruby_vendorlibdir}/puppet.rb
146 %{ruby_vendorlibdir}/puppet_x.rb
147 %{ruby_vendorlibdir}/puppet_pal.rb
148 %{_datadir}/puppetlabs
149 %attr(-,puppet,puppet) %{_localstatedir}/log/puppetlabs
150 %attr(-,puppet,puppet) %{_localstatedir}/lib/puppetlabs
151 %{_mandir}/man5/puppet.conf.5.*
152 %{_mandir}/man8/puppet*.8.*
153 %dir %{_datadir}/%{name}/
154 %{_datadir}/%{name}/*
155 %dir %{_datadir}/%{name}/locale
156 %dir %{_datadir}/%{name}/locale/*
157 %{_datadir}/%{name}/locale/*/*
158
159 %files server
160 %dir %{_sysconfdir}/puppetlabs/puppetserver
161 %config(noreplace) %{_sysconfdir}/logrotate.d/puppetmaster
162 %{_unitdir}/puppetmaster.service

  ViewVC Help
Powered by ViewVC 1.1.28