]>
Commit | Line | Data |
---|---|---|
fe259927 ER |
1 | # NOTE: |
2 | # - In post-2.1.4 releases, Linux-HA code is packaged in three different | |
3 | # sub-projects, leading to three separate tarballs for each release: one for | |
4 | # Heartbeat, one for Cluster Glue, and one for the Resource Agents. The three | |
5 | # projects have separate release cycles, a release for one sub-project may or | |
6 | # may not coincide with that of another. | |
7 | # The former Heartbeat CRM is now maintained as the Pacemaker project, also | |
8 | # on its own release cycle. | |
9 | # TODO | |
10 | # - from above note: Cluster Glue, Resource Agents, Heartbeat CRM packages | |
11 | # - resource agent patch: heartbeat-no_ipmilan_test.patch | |
12 | # - merge mibs supackage from 2.1 branch | |
13 | # - cleanup deps, users for 3.x | |
14 | # - fixup deps, inner deps, think of subpackages, ugprade path from 2.1 | |
fd8ad474 | 15 | # - keep /etc/ha.d/resource.d in resource-agents, not here |
288e7c20 | 16 | # |
9b9d4954 | 17 | %include /usr/lib/rpm/macros.perl |
c26deb5d | 18 | %define rel 0.2 |
dba30e8d | 19 | Summary: Heartbeat - subsystem for High-Availability Linux |
38bf5a19 ER |
20 | Summary(es.UTF-8): Subsistema heartbeat para Linux "High-Availability" |
21 | Summary(pl.UTF-8): Podsystem heartbeat dla systemów o podwyższonej niezawodności | |
22 | Summary(pt_BR.UTF-8): Implementa sistema de monitoração (heartbeats) visando Alta Disponibilidade | |
49245a93 | 23 | Name: heartbeat |
d3d857b8 MM |
24 | Version: 3.0.5 |
25 | Release: 0.%{rel} | |
0149c089 | 26 | License: GPL v2+ |
8c1cc2a6 | 27 | Group: Networking/Daemons |
d3d857b8 MM |
28 | Source0: http://hg.linux-ha.org/heartbeat-STABLE_3_0/archive/STABLE-%{version}.tar.bz2 |
29 | # Source0-md5: f8686abde8722c42265c6d84fbe3d3bf | |
80a56156 | 30 | Source1: %{name}.init |
43707702 | 31 | Patch0: %{name}-ac.patch |
9685b9f2 MM |
32 | Patch1: %{name}-drbd-outdate-libs.patch |
33 | Patch2: %{name}-libs.patch | |
253e454e | 34 | URL: http://www.linux-ha.org/Heartbeat |
9b9d4954 | 35 | BuildRequires: OpenIPMI-devel >= 2.0.3 |
be5c114d JB |
36 | BuildRequires: autoconf |
37 | BuildRequires: automake | |
fe259927 | 38 | BuildRequires: cluster-glue-libs-devel |
7013fb11 | 39 | BuildRequires: docbook-dtd44-xml |
40 | BuildRequires: docbook-style-xsl | |
80a56156 | 41 | BuildRequires: gdbm-devel |
42 | BuildRequires: glib2-devel | |
7013fb11 | 43 | BuildRequires: glibc-misc |
e4375587 | 44 | BuildRequires: gnutls-devel |
be5c114d | 45 | BuildRequires: libltdl-devel |
8c7f88c8 | 46 | BuildRequires: libnet-devel >= 1.1.0 |
0eec7f7b | 47 | BuildRequires: libnl-devel |
be5c114d | 48 | BuildRequires: libtool |
80a56156 | 49 | BuildRequires: libuuid-devel |
50 | BuildRequires: libwrap-devel | |
5cabf613 | 51 | BuildRequires: libxml2-devel |
7013fb11 | 52 | BuildRequires: libxslt-progs |
43707702 | 53 | BuildRequires: lm_sensors-devel |
ecdd12e5 | 54 | BuildRequires: ncurses-devel >= 5.4 |
38cf68bf | 55 | BuildRequires: net-snmp-devel >= 5.1 |
e4375587 | 56 | BuildRequires: pam-devel |
80a56156 | 57 | BuildRequires: pkgconfig |
e4375587 | 58 | BuildRequires: python-devel |
9b9d4954 | 59 | BuildRequires: rpm-perlprov |
43707702 | 60 | BuildRequires: rpm-pythonprov |
89b00739 | 61 | BuildRequires: rpmbuild(macros) >= 1.268 |
1a1643fc | 62 | BuildRequires: swig-perl >= 1.3.25 |
45cd814e | 63 | BuildRequires: swig-python >= 1.3.25 |
86e3ff4a | 64 | Requires: %{name}-libs = %{version}-%{release} |
e7ce3187 | 65 | Requires: cluster-glue |
d503e966 | 66 | Requires: psmisc >= 22.5-2 |
89b00739 | 67 | Requires: rc-scripts |
7013fb11 | 68 | Requires: resource-agents |
4eef1bae | 69 | Requires: syslogdaemon |
b52d72b7 | 70 | Requires: which |
cb667f50 JB |
71 | # disappeared |
72 | Obsoletes: perl-heartbeat | |
c8d761f0 | 73 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
8c7f88c8 ER |
74 | |
75 | %define specflags -fgnu89-inline | |
76 | %define filterout_ld -Wl,--as-needed | |
814ecbcd | 77 | |
8060f5e4 | 78 | %description |
49245a93 MP |
79 | heartbeat is a basic heartbeat subsystem for Linux-HA. It will run |
80 | scripts at initialization, and when machines go up or down. This | |
81 | version will also perform IP address takeover using gratuitous ARPs. | |
82 | It works correctly for a 2-node configuration, and is extensible to | |
83 | larger configurations. | |
8060f5e4 | 84 | |
6585451e | 85 | It implements the following kinds of heartbeats: |
49245a93 MP |
86 | - Bidirectional Serial Rings ("raw" serial ports) |
87 | ||
48caa1d6 JR |
88 | %description -l es.UTF-8 |
89 | heartbeat es un sistema básico para Linux-HA. La función de este | |
90 | software es ejecutar scripts en la inicialización y al apagar las | |
91 | máquinas que lo utilizan. | |
92 | ||
93 | %description -l pl.UTF-8 | |
94 | heartbeat jest podstawowym podsystemem dla systemów o podwyższonej | |
95 | dostępności budowanych w oparciu o Linuksa. Zajmuje się uruchamianiem | |
96 | skryptów podczas startu i zamykania systemu. Ta wersja pakietu pozwala | |
97 | na przejmowanie adresów IP. Oprogramowanie działa poprawnie dla | |
98 | konfiguracji składającej się z 2 hostów, można je również stosować do | |
49245a93 | 99 | bardziej skomplikowanych konfiguracji. |
814ecbcd | 100 | |
d709f63f JK |
101 | %package libs |
102 | Summary: Heartbeat libraries | |
103 | Summary(pl.UTF-8): Biblioteki heartbeat | |
104 | Group: Libraries | |
86e3ff4a | 105 | Conflicts: heartbeat < 2.99.2-0.1 |
d709f63f JK |
106 | |
107 | %description libs | |
108 | Heartbeat libraries. | |
109 | ||
110 | %description libs -l pl.UTF-8 | |
111 | Biblioteki heartbeat. | |
112 | ||
80a56156 | 113 | %package devel |
2dbb1cca | 114 | Summary: Heartbeat developement header files and libraries |
38bf5a19 | 115 | Summary(pl.UTF-8): Pliki nagłówkowe i biblioteki heartbeat |
ae97f5d3 | 116 | Group: Development/Libraries |
d709f63f | 117 | Requires: %{name}-libs = %{version}-%{release} |
80a56156 | 118 | |
119 | %description devel | |
2dbb1cca | 120 | Heartbeat developement header files and libraries. |
ae97f5d3 | 121 | |
48caa1d6 JR |
122 | %description devel -l pl.UTF-8 |
123 | Pliki nagłówkowe i biblioteki heartbeat. | |
80a56156 | 124 | |
125 | %package static | |
2dbb1cca | 126 | Summary: Heartbeat static libraries |
38bf5a19 | 127 | Summary(pl.UTF-8): Biblioteki statyczne heartbeat |
ae97f5d3 JB |
128 | Group: Development/Libraries |
129 | Requires: %{name}-devel = %{version}-%{release} | |
130 | ||
80a56156 | 131 | %description static |
2dbb1cca | 132 | Heartbeat static libraries. |
80a56156 | 133 | |
48caa1d6 | 134 | %description static -l pl.UTF-8 |
2dbb1cca | 135 | Biblioteki statyczne heartbeat. |
dba30e8d | 136 | |
9b9d4954 | 137 | %package cts |
138 | Summary: Cluster Test Suite | |
38bf5a19 | 139 | Summary(pl.UTF-8): Zestaw testów klastra |
9b9d4954 | 140 | Group: Applications/System |
141 | Requires: %{name} = %{version}-%{release} | |
142 | ||
143 | %description cts | |
144 | Cluster Test Suite for heartbeat. | |
145 | ||
48caa1d6 JR |
146 | %description cts -l pl.UTF-8 |
147 | Zestaw testów klastra opartego o heartbeat. | |
9b9d4954 | 148 | |
6585451e | 149 | %prep |
c26deb5d | 150 | %setup -qn Heartbeat-3-0-STABLE-%{version} |
38cf68bf | 151 | %patch0 -p1 |
c26deb5d | 152 | #%patch1 -p1 |
9685b9f2 | 153 | %patch2 -p1 |
be5c114d JB |
154 | rm -rf libltdl |
155 | ||
6585451e | 156 | %build |
be5c114d JB |
157 | %{__libtoolize} --ltdl |
158 | %{__aclocal} | |
159 | %{__autoconf} | |
4a602b4b | 160 | %{__autoheader} |
be5c114d JB |
161 | %{__automake} |
162 | %configure \ | |
80a56156 | 163 | --with-initdir=/etc/rc.d/init.d \ |
fe259927 | 164 | --docdir=%{_docdir}/%{name}-%{version} \ |
253e454e | 165 | --enable-fatal-warnings=no \ |
e4375587 | 166 | --enable-mgmt \ |
335d776e | 167 | --enable-quorumd \ |
43707702 | 168 | --enable-snmp-subagent |
be5c114d | 169 | |
49245a93 | 170 | %{__make} |
dba30e8d | 171 | |
814ecbcd | 172 | %install |
49245a93 | 173 | rm -rf $RPM_BUILD_ROOT |
b38331b3 | 174 | %{__make} -j1 install \ |
be5c114d | 175 | DESTDIR=$RPM_BUILD_ROOT |
78882913 | 176 | |
fe259927 | 177 | install -d $RPM_BUILD_ROOT/var/run/heartbeat |
814ecbcd | 178 | |
84d8fd23 | 179 | # plugins are lt_dlopened, but using *.so names, so *.la are not used |
fe259927 | 180 | rm -f $RPM_BUILD_ROOT%{_libdir}/heartbeat/plugins/*/*.{la,a} |
814ecbcd | 181 | |
80a56156 | 182 | rm -f $RPM_BUILD_ROOT/etc/rc.d/init.d/heartbeat |
fe259927 | 183 | install -p %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/heartbeat |
80a56156 | 184 | |
185 | > $RPM_BUILD_ROOT/etc/ha.d/haresources | |
186 | echo -e "auth 2\n2 crc" > $RPM_BUILD_ROOT/etc/ha.d/authkeys | |
fe259927 | 187 | cp -a doc/ha.cf $RPM_BUILD_ROOT/etc/ha.d |
80a56156 | 188 | |
fe259927 ER |
189 | for tool in hb_addnode hb_delnode hb_standby hb_takeover; do |
190 | tool=%{_datadir}/%{name}/$tool | |
191 | [ -x $RPM_BUILD_ROOT$tool ] || exit 1 | |
192 | ln -s $tool $RPM_BUILD_ROOT%{_bindir} | |
288e7c20 JK |
193 | done |
194 | ||
fe259927 ER |
195 | rm $RPM_BUILD_ROOT%{_datadir}/heartbeat/cts/README |
196 | ||
288e7c20 JK |
197 | sed -i -e's, /%{_lib}/libpam.la, /usr/%{_lib}/libpam.la,g' $RPM_BUILD_ROOT%{_libdir}/*.la |
198 | ||
6585451e | 199 | %clean |
6585451e | 200 | rm -rf $RPM_BUILD_ROOT |
6585451e | 201 | |
dba30e8d JB |
202 | %post |
203 | /sbin/chkconfig --add heartbeat | |
fe259927 | 204 | %service heartbeat restart |
6585451e | 205 | |
6585451e | 206 | %preun |
dba30e8d | 207 | if [ "$1" = "0" ]; then |
fe259927 | 208 | %service -q heartbeat stop |
dba30e8d | 209 | /sbin/chkconfig --del heartbeat |
6585451e | 210 | fi |
dba30e8d | 211 | |
fe259927 ER |
212 | %post libs -p /sbin/ldconfig |
213 | %postun libs -p /sbin/ldconfig | |
ae97f5d3 | 214 | |
335d776e | 215 | %files |
78882913 | 216 | %defattr(644,root,root,755) |
fe259927 | 217 | %doc doc/{*.html,AUTHORS,apphbd.cf,authkeys,ha.cf,haresources,startstop} |
84d8fd23 | 218 | %dir %{_libdir}/heartbeat |
84d8fd23 JB |
219 | %dir %{_libdir}/heartbeat/plugins |
220 | %dir %{_libdir}/heartbeat/plugins/* | |
221 | %attr(755,root,root) %{_libdir}/heartbeat/plugins/*/*.so | |
931cb2c1 JB |
222 | %attr(755,root,root) %{_libdir}/heartbeat/[!cp]* |
223 | %attr(755,root,root) %{_libdir}/heartbeat/c[!t]* | |
288e7c20 JK |
224 | %dir %{_datadir}/heartbeat |
225 | %attr(755,root,root) %{_datadir}/heartbeat/BasicSanityCheck | |
226 | %attr(755,root,root) %{_datadir}/heartbeat/ResourceManager | |
288e7c20 JK |
227 | %attr(755,root,root) %{_datadir}/heartbeat/TestHeartbeatComm |
228 | %attr(755,root,root) %{_datadir}/heartbeat/ha_* | |
229 | %attr(755,root,root) %{_datadir}/heartbeat/hb_* | |
288e7c20 JK |
230 | %attr(755,root,root) %{_datadir}/heartbeat/mach_down |
231 | %attr(755,root,root) %{_datadir}/heartbeat/req_resource | |
84d8fd23 JB |
232 | %attr(755,root,root) %{_sysconfdir}/ha.d/rc.d |
233 | %attr(755,root,root) %{_sysconfdir}/ha.d/resource.d | |
234 | %{_sysconfdir}/ha.d/README.config | |
235 | %attr(755,root,root) %{_sysconfdir}/ha.d/harc | |
80a56156 | 236 | %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/heartbeat |
84d8fd23 | 237 | %attr(754,root,root) /etc/rc.d/init.d/heartbeat |
9b9d4954 | 238 | %dir /var/run/heartbeat |
288e7c20 | 239 | %attr(750,hacluster,haclient) %dir /var/run/heartbeat/ccm |
288e7c20 | 240 | %dir /var/lib/heartbeat |
80a56156 | 241 | %{_mandir}/man1/*.1* |
2dbb1cca | 242 | %{_mandir}/man8/[a-h]*.8* |
fe259927 ER |
243 | %{_mandir}/man5/authkeys.5* |
244 | %{_mandir}/man5/ha.cf.5* | |
d2309f7c JB |
245 | %attr(755,root,root) %{_bindir}/cl_respawn |
246 | %attr(2755,root,haclient) %{_bindir}/cl_status | |
288e7c20 JK |
247 | %attr(755,root,root) %{_bindir}/hb_addnode |
248 | %attr(755,root,root) %{_bindir}/hb_delnode | |
249 | %attr(755,root,root) %{_bindir}/hb_standby | |
250 | %attr(755,root,root) %{_bindir}/hb_takeover | |
fe259927 ER |
251 | %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/ha.d/haresources |
252 | %attr(600,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/ha.d/authkeys | |
253 | %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/ha.d/ha.cf | |
80a56156 | 254 | |
d709f63f JK |
255 | %files libs |
256 | %defattr(644,root,root,755) | |
fe259927 ER |
257 | %attr(755,root,root) %{_libdir}/libapphb.so.*.*.* |
258 | %attr(755,root,root) %ghost %{_libdir}/libapphb.so.2 | |
259 | %attr(755,root,root) %{_libdir}/libccmclient.so.*.*.* | |
260 | %attr(755,root,root) %ghost %{_libdir}/libccmclient.so.1 | |
261 | %attr(755,root,root) %{_libdir}/libclm.so.*.*.* | |
262 | %attr(755,root,root) %ghost %{_libdir}/libclm.so.1 | |
263 | %attr(755,root,root) %{_libdir}/libhbclient.so.*.*.* | |
264 | %attr(755,root,root) %ghost %{_libdir}/libhbclient.so.1 | |
d709f63f | 265 | |
80a56156 | 266 | %files devel |
267 | %defattr(644,root,root,755) | |
fe259927 ER |
268 | %{_includedir}/heartbeat |
269 | %{_includedir}/ocf | |
270 | %{_includedir}/saf | |
271 | %attr(755,root,root) %{_libdir}/libapphb.so | |
272 | %attr(755,root,root) %{_libdir}/libccmclient.so | |
273 | %attr(755,root,root) %{_libdir}/libclm.so | |
274 | %attr(755,root,root) %{_libdir}/libhbclient.so | |
275 | %{_libdir}/libapphb.la | |
276 | %{_libdir}/libccmclient.la | |
277 | %{_libdir}/libclm.la | |
278 | %{_libdir}/libhbclient.la | |
931cb2c1 | 279 | |
38cf68bf JB |
280 | %files static |
281 | %defattr(644,root,root,755) | |
fe259927 ER |
282 | %{_libdir}/libapphb.a |
283 | %{_libdir}/libccmclient.a | |
284 | %{_libdir}/libclm.a | |
285 | %{_libdir}/libhbclient.a | |
38cf68bf | 286 | |
9b9d4954 | 287 | %files cts |
288 | %defattr(644,root,root,755) | |
289 | %doc cts/README | |
288e7c20 JK |
290 | %dir %{_datadir}/heartbeat/cts |
291 | %attr(755,root,root) %{_datadir}/heartbeat/cts/*.py | |
292 | %{_datadir}/heartbeat/cts/*.py[co] | |
293 | %attr(755,root,root) %{_datadir}/heartbeat/cts/*.sh | |
294 | %attr(755,root,root) %{_datadir}/heartbeat/cts/*Dummy |