X-Git-Url: https://git.tld-linux.org/?p=packages%2Fglusterfs.git;a=blobdiff_plain;f=glusterfs.spec;h=2b8081cb7d96cb20fdbf7bfc982533732b731232;hp=841a42d4bc2595173bb41fcaff7d5d86a7fd096a;hb=HEAD;hpb=9232506a6537d3a2bf57ea09a925590b3c098922 diff --git a/glusterfs.spec b/glusterfs.spec index 841a42d..d3dd361 100644 --- a/glusterfs.spec +++ b/glusterfs.spec @@ -1,48 +1,56 @@ # TODO: # - Find pidfiles killproc --pidfile ${PIDFILE} -TERM instead of kill -TERM ${PID} -# - Check transport-ibverbs package and ibverbs bcond # - Add passing options from /etc/sysconfig/glusterfsd to glusterfsd # - package /etc/glusterfs/glusterfs-logrotate as logrotate config -# - package in proper emacs/vim locations: -# /usr/share/doc/glusterfs/glusterfs-mode.el -# /usr/share/doc/glusterfs/glusterfs.vim +# - Fix/provide working systemd service files. +# As for 3.7.11, package provided seems be non-working. +# - add nfs-ganesha to PLD and package ganesha integration files +# - configuration for firewalld? (--enable-firewalld, but checks for firewalld executable) # # Conditional build: -%bcond_without ibverbs # ib-verbs transport -%bcond_without systemtap # systemtap/dtrace support +%bcond_without system_fuse # system fusermount # Summary: Clustered File Storage that can scale to peta bytes Summary(pl.UTF-8): Klastrowy system przechowywania plików skalujący się do petabajtów Name: glusterfs -Version: 3.5.3 -Release: 2 +Version: 10.5 +Release: 1 License: LGPL v3+ or GPL v2 (libraries), GPL v3+ (programs) Group: Applications/System -Source0: http://download.gluster.org/pub/gluster/glusterfs/3.5/LATEST/glusterfs-%{version}.tar.gz -# Source0-md5: 359f9f565fedd3069e1ff4f81fcb14e7 +Source0: https://download.gluster.org/pub/gluster/glusterfs/10/%{version}/glusterfs-%{version}.tar.gz +# Source0-md5: 8ac48f7b7f9afa0e5dfa9ad42589ee27 Source1: glusterfsd.init -Patch0: %{name}-link.patch -Patch1: %{name}-noquiet.patch -Patch2: no-sysctl-on-linux.patch -URL: http://www.gluster.org/ +Patch0: ssl_paths.patch +Patch1: ksh_getopts.patch +URL: https://www.gluster.org/ +BuildRequires: acl-devel BuildRequires: autoconf >= 2.50 BuildRequires: automake BuildRequires: bison +#BuildRequires: cmocka-devel >= 1.0.1 for unittest +BuildRequires: curl-devel +# for bd-xlator BuildRequires: device-mapper-devel >= 2.02.79 BuildRequires: flex -BuildRequires: glib2-devel >= 2.0 BuildRequires: libaio-devel -BuildRequires: libfuse-devel >= 2.6 -%{?with_ibverbs:BuildRequires: libibverbs-devel >= 1.0.4} +BuildRequires: libselinux-devel +BuildRequires: libtcmalloc-devel +BuildRequires: libtirpc-devel BuildRequires: libtool +BuildRequires: liburing-devel +BuildRequires: libuuid-devel BuildRequires: libxml2-devel >= 1:2.6.19 BuildRequires: openssl-devel BuildRequires: pkgconfig -BuildRequires: python >= 1:2.4 +BuildRequires: python3 >= 1:3.2 +BuildRequires: python3-devel >= 1:3.2 BuildRequires: readline-devel +BuildRequires: rpcsvc-proto BuildRequires: rpm-pythonprov BuildRequires: rpmbuild(macros) >= 1.228 -%{?with_systemtap:BuildRequires: systemtap-sdt-devel} +BuildRequires: sed >= 4.0 +BuildRequires: sqlite3-devel >= 3 +BuildRequires: userspace-rcu-devel >= 0.8 BuildRequires: zlib-devel >= 1.2.0 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) @@ -70,6 +78,7 @@ Summary(pl.UTF-8): Wspólne pliki GlusterFS-a, w tym translatory Group: Libraries Requires: libxml2 >= 1:2.6.19 Requires: zlib >= 1.2.0 +Obsoletes: glusterfs-transport-ibverbs < 8 %description common GlusterFS is a clustered file-system capable of scaling to several @@ -114,8 +123,9 @@ Group: Development/Libraries Requires: %{name}-libs = %{version}-%{release} # -lfl Requires: flex +Requires: libtirpc-devel Requires: openssl-devel -Obsoletes: glusterfs-static +Obsoletes: glusterfs-static < 1.3.10-2 %description devel This package provides the development files for GlusterFS library. @@ -123,30 +133,18 @@ This package provides the development files for GlusterFS library. %description devel -l pl.UTF-8 Ten pakiet udostępnia pliki programistyczne biblioteki GlusterFS-a. -%package -n python-gluster -Summary: Python interface to GlusterFS libraries -Summary(pl.UTF-8): Interfejs Pythona do bibliotek GlusterFS +%package -n python3-gluster +Summary: Python 3 interface to GlusterFS libraries +Summary(pl.UTF-8): Interfejs Pythona 3 do bibliotek GlusterFS Group: Libraries/Python Requires: %{name}-libs = %{version}-%{release} +Obsoletes: python-gluster < 6.6 -%description -n python-gluster -Python interface to GlusterFS libraries. +%description -n python3-gluster +Python 3 interface to GlusterFS libraries. -%description -n python-gluster -l pl.UTF-8 -Interfejs Pythona do bibliotek GlusterFS. - -%package transport-ibverbs -Summary: InfiniBand "verbs" transport plugins for GlusterFS -Summary(pl.UTF-8): Wtyczki transportu "verbs" InfiniBand dla GlusterFS-a -Group: Libraries -Requires: %{name}-common = %{version}-%{release} -Requires: libibverbs >= 1.0.4 - -%description transport-ibverbs -InfiniBand "verbs" transport plugins for GlusterFS. - -%description transport-ibverbs -l pl.UTF-8 -Wtyczki transportu "verbs" InfiniBand dla GlusterFS-a. +%description -n python3-gluster -l pl.UTF-8 +Interfejs Pythona 3 do bibliotek GlusterFS. %package server Summary: GlusterFS Server @@ -156,6 +154,7 @@ Requires: %{name}-client = %{version}-%{release} Requires: %{name}-common = %{version}-%{release} Requires(post,preun): /sbin/chkconfig Requires: rc-scripts +Requires: python3-modules %description server This package provides the glusterfs server daemon. @@ -168,7 +167,7 @@ Summary: GlusterFS Client Summary(pl.UTF-8): Klient GlusterFS Group: Applications/System Requires: %{name}-common = %{version}-%{release} -Requires: libfuse >= 2.6 +%{?with_system_fuse:Requires: libfuse >= 2.6} %description client This package provides the FUSE based GlusterFS client. @@ -189,11 +188,87 @@ OCF Resource Agents for GlusterFS processes. %description resource-agents -l pl.UTF-8 Agenci OCF do monitorowania procesów GlusterFS-a. +%package events +Summary: GlusterFS Events +Summary(pl.UTF-8): Obsługa zdarzeń dla GlusterFS-a +Group: Applications/File +Requires: %{name}-server = %{version}-%{release} +Requires: python3-gluster = %{version}-%{release} +Requires: python3-prettytable +Requires: python3-requests + +%description events +GlusterFS Events. + +%description events -l pl.UTF-8 +Obsługa zdarzeń dla GlusterFS-a. + +%package geo-replication +Summary: GlusterFS Geo-replication +Summary(pl.UTF-8): Geo-replikacja dla GlusterFS-a +Group: Applications/File +Requires: %{name}-server = %{version}-%{release} +Requires: python3-gluster = %{version}-%{release} +Requires: python3-prettytable +Requires: rsync + +%description geo-replication +GlusterFS support for geo-replication. + +%description geo-replication -l pl.UTF-8 +Obsługa geo-replikacji dla GlusterFS-a. + +%package thin-arbiter +Summary: GlusterFS thin-arbiter module +Summary(pl.UTF-8): Moduł thin-arbiter dla GlusterFS-a +Group: Applications/File +Requires: %{name}-server = %{version}-%{release} + +%description thin-arbiter +This package provides a tie-breaker functionality to GlusterFS +replicate volume. It includes translators required to provide the +functionality, and also few other scripts required for getting the +setup done. + +This package provides the glusterfs thin-arbiter translator. + +%description thin-arbiter -l pl.UTF-8 +Ten pakiet dodaje funkcję dogrywki do replikacji wolumenów GlusterFS. +Zawiera moduły tłumaczące wymagane do zapewniania tej funkcji oraz +kilka skryptów wymaganych do konfiguracji. + +Ten pakiet zawiera moduł tłumaczący thin-arbiter. + +%package -n emacs-glusterfs-mode +Summary: Emacs mode to edit GlusterFS configuration +Summary(pl.UTF-8): Tryb Emacsa do edycji konfiguracji GlusterFS-a +Group: Applications/Editors +Requires: %{name}-common = %{version}-%{release} +Requires: emacs-common + +%description -n emacs-glusterfs-mode +Emacs mode to edit GlusterFS configuration. + +%description -n emacs-glusterfs-mode -l pl.UTF-8 +Tryb Emacsa do edycji konfiguracji GlusterFS-a. + +%package -n vim-syntax-glusterfs +Summary: Vim syntax file to edit GlusterFS configuration +Summary(pl.UTF-8): Plik składni Vima do edycji konfiguracji GlusterFS-a +Group: Applications/Editors +Requires: %{name}-common = %{version}-%{release} +Requires: vim-rt >= 4:7.2.170 + +%description -n vim-syntax-glusterfs +Vim syntax file to edit GlusterFS configuration. + +%description -n vim-syntax-glusterfs -l pl.UTF-8 +Plik składni Vima do edycji konfiguracji GlusterFS-a. + %prep %setup -q %patch0 -p1 %patch1 -p1 -%patch2 -p1 %build %{__libtoolize} @@ -201,41 +276,38 @@ Agenci OCF do monitorowania procesów GlusterFS-a. %{__autoconf} %{__autoheader} %{__automake} -#%{__python} gen-headers.py -#%{__mv} gf-error-codes.h libglusterfs/src %configure \ + PYTHON=%{__python3} \ + %{?with_system_fuse:--disable-fusermount} \ --disable-silent-rules \ - --enable-fusermount \ - %{!?with_ibverbs:--disable-ibverbs} \ - --enable-systemtap%{!?with_systemtap:=no} \ + --enable-gnfs \ --with-initdir=/etc/rc.d/init.d %{__make} -j1 %install rm -rf $RPM_BUILD_ROOT -install -d $RPM_BUILD_ROOT{/etc/rc.d/init.d,%{_var}/lib/glusterd} +install -d $RPM_BUILD_ROOT/etc/rc.d/init.d %{__make} -j1 install \ DESTDIR=$RPM_BUILD_ROOT # No idea why installs elsewhere than later expects to be -mv $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/glusterd.vol $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/glusterfsd.vol +%{__mv} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/glusterd.vol $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/glusterfsd.vol install %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/glusterfsd -install -d $RPM_BUILD_ROOT%{systemdtmpfilesdir} -cat >>$RPM_BUILD_ROOT%{systemdtmpfilesdir}/gluster.conf <