]>
Commit | Line | Data |
---|---|---|
cfcff11b | 1 | # TODO: Find pidfiles killproc --pidfile ${PIDFILE} -TERM |
abcc847c | 2 | # instead of kill -TERM ${PID} |
cfcff11b MK |
3 | # TODO: Check transport-ibverbs package and ibverbs bcond |
4 | # TODO: Add passing options from /etc/sysconfig/glusterfsd | |
5 | # to glusterfsd | |
4d40ce33 JB |
6 | # |
7 | # Conditional build: | |
4163e7ad | 8 | %bcond_without ibverbs # ib-verbs transport |
65d9dbc4 | 9 | %bcond_without systemtap # systemtap/dtrace support |
7f75179c | 10 | # |
d6a0cdd1 | 11 | Summary: Clustered File Storage that can scale to peta bytes |
dae7af53 | 12 | Summary(pl.UTF-8): Klastrowy system przechowywania plików skalujący się do petabajtów |
d6a0cdd1 | 13 | Name: glusterfs |
65d9dbc4 | 14 | Version: 3.4.0 |
7b2c6d20 | 15 | Release: 1 |
4d40ce33 | 16 | License: LGPL v3+ or GPL v2 (libraries), GPL v3+ (programs) |
dae7af53 | 17 | Group: Applications/System |
4d40ce33 | 18 | Source0: http://download.gluster.org/pub/gluster/glusterfs/LATEST/glusterfs-%{version}.tar.gz |
65d9dbc4 | 19 | # Source0-md5: 86d9aff765b6ac49f8b19e6ffad6adf9 |
824dab89 | 20 | Source1: glusterfsd.init |
65d9dbc4 JB |
21 | Patch0: %{name}-link.patch |
22 | Patch1: %{name}-noquiet.patch | |
23 | Patch2: %{name}-norpath.patch | |
6c386b20 | 24 | URL: http://www.gluster.org/ |
4163e7ad JB |
25 | BuildRequires: autoconf >= 2.50 |
26 | BuildRequires: automake | |
d6a0cdd1 | 27 | BuildRequires: bison |
65d9dbc4 | 28 | BuildRequires: device-mapper-devel >= 2.02.79 |
d6a0cdd1 | 29 | BuildRequires: flex |
4d40ce33 | 30 | BuildRequires: libaio-devel |
7f75179c JB |
31 | BuildRequires: libfuse-devel >= 2.6 |
32 | %{?with_ibverbs:BuildRequires: libibverbs-devel >= 1.0.4} | |
abcc847c | 33 | BuildRequires: libtool |
4d40ce33 JB |
34 | BuildRequires: libxml2-devel >= 1:2.6.19 |
35 | BuildRequires: openssl-devel | |
36 | BuildRequires: pkgconfig | |
37 | BuildRequires: python >= 1:2.4 | |
abcc847c | 38 | BuildRequires: readline-devel |
39 | BuildRequires: rpm-pythonprov | |
d6a0cdd1 | 40 | BuildRequires: rpmbuild(macros) >= 1.228 |
65d9dbc4 | 41 | %{?with_systemtap:BuildRequires: systemtap-sdt-devel} |
d6a0cdd1 | 42 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) |
43 | ||
44 | %description | |
45 | GlusterFS is a clustered file-system capable of scaling to several | |
46 | peta-bytes. It aggregates various storage bricks over Infiniband RDMA | |
47 | or TCP/IP interconnect into one large parallel network file system. | |
48 | GlusterFS is one of the most sophisticated file system in terms of | |
49 | features and extensibility. It borrows a powerful concept called | |
50 | Translators from GNU Hurd kernel. Much of the code in GlusterFS is in | |
51 | userspace and easily manageable. | |
52 | ||
dae7af53 JB |
53 | %description -l pl.UTF-8 |
54 | GlusterFS to klastrowy system plików skalujący się do petabajtów. | |
abcc847c | 55 | Scala różne kawałki miejsca po łączach Infiniband RDMA lub TCP/IP w |
56 | jeden duży, równoległy sieciowy system plików. GlusterFS to jeden z | |
57 | najbardziej wyszukanych systemów plików jeśli chodzi o możliwości i | |
58 | rozszerzalność. Zapożycza potężną ideę o nazwie Translators z jądra | |
59 | GNU Hurd. Duża część kodu GlusterFS działa w przestrzeni użytkownika i | |
60 | jest łatwo zarządzalna. | |
11c9e8ee MK |
61 | |
62 | %package common | |
65d9dbc4 JB |
63 | Summary: GlusterFS common files including Translators |
64 | Summary(pl.UTF-8): Wspólne pliki GlusterFS-a, w tym translatory | |
5f2d10ee | 65 | Group: Libraries |
4d40ce33 | 66 | Requires: libxml2 >= 1:2.6.19 |
11c9e8ee MK |
67 | |
68 | %description common | |
69 | GlusterFS is a clustered file-system capable of scaling to several | |
70 | peta-bytes. It aggregates various storage bricks over Infiniband RDMA | |
71 | or TCP/IP interconnect into one large parallel network file system. | |
72 | GlusterFS is one of the most sophisticated file system in terms of | |
73 | features and extensibility. It borrows a powerful concept called | |
74 | Translators from GNU Hurd kernel. Much of the code in GlusterFS is in | |
75 | userspace and easily manageable. | |
76 | ||
77 | This package includes libglusterfs and glusterfs translator modules | |
78 | common to both GlusterFS server and client framework. | |
79 | ||
80 | %description common -l pl.UTF-8 | |
5f2d10ee | 81 | GlusterFS to klastrowy system plików skalujący się do petabajtów. |
abcc847c | 82 | Scala różne kawałki miejsca po łączach Infiniband RDMA lub TCP/IP w |
83 | jeden duży, równoległy sieciowy system plików. GlusterFS to jeden z | |
84 | najbardziej wyszukanych systemów plików jeśli chodzi o możliwości i | |
85 | rozszerzalność. Zapożycza potężną ideę o nazwie Translators z jądra | |
86 | GNU Hurd. Duża część kodu GlusterFS działa w przestrzeni użytkownika i | |
87 | jest łatwo zarządzalna. | |
5f2d10ee JB |
88 | |
89 | Ten pakiet zawiera libglusterfs i moduły translatorów glusterfs | |
90 | wspólne dla klienta jak i serwera GlusterFS-a. | |
11c9e8ee | 91 | |
65d9dbc4 JB |
92 | %package libs |
93 | Summary: GlusterFS libraries | |
94 | Summary(pl.UTF-8): Biblioteki GlusterFS-a | |
95 | Group: Libraries | |
96 | Conflicts: glusterfs-common < 3.4.0 | |
97 | ||
98 | %description libs | |
99 | GlusterFS libraries. | |
100 | ||
101 | %description libs -l pl.UTF-8 | |
102 | Biblioteki GlusterFS-a. | |
103 | ||
4163e7ad JB |
104 | %package devel |
105 | Summary: GlusterFS development files | |
106 | Summary(pl.UTF-8): Pliki programistyczne GlusterFS-a | |
107 | Group: Development/Libraries | |
65d9dbc4 | 108 | Requires: %{name}-libs = %{version}-%{release} |
4d40ce33 JB |
109 | # -lfl |
110 | Requires: flex | |
111 | Requires: openssl-devel | |
112 | Obsoletes: glusterfs-static | |
4163e7ad JB |
113 | |
114 | %description devel | |
115 | This package provides the development files for GlusterFS library. | |
116 | ||
117 | %description devel -l pl.UTF-8 | |
118 | Ten pakiet udostępnia pliki programistyczne biblioteki GlusterFS-a. | |
119 | ||
4163e7ad JB |
120 | %package transport-ibverbs |
121 | Summary: InfiniBand "verbs" transport plugins for GlusterFS | |
122 | Summary(pl.UTF-8): Wtyczki transportu "verbs" InfiniBand dla GlusterFS-a | |
123 | Group: Libraries | |
124 | Requires: %{name}-common = %{version}-%{release} | |
125 | Requires: libibverbs >= 1.0.4 | |
126 | ||
127 | %description transport-ibverbs | |
128 | InfiniBand "verbs" transport plugins for GlusterFS. | |
129 | ||
130 | %description transport-ibverbs -l pl.UTF-8 | |
131 | Wtyczki transportu "verbs" InfiniBand dla GlusterFS-a. | |
132 | ||
11c9e8ee MK |
133 | %package server |
134 | Summary: GlusterFS Server | |
5f2d10ee JB |
135 | Summary(pl.UTF-8): Serwer GlusterFS-a |
136 | Group: Daemons | |
6c386b20 | 137 | Requires: %{name}-client = %{version}-%{release} |
5f2d10ee JB |
138 | Requires: %{name}-common = %{version}-%{release} |
139 | Requires(post,preun): /sbin/chkconfig | |
140 | Requires: rc-scripts | |
11c9e8ee MK |
141 | |
142 | %description server | |
11c9e8ee MK |
143 | This package provides the glusterfs server daemon. |
144 | ||
145 | %description server -l pl.UTF-8 | |
5f2d10ee | 146 | Ten pakiet zawiera część serwerową GlusterFS-a. |
11c9e8ee MK |
147 | |
148 | %package client | |
149 | Summary: GlusterFS Client | |
5f2d10ee | 150 | Summary(pl.UTF-8): Klient GlusterFS |
11c9e8ee | 151 | Group: Applications/System |
5f2d10ee | 152 | Requires: %{name}-common = %{version}-%{release} |
7f75179c | 153 | Requires: libfuse >= 2.6 |
11c9e8ee MK |
154 | |
155 | %description client | |
11c9e8ee MK |
156 | This package provides the FUSE based GlusterFS client. |
157 | ||
158 | %description client -l pl.UTF-8 | |
5f2d10ee | 159 | Ten pakiet udostępnia opartego na FUSE klienta GlusterFS-a. |
11c9e8ee | 160 | |
65d9dbc4 JB |
161 | %package resource-agents |
162 | Summary: OCF Resource Agents for GlusterFS processes | |
163 | Summary(pl.UTF-8): Agenci OCF do monitorowania procesów GlusterFS-a | |
164 | Group: Applications/System | |
165 | Requires: %{name}-server = %{version}-%{release} | |
166 | Requires: resource-agents | |
167 | ||
168 | %description resource-agents | |
169 | OCF Resource Agents for GlusterFS processes. | |
170 | ||
171 | %description resource-agents -l pl.UTF-8 | |
172 | Agenci OCF do monitorowania procesów GlusterFS-a. | |
173 | ||
d6a0cdd1 | 174 | %prep |
4d40ce33 | 175 | %setup -q |
65d9dbc4 | 176 | %patch0 -p1 |
cfcff11b | 177 | %patch1 -p1 |
4d40ce33 | 178 | %patch2 -p1 |
cfcff11b | 179 | |
d6a0cdd1 | 180 | %build |
4163e7ad JB |
181 | %{__libtoolize} |
182 | %{__aclocal} | |
183 | %{__autoconf} | |
184 | %{__automake} | |
1293e304 | 185 | %configure \ |
4d40ce33 | 186 | --disable-silent-rules \ |
abcc847c | 187 | --enable-fusermount \ |
65d9dbc4 JB |
188 | %{!?with_ibverbs:--disable-ibverbs} \ |
189 | --enable-systemtap%{!?with_systemtap:=no} \ | |
190 | --with-initdir=/etc/rc.d/init.d | |
cfcff11b | 191 | |
4d40ce33 | 192 | %{__make} |
d6a0cdd1 | 193 | |
194 | %install | |
195 | rm -rf $RPM_BUILD_ROOT | |
4d40ce33 | 196 | install -d $RPM_BUILD_ROOT{/etc/rc.d/init.d,%{_var}/lib/glusterd} |
824dab89 | 197 | |
d6a0cdd1 | 198 | %{__make} install \ |
199 | DESTDIR=$RPM_BUILD_ROOT | |
abcc847c | 200 | |
cfcff11b MK |
201 | # No idea why installs elsewhere than later expects to be |
202 | mv $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/glusterd.vol $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/glusterfsd.vol | |
d6a0cdd1 | 203 | |
5f2d10ee | 204 | install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/glusterfsd |
65d9dbc4 JB |
205 | install -d $RPM_BUILD_ROOT%{systemdtmpfilesdir} |
206 | cat >>$RPM_BUILD_ROOT%{systemdtmpfilesdir}/gluster.conf <<EOF | |
207 | d /var/run/gluster 0755 root root - | |
208 | EOF | |
5f2d10ee | 209 | |
4d40ce33 JB |
210 | %{__rm} $RPM_BUILD_ROOT%{_libdir}/glusterfs/%{version}/*/*.la |
211 | %{__rm} $RPM_BUILD_ROOT%{_libdir}/glusterfs/%{version}/*/*/*.la | |
212 | %{__rm} $RPM_BUILD_ROOT%{_libdir}/glusterfs/%{version}/*/*/*/*.la | |
7f75179c | 213 | |
d6a0cdd1 | 214 | %clean |
215 | rm -rf $RPM_BUILD_ROOT | |
216 | ||
65d9dbc4 JB |
217 | %post libs -p /sbin/ldconfig |
218 | %postun libs -p /sbin/ldconfig | |
d34394d5 | 219 | |
11c9e8ee MK |
220 | %files common |
221 | %defattr(644,root,root,755) | |
65d9dbc4 | 222 | %doc ChangeLog NEWS README THANKS doc/glusterd.vol |
3abbc79a | 223 | %dir %{_sysconfdir}/%{name} |
abcc847c | 224 | # NOTE: glusterfs is link to glusterfsd and is needed by client mount |
dca0f35d MK |
225 | %attr(755,root,root) %{_sbindir}/glusterfs |
226 | %attr(755,root,root) %{_sbindir}/glusterfsd | |
13bdb3c9 | 227 | |
796930f1 | 228 | %dir %{_libdir}/glusterfs |
4d40ce33 JB |
229 | |
230 | %dir %{_libdir}/glusterfs/%{version} | |
231 | %dir %{_libdir}/glusterfs/%{version}/auth | |
232 | %attr(755,root,root) %{_libdir}/glusterfs/%{version}/auth/addr.so | |
233 | %attr(755,root,root) %{_libdir}/glusterfs/%{version}/auth/login.so | |
234 | ||
235 | %dir %{_libdir}/glusterfs/%{version}/rpc-transport | |
236 | %attr(755,root,root) %{_libdir}/glusterfs/%{version}/rpc-transport/socket.so | |
237 | ||
238 | %dir %{_libdir}/glusterfs/%{version}/xlator | |
239 | %dir %{_libdir}/glusterfs/%{version}/xlator/cluster | |
240 | %attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/cluster/*.so | |
241 | %dir %{_libdir}/glusterfs/%{version}/xlator/debug | |
242 | %attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/debug/*.so | |
243 | %dir %{_libdir}/glusterfs/%{version}/xlator/encryption | |
244 | %attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/encryption/*.so | |
245 | %dir %{_libdir}/glusterfs/%{version}/xlator/features | |
246 | %attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/features/*.so | |
4d40ce33 JB |
247 | %dir %{_libdir}/glusterfs/%{version}/xlator/mgmt |
248 | %attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/mgmt/glusterd.so | |
249 | %dir %{_libdir}/glusterfs/%{version}/xlator/mount | |
65d9dbc4 | 250 | %attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/mount/api.so |
4d40ce33 JB |
251 | %attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/mount/fuse.so |
252 | %dir %{_libdir}/glusterfs/%{version}/xlator/nfs | |
253 | %attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/nfs/server.so | |
254 | %dir %{_libdir}/glusterfs/%{version}/xlator/performance | |
255 | %attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/performance/*.so | |
256 | %dir %{_libdir}/glusterfs/%{version}/xlator/protocol | |
257 | %attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/protocol/*.so | |
258 | %dir %{_libdir}/glusterfs/%{version}/xlator/storage | |
259 | %attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/storage/*.so | |
260 | %dir %{_libdir}/glusterfs/%{version}/xlator/system | |
261 | %attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/system/posix-acl.so | |
262 | %dir %{_libdir}/glusterfs/%{version}/xlator/testing | |
263 | %dir %{_libdir}/glusterfs/%{version}/xlator/testing/performance | |
264 | %attr(755,root,root) %{_libdir}/glusterfs/%{version}/xlator/testing/performance/*.so | |
265 | ||
266 | %attr(755,root,root) %{_libdir}/glusterfs/gsyncd | |
267 | ||
268 | %dir %{_libdir}/glusterfs/python | |
269 | %dir %{_libdir}/glusterfs/python/syncdaemon | |
270 | # gsyncd.py is a script, the rest probably don't require *.py | |
271 | %{_libdir}/glusterfs/python/syncdaemon/*.py* | |
272 | ||
65d9dbc4 JB |
273 | %{_mandir}/man8/glusterfs.8* |
274 | %{_mandir}/man8/glusterfsd.8* | |
cfcff11b | 275 | %dir %{_var}/log/glusterfs |
11c9e8ee | 276 | |
65d9dbc4 JB |
277 | %files libs |
278 | %defattr(644,root,root,755) | |
279 | %attr(755,root,root) %{_libdir}/libgfapi.so.*.*.* | |
280 | %attr(755,root,root) %ghost %{_libdir}/libgfapi.so.0 | |
281 | %attr(755,root,root) %{_libdir}/libgfrpc.so.*.*.* | |
282 | %attr(755,root,root) %ghost %{_libdir}/libgfrpc.so.0 | |
283 | %attr(755,root,root) %{_libdir}/libgfxdr.so.*.*.* | |
284 | %attr(755,root,root) %ghost %{_libdir}/libgfxdr.so.0 | |
285 | %attr(755,root,root) %{_libdir}/libglusterfs.so.*.*.* | |
286 | %attr(755,root,root) %ghost %{_libdir}/libglusterfs.so.0 | |
287 | ||
4163e7ad JB |
288 | %files devel |
289 | %defattr(644,root,root,755) | |
65d9dbc4 | 290 | %attr(755,root,root) %{_libdir}/libgfapi.so |
37b19a82 | 291 | %attr(755,root,root) %{_libdir}/libgfrpc.so |
37b19a82 | 292 | %attr(755,root,root) %{_libdir}/libgfxdr.so |
65d9dbc4 JB |
293 | %attr(755,root,root) %{_libdir}/libglusterfs.so |
294 | %{_libdir}/libgfapi.la | |
295 | %{_libdir}/libgfrpc.la | |
37b19a82 | 296 | %{_libdir}/libgfxdr.la |
65d9dbc4 JB |
297 | %{_libdir}/libglusterfs.la |
298 | %dir %{_includedir}/glusterfs | |
299 | %{_includedir}/glusterfs/api | |
300 | %{_pkgconfigdir}/glusterfs-api.pc | |
37b19a82 | 301 | |
9891d861 | 302 | %if %{with ibverbs} |
4163e7ad JB |
303 | %files transport-ibverbs |
304 | %defattr(644,root,root,755) | |
4d40ce33 | 305 | %attr(755,root,root) %{_libdir}/glusterfs/%{version}/rpc-transport/rdma.so |
9891d861 | 306 | %endif |
4163e7ad | 307 | |
11c9e8ee MK |
308 | %files server |
309 | %defattr(644,root,root,755) | |
cfcff11b | 310 | %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/glusterfsd.vol |
824dab89 | 311 | %attr(754,root,root) /etc/rc.d/init.d/glusterfsd |
37b19a82 | 312 | %attr(755,root,root) %{_sbindir}/glusterd |
65d9dbc4 JB |
313 | %{systemdtmpfilesdir}/gluster.conf |
314 | %{_mandir}/man8/glusterd.8* | |
4d40ce33 | 315 | %dir %{_var}/lib/glusterd |
65d9dbc4 | 316 | %dir %{_var}/run/gluster |
11c9e8ee | 317 | |
11c9e8ee MK |
318 | %files client |
319 | %defattr(644,root,root,755) | |
cfcff11b | 320 | %attr(755,root,root) %{_bindir}/fusermount-glusterfs |
11c9e8ee | 321 | %attr(755,root,root) /sbin/mount.glusterfs |
37b19a82 | 322 | %attr(755,root,root) %{_sbindir}/gluster |
4d40ce33 | 323 | %{_mandir}/man8/gluster.8* |
65d9dbc4 JB |
324 | %{_mandir}/man8/mount.glusterfs.8* |
325 | ||
326 | %files resource-agents | |
327 | %defattr(644,root,root,755) | |
328 | %dir %{_prefix}/lib/ocf/resource.d/glusterfs | |
329 | %attr(755,root,root) %{_prefix}/lib/ocf/resource.d/glusterfs/glusterd | |
330 | %attr(755,root,root) %{_prefix}/lib/ocf/resource.d/glusterfs/volume |