Initial check-in, nfs-ganesah-2.0.0-0.1.rc5

This commit is contained in:
Kaleb S. KEITHLEY 2013-11-22 08:26:40 -05:00
parent 772293bbac
commit ff653f31d8
5 changed files with 165 additions and 0 deletions

2
.gitignore vendored
View File

@ -0,0 +1,2 @@
/pre-2.0-RC5.tar.gz
/v1.0.0.tar.gz

View File

@ -0,0 +1,26 @@
--- nfs-ganesha-pre-2.0-RC3/src/os/linux/subr.c.orig 2013-11-04 13:17:41.284000000 -0500
+++ nfs-ganesha-pre-2.0-RC3/src/os/linux/subr.c 2013-11-04 13:31:05.496000000 -0500
@@ -127,7 +127,6 @@
{
uid_t orig_uid = setfsuid(uid);
if (uid != setfsuid(uid)) {
- setfsuid(orig_uid);
LogCrit(COMPONENT_FSAL, "Could not set user identity");
}
return orig_uid;
@@ -137,7 +136,6 @@
{
gid_t orig_gid = setfsgid(gid);
if (gid != setfsgid(gid)) {
- setfsgid(orig_gid);
LogCrit(COMPONENT_FSAL, "Could not set group identity");
}
return orig_gid;
--- nfs-ganesha-pre-2.0-RC3/src/tools/ganestat.pl.orig 2013-11-04 16:46:40.414916999 -0500
+++ nfs-ganesha-pre-2.0-RC3/src/tools/ganestat.pl 2013-11-04 16:47:09.108916999 -0500
@@ -1,4 +1,4 @@
-#!/bin/env perl
+#!/usr/bin/perl
#
################## Doxygen header ##################
#*

12
nfs-ganesha.service Normal file
View File

@ -0,0 +1,12 @@
[Unit]
Description=User-mode file server for NFS
Documentation=https://github.com/nfs-ganesha/nfs-ganesha/wiki
[Service]
ExecStart=/usr/bin/ganesha.nfsd
Type=forking
PIDFile=/var/run/ganesha.pid
[Install]
WantedBy=multi-user.target

123
nfs-ganesha.spec Normal file
View File

@ -0,0 +1,123 @@
%global prereltag rc5
%global reltag pre-2.0-RC5
%global ntirpcname ntirpc
%global ntirpcvers 1.0.0
Name: nfs-ganesha
Version: 2.0.0
Release: 0.1%{?prereltag:.%{prereltag}}%{?dist}
Summary: Ganesha NFS Server
Group: System Environment/Libraries
License: LGPLv3+
URL: https://github.com/nfs-ganesha/nfs-ganesha/wiki
ExclusiveArch: x86_64
ExclusiveArch: aarch64
Source0: https://github.com/%{name}/%{name}/archive/%{reltag}.tar.gz
Source1: https://github.com/%{name}/%{ntirpcname}/archive/v%{ntirpcvers}.tar.gz
Source2: nfs-ganesha.service
Patch1: nfs-ganesha-2.0.0rc5.patch
# Bundling exception through Fedora 23
# https://fedorahosted.org/fpc/ticket/363
Provides: bundled(libntirpc)
BuildRequires: systemd
BuildRequires: cmake >= 2.6.3
BuildRequires: bison
BuildRequires: flex
BuildRequires: pkgconfig
BuildRequires: doxygen
BuildRequires: krb5-devel
BuildRequires: xfsprogs-devel
BuildRequires: dbus-devel
BuildRequires: jemalloc-devel
BuildRequires: libnfsidmap-devel
BuildRequires: libwbclient-devel
BuildRequires: libcap-devel
# BuildRequires: glusterfs-api-devel
Requires(post): systemd
Requires(preun): systemd
Requires(postun): systemd
Requires: dbus
Requires: jemalloc
# Requires: glusterfs-api
%global _docdir_fmt %{name}
%description
NFS-Ganesha is a user mode file server with support for both the
NFS suite and 9P, the Plan 9 remote file access protocol. It uses
an internal meta data cache and state manager for performance. It
also provides support for pNFS for multiple clustered file systems
both open source and proprietary. Multiple file systems are supported
via loadable back-end drivers. The VFS back-end supports file systems
via the kernel. Other back-ends can support user mode library based
clusters such as CEPH and GLUSTERFS. There is also a PROXY back-end
which operates as an NFSv4 client.
%package docs
Summary: Ganesha NFS Server Documentation
BuildArch: noarch
%description docs
Documentation for nfs-ganesha
NFS-Ganesha is a user mode file server with support for both the
NFS suite and 9P, the Plan 9 remote file access protocol. It uses
an internal meta data cache and state manager for performance. It
also provides support for pNFS for multiple clustered file systems
both open source and proprietary. Multiple file systems are supported
via loadable back-end drivers. The VFS back-end supports file systems
via the kernel. Other back-ends can support user mode library based
clusters such as CEPH and GLUSTERFS. There is also a PROXY back-end
which operates as an NFSv4 client.
%prep
%setup -q -n %{name}-%{reltag} -a 1
rm -rf contrib/libzfswrapper
mv %{ntirpcname}-%{ntirpcvers}/* src/libntirpc/
%patch1 -p1
%build
%cmake -DCMAKE_BUILD_TYPE=Maintainer -DBUILD_CONFIG=everything -DCMAKE_INSTALL_PREFIX=%{buildroot}/usr ./src
# _smp_mflags elided due to random build errors (cmake related?)
make VERBOSE=1
%install
make install
rm %{buildroot}%{_bindir}/libntirpc.*
chmod ugo+x %{buildroot}%{_bindir}/ganestat.pl
rm %{buildroot}%{_libdir}/ganesha/*.so
install -D -p -m 0644 %{SOURCE2} %{buildroot}%{_unitdir}/nfs-ganesha.service
mkdir -p %{buildroot}%{_defaultdocdir}/%{name}
cp -p src/Docs/*.pdf %{buildroot}%{_defaultdocdir}/%{name}/
%post
/sbin/ldconfig
%systemd_post nfs-ganesha.service
%preun
%systemd_preun nfs-ganesha.service
%postun
/sbin/ldconfig
%systemd_postun_with_restart nfs-ganesha.service
%files
%doc src/ChangeLog src/LICENSE.txt src/TODO
%exclude %{_defaultdocdir}/%{name}/*.pdf
%{_libdir}/*
%{_bindir}/*
%{_unitdir}/*
%files docs
%{_defaultdocdir}/%{name}/LICENSE.txt
%{_defaultdocdir}/%{name}/*.pdf
%dir %{_defaultdocdir}/%{name}
%changelog
* Fri Nov 22 2013 Kaleb S. KEITHLEY <kkeithle at redhat.com> 2.0.0-0.1.rc5
- Initial commit

View File

@ -0,0 +1,2 @@
cec7c0ff5ef8dd4929f55ec4e4709030 pre-2.0-RC5.tar.gz
5a7c90879d6ce3d3a927defe3fbd0939 v1.0.0.tar.gz