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