]> git.pld-linux.org Git - packages/pacemaker.git/blob - pacemaker.spec
Merge branch 'pacemaker-1_1'
[packages/pacemaker.git] / pacemaker.spec
1 #
2 %bcond_without  corosync        # build with corosync stack
3 %bcond_without  heartbeat       # build without heartbeat stack
4 Summary:        The scalable High-Availability cluster resource manager
5 Name:           pacemaker
6 Version:        1.1.8
7 Release:        0.1
8 License:        GPL v2+; LGPL v2.1+
9 Group:          Applications/System
10 Source0:        https://github.com/ClusterLabs/pacemaker/tarball/Pacemaker-1.1.8/Pacemaker-%{version}.tar.gz
11 # Source0-md5:  1bbd5b2282827bc1cf4e19620d606dc7
12 Source1:        %{name}.tmpfiles
13 Source2:        %{name}.init
14 Source3:        %{name}.service
15 Patch0:         %{name}-ncurses.patch
16 Patch1:         %{name}-libs.patch
17 URL:            http://clusterlabs.org/wiki/Main_Page
18 BuildRequires:  asciidoc
19 BuildRequires:  autoconf
20 BuildRequires:  automake
21 BuildRequires:  bzip2-devel
22 %{?with_corosync:BuildRequires: corosync-devel >= 2.0}
23 BuildRequires:  e2fsprogs-devel
24 BuildRequires:  glib2-devel
25 BuildRequires:  gnutls-devel
26 %{?with_heartbeat:BuildRequires: heartbeat-devel >= 2.99}
27 BuildRequires:  libesmtp-devel
28 BuildRequires:  libqb
29 BuildRequires:  libtool
30 BuildRequires:  libxml2-devel
31 BuildRequires:  libxslt-devel
32 BuildRequires:  ncurses-devel
33 BuildRequires:  net-snmp-devel
34 BuildRequires:  pam-devel
35 BuildRequires:  pkgconfig
36 BuildRequires:  python-devel
37 BuildRequires:  rpm-pythonprov
38 BuildRequires:  swig
39 BuildRequires:  pciutils-devel
40 BuildRequires:  cluster-glue-libs-devel
41 Requires:       cluster-glue
42 Requires:       resource-agents
43 Requires:       %{name}-libs = %{version}-%{release}
44 Provides:       group(haclient)
45 Provides:       user(hacluster)
46 Suggests:       pacemaker-shell
47 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
48
49 # Unresolved symbol in libpe_status.so.3.0.0: get_object_root
50 # not handled by -libs patch, as it is a circular dependency
51 %define skip_post_check_so libpe_status.so.*
52
53 %description
54 Pacemaker makes use of your cluster infrastructure (either 
55 Corosync/OpenAIS or Heartbeat) to stop, start and monitor the health
56 of the services (aka.  resources) you want the cluster to provide.
57
58 It can do this for clusters of practically any size and comes with a
59 powerful dependency model that allows the administrator to accurately
60 express the relationships (both ordering and location) between the
61 cluster resources.
62
63 Pacemaker was formely a part of Heartbeat.
64
65 %package libs
66 Summary:        Pacemaker libraries
67 Group:          Libraries
68
69 %description libs
70 Shared libraries for Pacemaker.
71
72 %package heartbeat
73 Summary:        Pacemaker for Heartbeat cluster
74 Group:          Applications/System
75 Requires:       heartbeat
76 Obsoletes:      %{name} < 1.1
77 Conflicts:      heartbeat < 2.99.0
78 Requires:       %{name} = %{version}-%{release}
79
80 %description heartbeat
81 This package allows using Pacemaker on a Heartbeat cluster.
82
83 %package corosync
84 Summary:        Pacemaker for Corosync cluster
85 Group:          Applications/System
86 Requires:       corosync
87 Requires:       %{name} = %{version}-%{release}
88
89 %description corosync
90 This package allows using Pacemaker on a Corosync cluster.
91
92 %package devel
93 Summary:        Header files for Pacemaker libraries
94 Summary(pl.UTF-8):      Pliki nagłówkowe bibliotek Pacemaker
95 Group:          Development/Libraries
96 Requires:       %{name}-libs = %{version}-%{release}
97
98 %description devel
99 Header files for Pacemaker libraries.
100
101 %package static
102 Summary:        Static Pacemaker libraries
103 Summary(pl.UTF-8):      Statyczne biblioteki Pacemaker
104 Group:          Development/Libraries
105 Requires:       %{name}-devel = %{version}-%{release}
106
107 %description static
108 Static Pacemaker libraries.
109
110 %prep
111 %setup -qn ClusterLabs-pacemaker-1f8858c
112 %patch0 -p1
113 %patch1 -p1
114
115 %build
116 %{__libtoolize}
117 %{__aclocal} -I m4
118 %{__autoconf}
119 %{__autoheader}
120 %{__automake}
121
122 %configure \
123         CPPFLAGS="%{rpmcppflags} %{?with_heartbeat:-I/usr/include/heartbeat}" \
124         --with-heartbeat%{!?with_heartbeat:=no} \
125         --with-corosync%{!?with_corosync:=no} \
126         --with-snmp \
127         --with-esmtp \
128         --with-initdir=/etc/rc.d/init.d \
129         --disable-fatal-warnings
130
131 %{__make}
132
133 %install
134 rm -rf $RPM_BUILD_ROOT
135 install -d $RPM_BUILD_ROOT{/usr/lib/tmpfiles.d,/etc/rc.d/init.d,%{systemdunitdir}}
136
137 %{__make} install \
138         DESTDIR=$RPM_BUILD_ROOT
139
140 rm -r $RPM_BUILD_ROOT%{_docdir}/pacemaker
141
142 install %{SOURCE1} $RPM_BUILD_ROOT/usr/lib/tmpfiles.d/%{name}.conf
143 install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}
144 install %{SOURCE3} $RPM_BUILD_ROOT%{systemdunitdir}/%{name}.service
145
146 %clean
147 rm -rf $RPM_BUILD_ROOT
148
149 %pre
150 %groupadd -g 60 haclient
151 %useradd -u 17 -d /var/lib/heartbeat/cores/hacluster -c "Heartbeat User" -g haclient hacluster
152
153 %post corosync
154 /sbin/chkconfig --add %{name}
155 %service %{name} restart "%{name} daemon"
156
157 %systemd_post %{name}.service
158
159 %preun
160 if [ "$1" = "0" ]; then
161         %service %{name} stop
162         /sbin/chkconfig --del %{name}
163 fi
164 %systemd_preun %{name}.service
165
166 %postun corosync
167 %systemd_reload
168
169 %post   libs -p /sbin/ldconfig
170 %postun libs -p /sbin/ldconfig
171
172 %files
173 %defattr(644,root,root,755)
174 %doc doc/README* doc/*.html doc/*.txt AUTHORS COPYING*
175 %{_datadir}/pacemaker
176 %dir %{_libdir}/%{name}
177 %attr(755,root,root) %{_libdir}/%{name}/attrd
178 %attr(755,root,root) %{_libdir}/%{name}/cib
179 %attr(755,root,root) %{_libdir}/%{name}/cibmon
180 %attr(755,root,root) %{_libdir}/%{name}/crmd
181 %attr(755,root,root) %{_libdir}/%{name}/lrmd
182 %attr(755,root,root) %{_libdir}/%{name}/lrmd_test
183 %attr(755,root,root) %{_libdir}/%{name}/pengine
184 %attr(755,root,root) %{_libdir}/%{name}/stonith-test
185 %attr(755,root,root) %{_libdir}/%{name}/stonithd
186 %attr(755,root,root) %{_bindir}/ccs2cib
187 %attr(755,root,root) %{_bindir}/ccs_flatten
188 %attr(755,root,root) %{_bindir}/disable_rgmanager
189 %attr(755,root,root) %{_sbindir}/attrd_updater
190 %attr(755,root,root) %{_sbindir}/cibadmin
191 %attr(755,root,root) %{_sbindir}/crm_attribute
192 %attr(755,root,root) %{_sbindir}/crm_diff
193 %attr(755,root,root) %{_sbindir}/crm_error
194 %attr(755,root,root) %{_sbindir}/crm_failcount
195 %attr(755,root,root) %{_sbindir}/crm_master
196 %attr(755,root,root) %{_sbindir}/crm_mon
197 %attr(755,root,root) %{_sbindir}/crm_node
198 %attr(755,root,root) %{_sbindir}/crm_report
199 %attr(755,root,root) %{_sbindir}/crm_resource
200 %attr(755,root,root) %{_sbindir}/crm_simulate
201 %attr(755,root,root) %{_sbindir}/crm_shadow
202 %attr(755,root,root) %{_sbindir}/crm_standby
203 %attr(755,root,root) %{_sbindir}/crm_ticket
204 %attr(755,root,root) %{_sbindir}/crm_uuid
205 %attr(755,root,root) %{_sbindir}/crm_verify
206 %attr(755,root,root) %{_sbindir}/crmadmin
207 %attr(755,root,root) %{_sbindir}/fence_legacy
208 %attr(755,root,root) %{_sbindir}/fence_pcmk
209 %attr(755,root,root) %{_sbindir}/iso8601
210 %attr(755,root,root) %{_sbindir}/stonith_admin
211 %{py_sitedir}/cts
212 %{_datadir}/snmp/mibs
213 %{_mandir}/man8/*.8*
214 %{_mandir}/man7/*.7*
215 %dir %attr(750,hacluster,haclient) %{_var}/run/crm
216 %dir %{_prefix}/lib/ocf/resource.d/pacemaker
217 %attr(755,root,root) %{_prefix}/lib/ocf/resource.d/pacemaker/ClusterMon
218 %attr(755,root,root) %{_prefix}/lib/ocf/resource.d/pacemaker/Dummy
219 %attr(755,root,root) %{_prefix}/lib/ocf/resource.d/pacemaker/HealthCPU
220 %attr(755,root,root) %{_prefix}/lib/ocf/resource.d/pacemaker/HealthSMART
221 %attr(755,root,root) %{_prefix}/lib/ocf/resource.d/pacemaker/Stateful
222 %attr(755,root,root) %{_prefix}/lib/ocf/resource.d/pacemaker/SysInfo
223 %attr(755,root,root) %{_prefix}/lib/ocf/resource.d/pacemaker/SystemHealth
224 %attr(755,root,root) %{_prefix}/lib/ocf/resource.d/pacemaker/controld
225 %attr(755,root,root) %{_prefix}/lib/ocf/resource.d/pacemaker/o2cb
226 %attr(755,root,root) %{_prefix}/lib/ocf/resource.d/pacemaker/ping
227 %attr(755,root,root) %{_prefix}/lib/ocf/resource.d/pacemaker/pingd
228 /usr/lib/tmpfiles.d/%{name}.conf
229 %dir /var/lib/%{name}
230 %dir %attr(750,hacluster,haclient) /var/lib/%{name}/blackbox
231 %dir %attr(750,hacluster,haclient) /var/lib/%{name}/cib
232 %dir %attr(750,hacluster,haclient) /var/lib/%{name}/pengine
233
234 %files libs
235 %defattr(644,root,root,755)
236 %attr(755,root,root) %{_libdir}/lib*.so.*.*
237 %attr(755,root,root) %{_libdir}/lib*.so.[0-9]
238
239 %if %{with heartbeat}
240 %files heartbeat
241 %defattr(644,root,root,755)
242 %attr(755,root,root) %{_libdir}/heartbeat/attrd
243 %attr(755,root,root) %{_libdir}/heartbeat/cib
244 %attr(755,root,root) %{_libdir}/heartbeat/crmd
245 %attr(755,root,root) %{_libdir}/heartbeat/pengine
246 %attr(755,root,root) %{_libdir}/heartbeat/stonithd
247 %endif
248
249 %if %{with corosync}
250 %files corosync
251 %defattr(644,root,root,755)
252 %attr(755,root,root) %{_sbindir}/pacemakerd
253 %attr(755,root,root) /etc/rc.d/init.d/%{name}
254 %{systemdunitdir}/%{name}.service
255 %endif
256
257 %files devel
258 %defattr(644,root,root,755)
259 %{_includedir}/pacemaker
260 %{_libdir}/*.so
261 %{_libdir}/*.la
262 %{_pkgconfigdir}/*.pc
263
264 %files static
265 %defattr(644,root,root,755)
266 %{_libdir}/*.a
This page took 0.071433 seconds and 4 git commands to generate.