From f7c4320921bd6e4ce4bda009572395cd32fa2019 Mon Sep 17 00:00:00 2001 From: basebuilder_pel7ppc64bebuilder0 Date: Sun, 3 Jun 2018 13:04:16 +0200 Subject: [PATCH] fedfs-util package update Signed-off-by: basebuilder_pel7ppc64bebuilder0 --- SPECS/fedfs-utils.spec | 517 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 517 insertions(+) create mode 100644 SPECS/fedfs-utils.spec diff --git a/SPECS/fedfs-utils.spec b/SPECS/fedfs-utils.spec new file mode 100644 index 00000000..b31305c0 --- /dev/null +++ b/SPECS/fedfs-utils.spec @@ -0,0 +1,517 @@ +Name: fedfs-utils +Version: 0.10.5 +Release: 0%{?dist} +Summary: Utilities for mounting and managing FedFS + +Group: System Environment/Daemons +License: GPLv2 +URL: http://wiki.linux-nfs.org/wiki/index.php/FedFsUtilsProject +BuildRequires: libidn-devel libattr-devel libcap-devel openldap-devel +BuildRequires: sqlite-devel libtirpc-devel libuuid-devel libconfig-devel +BuildRequires: openssl-devel libxml2-devel uriparser-devel +BuildRequires: automake libtool glibc-headers +BuildRequires: python2-devel +BuildRequires: systemd systemd-units + +Source0: http://oss.oracle.com/projects/%{name}/dist/files/%{name}-%{version}.tar.gz + +%global _hardened_build 1 +%global unit_name rpcfedfsd +# %define debug_package %{nil} + +%description +RFC 5716 introduces the Federated File System (FedFS, for short). FedFS +is an extensible standardized mechanism by which system administrators +construct a coherent file name space across multiple file servers using +file system referrals. + +A file system referral is like a symbolic link to another file system +share, but it is not visible to applications. It behaves like an +auto-mounted directory where a new file system mount is done when an +application first accesses that directory. The arguments of the mount +operation are controlled by information returned by the file server. + +Today, file system referral mechanisms exist in several network file +system protocols. FedFS provides its file name space features by +leveraging referral mechanisms already built in to network file system +protocols. Thus no change to file system protocols or clients is +required. + +Currently, the Linux FedFS implementation supports only NFS version 4 +referrals. More on NFS version 4 referrals can be found in RFC 3530. +FedFS may support other network file system protocols in the future. + +%prep +%setup -q -n %{name}-%{version} + +%build +%ifarch s390 s390x +PIE="-fPIE" +%else +PIE="-fpie" +%endif +export PIE +export CFLAGS="$RPM_OPT_FLAGS $ARCH_OPT_FLAGS $PIE" +export LDFLAGS="-pie -Wl,-z,relro -Wl,-z,now" + +./autogen.sh +%configure --prefix=/usr +make %{?_smp_mflags} + +%install +# make install-strip DESTDIR=%{buildroot} +make install DESTDIR=%{buildroot} +mkdir -p %{buildroot}%{_sharedstatedir}/fedfs +mkdir -p %{buildroot}%{_unitdir} +mkdir -p %{buildroot}/nfs4 +install -m 644 contrib/init/%{unit_name}.service %{buildroot}%{_unitdir} +mkdir -p %{buildroot}%{_sysconfdir}/sysconfig +install -m 644 contrib/init/fedfs %{buildroot}%{_sysconfdir}/sysconfig +mkdir -p %{buildroot}/%{_sysconfdir}/auto.master.d +install -m 644 contrib/init/fedfs.autofs %{buildroot}/%{_sysconfdir}/auto.master.d +mkdir -p %{buildroot}/%{_sysconfdir}/fedfsd +mv %{buildroot}/%{_sysconfdir}/access.conf %{buildroot}/%{_sysconfdir}/fedfsd + +# Don't package static libs to encourage use of shared library. +rm -f %{buildroot}%{_libdir}/libnfsjunct.a +rm -f %{buildroot}%{_libdir}/libnfsjunct.la + +%package common +Summary: Common files for FedFS +Group: System Environment/Daemons +BuildArch: noarch + +%description common +This package contains files common to all of the fedfs packages. + +RFC 5716 introduces the Federated File System (FedFS, for short). FedFS +is an extensible standardized mechanism by which system administrators +construct a coherent file name space across multiple file servers using +file system referrals. + +A file system referral is like a symbolic link to another file system +share, but it is not visible to applications. It behaves like an +auto-mounted directory where a new file system mount is done when an +application first accesses that directory. The arguments of the mount +operation are controlled by information returned by the file server. + +Today, file system referral mechanisms exist in several network file +system protocols. FedFS provides its file name space features by +leveraging referral mechanisms already built in to network file system +protocols. Thus no change to file system protocols or clients is +required. + +Currently, the Linux FedFS implementation supports only NFS version 4 +referrals. More on NFS version 4 referrals can be found in RFC 3530. +FedFS may support other network file system protocols in the future. + +%files common +%doc COPYING README ChangeLog doc/ldap/fedfs.schema doc/ldap/fedfs-schema.ldif +%{_mandir}/man7/fedfs.7.* + +%package client +Summary: Utilities for mounting FedFS domains +Group: System Environment/Daemons +Requires: %{name}-common = %{version}-%{release} +Requires: nfs-utils autofs +Requires(post): systemd-units +Requires(postun): systemd-units +%description client +This package contains the tools needed to mount a FedFS domain and act +as a client. + +RFC 5716 introduces the Federated File System (FedFS, for short). FedFS +is an extensible standardized mechanism by which system administrators +construct a coherent file name space across multiple file servers using +file system referrals. + +A file system referral is like a symbolic link to another file system +share, but it is not visible to applications. It behaves like an +auto-mounted directory where a new file system mount is done when an +application first accesses that directory. The arguments of the mount +operation are controlled by information returned by the file server. + +Today, file system referral mechanisms exist in several network file +system protocols. FedFS provides its file name space features by +leveraging referral mechanisms already built in to network file system +protocols. Thus no change to file system protocols or clients is +required. + +Currently, the Linux FedFS implementation supports only NFS version 4 +referrals. More on NFS version 4 referrals can be found in RFC 3530. +FedFS may support other network file system protocols in the future. + +%files client +/sbin/mount.fedfs +%{_sbindir}/fedfs-map-nfs4 +%{_mandir}/man8/mount.fedfs.8.* +%{_mandir}/man8/fedfs-map-nfs4.8.* +%dir /nfs4 +%config(noreplace) /%{_sysconfdir}/auto.master.d/fedfs.autofs + +%post client +# We may have changed the automounter configuration +/bin/systemctl reload autofs.service >/dev/null 2>&1 || : + +%postun client +# We may have changed the automounter configuration +/bin/systemctl reload autofs.service >/dev/null 2>&1 || : + +%package nsdbparams +Summary: The FedFS nsdbparams utility +Group: System Environment/Daemons +Requires: %{name}-common = %{version}-%{release} +%description nsdbparams +This package contains the nsdbparams utility, which manages the +NSDB connection parameters used during FedFS junction resolution +and domain administration. + +RFC 5716 introduces the Federated File System (FedFS, for short). FedFS +is an extensible standardized mechanism by which system administrators +construct a coherent file name space across multiple file servers using +file system referrals. + +A file system referral is like a symbolic link to another file system +share, but it is not visible to applications. It behaves like an +auto-mounted directory where a new file system mount is done when an +application first accesses that directory. The arguments of the mount +operation are controlled by information returned by the file server. + +Today, file system referral mechanisms exist in several network file +system protocols. FedFS provides its file name space features by +leveraging referral mechanisms already built in to network file system +protocols. Thus no change to file system protocols or clients is +required. + +Currently, the Linux FedFS implementation supports only NFS version 4 +referrals. More on NFS version 4 referrals can be found in RFC 3530. +FedFS may support other network file system protocols in the future. + +%files nsdbparams +%{_sbindir}/nsdbparams +%{_mandir}/man8/nsdbparams.8.* +%{_mandir}/man7/nsdb-parameters.7.* + +%package devel +Summary: Development files for the FedFS nfs-plugin +Group: System Environment/Daemons +Requires: %{name}-lib%{?_isa} = %{version}-%{release} +%description devel +This package contains development files for the FedFS nfs-plugin +library. This package must be present at nfs-utils build time for +NFS and FedFS junction support to be enabled in nfs-utils. + +RFC 5716 introduces the Federated File System (FedFS, for short). FedFS +is an extensible standardized mechanism by which system administrators +construct a coherent file name space across multiple file servers using +file system referrals. + +A file system referral is like a symbolic link to another file system +share, but it is not visible to applications. It behaves like an +auto-mounted directory where a new file system mount is done when an +application first accesses that directory. The arguments of the mount +operation are controlled by information returned by the file server. + +Today, file system referral mechanisms exist in several network file +system protocols. FedFS provides its file name space features by +leveraging referral mechanisms already built in to network file system +protocols. Thus no change to file system protocols or clients is +required. + +Currently, the Linux FedFS implementation supports only NFS version 4 +referrals. More on NFS version 4 referrals can be found in RFC 3530. +FedFS may support other network file system protocols in the future. + +%files devel +%{_includedir}/nfs-plugin.h + +%package lib +Summary: The FedFS nfs-plugin run-time library +Group: System Environment/Daemons +Requires: %{name}-common = %{version}-%{release} +Requires: %{name}-nsdbparams%{?_isa} = %{version}-%{release} +Requires: nfs-utils >= 1.2.8 +Requires: kernel >= 3.3.0 +%description lib +This package contains the FedFS nfs-plugin run-time library. This +package must be installed for FedFS junction support to be enabled in +rpc.mountd. + +RFC 5716 introduces the Federated File System (FedFS, for short). FedFS +is an extensible standardized mechanism by which system administrators +construct a coherent file name space across multiple file servers using +file system referrals. + +A file system referral is like a symbolic link to another file system +share, but it is not visible to applications. It behaves like an +auto-mounted directory where a new file system mount is done when an +application first accesses that directory. The arguments of the mount +operation are controlled by information returned by the file server. + +Today, file system referral mechanisms exist in several network file +system protocols. FedFS provides its file name space features by +leveraging referral mechanisms already built in to network file system +protocols. Thus no change to file system protocols or clients is +required. + +Currently, the Linux FedFS implementation supports only NFS version 4 +referrals. More on NFS version 4 referrals can be found in RFC 3530. +FedFS may support other network file system protocols in the future. + +%post lib -p /sbin/ldconfig + +%postun lib -p /sbin/ldconfig + +%files lib +# We need to include this in the lib package because it is +# dlopen()ed by the junction support code in nfs-utils. +%{_libdir}/libnfsjunct.so +%{_libdir}/libnfsjunct.so.* + +%package python +Summary: FedFS Python utilities +Group: System Environment/Daemons +BuildArch: noarch +Requires: python-ldap openldap-servers + +%description python +This package contains Python tools for administering the FedFS +capabilities of a Linux NFS file server. + +RFC 5716 introduces the Federated File System (FedFS, for short). FedFS +is an extensible standardized mechanism by which system administrators +construct a coherent file name space across multiple file servers using +file system referrals. + +A file system referral is like a symbolic link to another file system +share, but it is not visible to applications. It behaves like an +auto-mounted directory where a new file system mount is done when an +application first accesses that directory. The arguments of the mount +operation are controlled by information returned by the file server. + +Today, file system referral mechanisms exist in several network file +system protocols. FedFS provides its file name space features by +leveraging referral mechanisms already built in to network file system +protocols. Thus no change to file system protocols or clients is +required. + +Currently, the Linux FedFS implementation supports only NFS version 4 +referrals. More on NFS version 4 referrals can be found in RFC 3530. +FedFS may support other network file system protocols in the future. + +%files python +%{_bindir}/fedfs-domainroot +%{_bindir}/nsdb-jumpstart +%{python_sitelib}/PyFedfs/* +%{_mandir}/man8/fedfs-domainroot.8.* +%{_mandir}/man8/nsdb-jumpstart.8.* + +%package server +Summary: Utilities for serving FedFS domains +Group: System Environment/Daemons +Requires: %{name}-common = %{version}-%{release} +Requires: %{name}-nsdbparams%{?_isa} = %{version}-%{release} +Requires: %{name}-lib%{?_isa} = %{version}-%{release} +Requires: nfs-utils >= 1.2.8 +Requires: kernel >= 3.3.0 +Requires(post): systemd-units +Requires(preun): systemd-units +Requires(postun): systemd-units + +%description server +This package contains tools for managing NFS and FedFS junctions +on a Linux NFS file server. + +RFC 5716 introduces the Federated File System (FedFS, for short). FedFS +is an extensible standardized mechanism by which system administrators +construct a coherent file name space across multiple file servers using +file system referrals. + +A file system referral is like a symbolic link to another file system +share, but it is not visible to applications. It behaves like an +auto-mounted directory where a new file system mount is done when an +application first accesses that directory. The arguments of the mount +operation are controlled by information returned by the file server. + +Today, file system referral mechanisms exist in several network file +system protocols. FedFS provides its file name space features by +leveraging referral mechanisms already built in to network file system +protocols. Thus no change to file system protocols or clients is +required. + +Currently, the Linux FedFS implementation supports only NFS version 4 +referrals. More on NFS version 4 referrals can be found in RFC 3530. +FedFS may support other network file system protocols in the future. + +%pre server +getent group fedfs >/dev/null || groupadd -r fedfs +getent passwd fedfs >/dev/null || \ + useradd -r -g fedfs -d %{_sharedstatedir}/fedfs -s /sbin/nologin \ + -c "FedFS Server User" fedfs +exit 0 + +%post server +%systemd_post %{unit_name}.service + +%preun server +%systemd_preun %{unit_name}.service + +%postun server +%systemd_postun_with_restart %{unit_name}.service + +%files server +%dir %{_sharedstatedir}/fedfs +%dir %{_sysconfdir}/fedfsd +%{_sbindir}/nfsref +%{_sbindir}/rpc.fedfsd +%{_mandir}/man8/nfsref.8.* +%{_mandir}/man8/rpc.fedfsd.8.* +%{_unitdir}/rpcfedfsd.service +%config(noreplace) %{_sysconfdir}/sysconfig/fedfs +%config(noreplace) %{_sysconfdir}/fedfsd/access.conf + +%package admin +Summary: Utilities for administering FedFS domains +Group: System Environment/Daemons +Requires: %{name}-common = %{version}-%{release} +Requires: %{name}-nsdbparams%{?_isa} = %{version}-%{release} +%description admin +This package contains the tools needed to manage a FedFS domain. + +RFC 5716 introduces the Federated File System (FedFS, for short). FedFS +is an extensible standardized mechanism by which system administrators +construct a coherent file name space across multiple file servers using +file system referrals. + +A file system referral is like a symbolic link to another file system +share, but it is not visible to applications. It behaves like an +auto-mounted directory where a new file system mount is done when an +application first accesses that directory. The arguments of the mount +operation are controlled by information returned by the file server. + +Today, file system referral mechanisms exist in several network file +system protocols. FedFS provides its file name space features by +leveraging referral mechanisms already built in to network file system +protocols. Thus no change to file system protocols or clients is +required. + +Currently, the Linux FedFS implementation supports only NFS version 4 +referrals. More on NFS version 4 referrals can be found in RFC 3530. +FedFS may support other network file system protocols in the future. + +%files admin +%{_sbindir}/fedfs-create-junction +%{_sbindir}/fedfs-create-replication +%{_sbindir}/fedfs-delete-junction +%{_sbindir}/fedfs-delete-replication +%{_sbindir}/fedfs-get-limited-nsdb-params +%{_sbindir}/fedfs-get-nsdb-params +%{_sbindir}/fedfs-lookup-junction +%{_sbindir}/fedfs-lookup-replication +%{_sbindir}/fedfs-null +%{_sbindir}/fedfs-set-nsdb-params +%{_sbindir}/nsdb-* +%{_mandir}/man8/fedfs-create-junction.8.* +%{_mandir}/man8/fedfs-create-replication.8.* +%{_mandir}/man8/fedfs-delete-junction.8.* +%{_mandir}/man8/fedfs-delete-replication.8.* +%{_mandir}/man8/fedfs-get-limited-nsdb-params.8.* +%{_mandir}/man8/fedfs-get-nsdb-params.8.* +%{_mandir}/man8/fedfs-lookup-junction.8.* +%{_mandir}/man8/fedfs-lookup-replication.8.* +%{_mandir}/man8/fedfs-null.8.* +%{_mandir}/man8/fedfs-set-nsdb-params.8.* +%{_mandir}/man8/nsdb-* + +%changelog +* Wed Apr 6 2016 Steve Dickson - 0.10.5-0 +- Updated to latest upstream release: 0.10.5 (bz 1277221) + +* Wed Oct 22 2014 Steve Dickson - 0.10.3-2 +- Reworked CFLAGS to put back execshield (bz 983257) + +* Tue Oct 21 2014 Steve Dickson - 0.10.3-1 +- Updated to latest upstream release: 0.10.3 (bz 1110228) +- Added the PIE and RELRO CFLAGS (bz 983257) + +* Sat Mar 8 2014 Steve Dickson - 0.10.0-1 +- Updated to latest upstream release: 0.10.0 (bz 1069971) + +* Fri Jan 24 2014 Daniel Mach - 0.9.2-4 +- Mass rebuild 2014-01-24 + +* Fri Dec 27 2013 Daniel Mach - 0.9.2-3 +- Mass rebuild 2013-12-27 + +* Wed Jul 10 2013 Chuck Lever - 0.9.2-2 +- nfs-utils is required for -client and -server operation +- fedfs-utils-server requires fedfs-utils-lib to resolve junctions +- update package descriptions + +* Tue Jun 25 2013 Chuck Lever - 0.9.2-1 +- update to fedfs-utils-0.9.2 +- installing fedfs-utils-client package should configure automounter +- find-debuginfo.sh sometimes fails during "fedpkg local" (bz977556) + +* Thu Jun 20 2013 Chuck Lever - 0.9.1-1 +- update to fedfs-utils-0.9.1. + +* Wed Mar 27 2013 Ian Kent - 0.9.0-2 +- Add missing changelog entry. + +* Wed Mar 27 2013 Ian Kent - 0.9.0-1 +- update to fedfs-utils-0.9.0. + +* Tue Feb 12 2013 Ian Kent - 0.8.0-11 +- change nsdbparams requires to include arch in requires. + +* Fri Jan 25 2013 Ian Kent - 0.8.0-10 +- remove .la libtool archive from devel package (bz889174). +- remove .a static library from devel package ((bz889174). +- make sub-package requires explicit. +- remove duplicate definition of fedfs-set-nsdb-params.8. + +* Mon Aug 27 2012 Ian Kent - 0.8.0-9 +- fix syntax of systemd scriplet macros (bz850396). + +* Mon Aug 27 2012 Ian Kent - 0.8.0-8 +- update systemd scriplet macros (bz850396). + +* Thu Aug 2 2012 Ian Kent - 0.8.0-7 +- some more spec file changes as detailed in the packaging guildlines. + +* Thu Aug 2 2012 Ian Kent - 0.8.0-6 +- add missing systemd scriplets. + +* Thu Aug 2 2012 Ian Kent - 0.8.0-5 +- move libnfsjunct to a lib package to avoid the devel package depending + on the server package. + +* Thu Jul 19 2012 Fedora Release Engineering - 0.8.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + +* Tue Jul 10 2012 Ian Kent - 0.8.0-2 +- Add fedfs ldap schema to docs of common package. + +* Tue Jul 10 2012 Ian Kent - 0.8.0-1 +- Update to latest upstream version. + +* Fri Jan 13 2012 Fedora Release Engineering - 0.7.3-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild + +* Mon Dec 5 2011 Ian Kent 0.7.3-2 +- add systemd-units to BuildRequires as per systemd doco. + +* Wed Nov 30 2011 Jeff Layton 0.7.3-1 +- update to 0.7.3 release + +* Fri Nov 04 2011 Jeff Layton 0.7.2-1 +- update to 0.7.2 release +- add systemd service file for rpc.fedfsd + +* Fri Sep 09 2011 Jeff Layton 0.7.0-2 +- incorporate review feedback by Volker Fröhlich + +* Tue Sep 06 2011 Jeff Layton 0.7.0-1 +- Initial package build +