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