You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
575 lines
19 KiB
575 lines
19 KiB
From 1fb89973551937f34f24b45e07072a6ce6c30ff9 Mon Sep 17 00:00:00 2001 |
|
From: Jiffin Tony Thottan <jthottan@redhat.com> |
|
Date: Mon, 16 Oct 2017 14:18:31 +0530 |
|
Subject: [PATCH 053/124] Revert "packaging: (ganesha) remove glusterfs-ganesha |
|
subpackage and related files)" |
|
|
|
This reverts commit 0cf2963f12a8b540a7042605d8c79f638fdf6cee. |
|
|
|
Label: DOWNSTREAM ONLY |
|
|
|
Change-Id: Id6e7585021bd4dd78a59580cfa4838bdd4e539a0 |
|
Signed-off-by: Jiffin Tony Thottan <jthottan@redhat.com> |
|
Reviewed-on: https://code.engineering.redhat.com/gerrit/167102 |
|
Reviewed-by: Soumya Koduri <skoduri@redhat.com> |
|
Tested-by: RHGS Build Bot <nigelb@redhat.com> |
|
Reviewed-by: Sunil Kumar Heggodu Gopala Acharya <sheggodu@redhat.com> |
|
--- |
|
configure.ac | 3 + |
|
extras/Makefile.am | 3 +- |
|
extras/ganesha/Makefile.am | 2 + |
|
extras/ganesha/config/Makefile.am | 4 + |
|
extras/ganesha/config/ganesha-ha.conf.sample | 19 ++++ |
|
extras/ganesha/scripts/Makefile.am | 4 + |
|
extras/ganesha/scripts/create-export-ganesha.sh | 91 +++++++++++++++ |
|
extras/ganesha/scripts/dbus-send.sh | 60 ++++++++++ |
|
extras/ganesha/scripts/generate-epoch.py | 48 ++++++++ |
|
extras/hook-scripts/start/post/Makefile.am | 2 +- |
|
extras/hook-scripts/start/post/S31ganesha-start.sh | 122 +++++++++++++++++++++ |
|
glusterfs.spec.in | 44 +++++++- |
|
12 files changed, 396 insertions(+), 6 deletions(-) |
|
create mode 100644 extras/ganesha/Makefile.am |
|
create mode 100644 extras/ganesha/config/Makefile.am |
|
create mode 100644 extras/ganesha/config/ganesha-ha.conf.sample |
|
create mode 100644 extras/ganesha/scripts/Makefile.am |
|
create mode 100755 extras/ganesha/scripts/create-export-ganesha.sh |
|
create mode 100755 extras/ganesha/scripts/dbus-send.sh |
|
create mode 100755 extras/ganesha/scripts/generate-epoch.py |
|
create mode 100755 extras/hook-scripts/start/post/S31ganesha-start.sh |
|
|
|
diff --git a/configure.ac b/configure.ac |
|
index 0d06f5a..125ae29 100644 |
|
--- a/configure.ac |
|
+++ b/configure.ac |
|
@@ -196,6 +196,9 @@ AC_CONFIG_FILES([Makefile |
|
extras/init.d/glustereventsd-Debian |
|
extras/init.d/glustereventsd-Redhat |
|
extras/init.d/glustereventsd-FreeBSD |
|
+ extras/ganesha/Makefile |
|
+ extras/ganesha/config/Makefile |
|
+ extras/ganesha/scripts/Makefile |
|
extras/systemd/Makefile |
|
extras/systemd/glusterd.service |
|
extras/systemd/glustereventsd.service |
|
diff --git a/extras/Makefile.am b/extras/Makefile.am |
|
index ff5ca9b..983f014 100644 |
|
--- a/extras/Makefile.am |
|
+++ b/extras/Makefile.am |
|
@@ -11,7 +11,8 @@ EditorModedir = $(docdir) |
|
EditorMode_DATA = glusterfs-mode.el glusterfs.vim |
|
|
|
SUBDIRS = init.d systemd benchmarking hook-scripts $(OCF_SUBDIR) LinuxRPM \ |
|
- $(GEOREP_EXTRAS_SUBDIR) snap_scheduler firewalld cliutils python |
|
+ $(GEOREP_EXTRAS_SUBDIR) snap_scheduler firewalld cliutils python \ |
|
+ ganesha |
|
|
|
confdir = $(sysconfdir)/glusterfs |
|
if WITH_SERVER |
|
diff --git a/extras/ganesha/Makefile.am b/extras/ganesha/Makefile.am |
|
new file mode 100644 |
|
index 0000000..542de68 |
|
--- /dev/null |
|
+++ b/extras/ganesha/Makefile.am |
|
@@ -0,0 +1,2 @@ |
|
+SUBDIRS = scripts config |
|
+CLEANFILES = |
|
diff --git a/extras/ganesha/config/Makefile.am b/extras/ganesha/config/Makefile.am |
|
new file mode 100644 |
|
index 0000000..c729273 |
|
--- /dev/null |
|
+++ b/extras/ganesha/config/Makefile.am |
|
@@ -0,0 +1,4 @@ |
|
+EXTRA_DIST= ganesha-ha.conf.sample |
|
+ |
|
+confdir = $(sysconfdir)/ganesha |
|
+conf_DATA = ganesha-ha.conf.sample |
|
diff --git a/extras/ganesha/config/ganesha-ha.conf.sample b/extras/ganesha/config/ganesha-ha.conf.sample |
|
new file mode 100644 |
|
index 0000000..c22892b |
|
--- /dev/null |
|
+++ b/extras/ganesha/config/ganesha-ha.conf.sample |
|
@@ -0,0 +1,19 @@ |
|
+# Name of the HA cluster created. |
|
+# must be unique within the subnet |
|
+HA_NAME="ganesha-ha-360" |
|
+# |
|
+# N.B. you may use short names or long names; you may not use IP addrs. |
|
+# Once you select one, stay with it as it will be mildly unpleasant to |
|
+# clean up if you switch later on. Ensure that all names - short and/or |
|
+# long - are in DNS or /etc/hosts on all machines in the cluster. |
|
+# |
|
+# The subset of nodes of the Gluster Trusted Pool that form the ganesha |
|
+# HA cluster. Hostname is specified. |
|
+HA_CLUSTER_NODES="server1,server2,..." |
|
+#HA_CLUSTER_NODES="server1.lab.redhat.com,server2.lab.redhat.com,..." |
|
+# |
|
+# Virtual IPs for each of the nodes specified above. |
|
+VIP_server1="10.0.2.1" |
|
+VIP_server2="10.0.2.2" |
|
+#VIP_server1_lab_redhat_com="10.0.2.1" |
|
+#VIP_server2_lab_redhat_com="10.0.2.2" |
|
diff --git a/extras/ganesha/scripts/Makefile.am b/extras/ganesha/scripts/Makefile.am |
|
new file mode 100644 |
|
index 0000000..00a2c45 |
|
--- /dev/null |
|
+++ b/extras/ganesha/scripts/Makefile.am |
|
@@ -0,0 +1,4 @@ |
|
+EXTRA_DIST= create-export-ganesha.sh generate-epoch.py dbus-send.sh |
|
+ |
|
+scriptsdir = $(libexecdir)/ganesha |
|
+scripts_SCRIPTS = create-export-ganesha.sh dbus-send.sh generate-epoch.py |
|
diff --git a/extras/ganesha/scripts/create-export-ganesha.sh b/extras/ganesha/scripts/create-export-ganesha.sh |
|
new file mode 100755 |
|
index 0000000..1ffba42 |
|
--- /dev/null |
|
+++ b/extras/ganesha/scripts/create-export-ganesha.sh |
|
@@ -0,0 +1,91 @@ |
|
+#!/bin/bash |
|
+ |
|
+#This script is called by glusterd when the user |
|
+#tries to export a volume via NFS-Ganesha. |
|
+#An export file specific to a volume |
|
+#is created in GANESHA_DIR/exports. |
|
+ |
|
+# Try loading the config from any of the distro |
|
+# specific configuration locations |
|
+if [ -f /etc/sysconfig/ganesha ] |
|
+ then |
|
+ . /etc/sysconfig/ganesha |
|
+fi |
|
+if [ -f /etc/conf.d/ganesha ] |
|
+ then |
|
+ . /etc/conf.d/ganesha |
|
+fi |
|
+if [ -f /etc/default/ganesha ] |
|
+ then |
|
+ . /etc/default/ganesha |
|
+fi |
|
+ |
|
+GANESHA_DIR=${1%/} |
|
+OPTION=$2 |
|
+VOL=$3 |
|
+CONF=$GANESHA_DIR"/ganesha.conf" |
|
+declare -i EXPORT_ID |
|
+ |
|
+function check_cmd_status() |
|
+{ |
|
+ if [ "$1" != "0" ] |
|
+ then |
|
+ rm -rf $GANESHA_DIR/exports/export.$VOL.conf |
|
+ sed -i /$VOL.conf/d $CONF |
|
+ exit 1 |
|
+ fi |
|
+} |
|
+ |
|
+ |
|
+if [ ! -d "$GANESHA_DIR/exports" ]; |
|
+ then |
|
+ mkdir $GANESHA_DIR/exports |
|
+ check_cmd_status `echo $?` |
|
+fi |
|
+ |
|
+function write_conf() |
|
+{ |
|
+echo -e "# WARNING : Using Gluster CLI will overwrite manual |
|
+# changes made to this file. To avoid it, edit the |
|
+# file and run ganesha-ha.sh --refresh-config." |
|
+ |
|
+echo "EXPORT{" |
|
+echo " Export_Id = 2;" |
|
+echo " Path = \"/$VOL\";" |
|
+echo " FSAL {" |
|
+echo " name = "GLUSTER";" |
|
+echo " hostname=\"localhost\";" |
|
+echo " volume=\"$VOL\";" |
|
+echo " }" |
|
+echo " Access_type = RW;" |
|
+echo " Disable_ACL = true;" |
|
+echo ' Squash="No_root_squash";' |
|
+echo " Pseudo=\"/$VOL\";" |
|
+echo ' Protocols = "3", "4" ;' |
|
+echo ' Transports = "UDP","TCP";' |
|
+echo ' SecType = "sys";' |
|
+echo " }" |
|
+} |
|
+if [ "$OPTION" = "on" ]; |
|
+then |
|
+ if ! (cat $CONF | grep $VOL.conf\"$ ) |
|
+ then |
|
+ write_conf $@ > $GANESHA_DIR/exports/export.$VOL.conf |
|
+ echo "%include \"$GANESHA_DIR/exports/export.$VOL.conf\"" >> $CONF |
|
+ count=`ls -l $GANESHA_DIR/exports/*.conf | wc -l` |
|
+ if [ "$count" = "1" ] ; then |
|
+ EXPORT_ID=2 |
|
+ else |
|
+ EXPORT_ID=`cat $GANESHA_DIR/.export_added` |
|
+ check_cmd_status `echo $?` |
|
+ EXPORT_ID=EXPORT_ID+1 |
|
+ sed -i s/Export_Id.*/"Export_Id= $EXPORT_ID ;"/ \ |
|
+ $GANESHA_DIR/exports/export.$VOL.conf |
|
+ check_cmd_status `echo $?` |
|
+ fi |
|
+ echo $EXPORT_ID > $GANESHA_DIR/.export_added |
|
+ fi |
|
+else |
|
+ rm -rf $GANESHA_DIR/exports/export.$VOL.conf |
|
+ sed -i /$VOL.conf/d $CONF |
|
+fi |
|
diff --git a/extras/ganesha/scripts/dbus-send.sh b/extras/ganesha/scripts/dbus-send.sh |
|
new file mode 100755 |
|
index 0000000..ec8d948 |
|
--- /dev/null |
|
+++ b/extras/ganesha/scripts/dbus-send.sh |
|
@@ -0,0 +1,60 @@ |
|
+#!/bin/bash |
|
+ |
|
+# Try loading the config from any of the distro |
|
+# specific configuration locations |
|
+if [ -f /etc/sysconfig/ganesha ] |
|
+ then |
|
+ . /etc/sysconfig/ganesha |
|
+fi |
|
+if [ -f /etc/conf.d/ganesha ] |
|
+ then |
|
+ . /etc/conf.d/ganesha |
|
+fi |
|
+if [ -f /etc/default/ganesha ] |
|
+ then |
|
+ . /etc/default/ganesha |
|
+fi |
|
+ |
|
+GANESHA_DIR=${1%/} |
|
+OPTION=$2 |
|
+VOL=$3 |
|
+CONF=$GANESHA_DIR"/ganesha.conf" |
|
+ |
|
+function check_cmd_status() |
|
+{ |
|
+ if [ "$1" != "0" ] |
|
+ then |
|
+ logger "dynamic export failed on node :${hostname -s}" |
|
+ fi |
|
+} |
|
+ |
|
+#This function keeps track of export IDs and increments it with every new entry |
|
+function dynamic_export_add() |
|
+{ |
|
+ dbus-send --system \ |
|
+--dest=org.ganesha.nfsd /org/ganesha/nfsd/ExportMgr \ |
|
+org.ganesha.nfsd.exportmgr.AddExport string:$GANESHA_DIR/exports/export.$VOL.conf \ |
|
+string:"EXPORT(Path=/$VOL)" |
|
+ check_cmd_status `echo $?` |
|
+} |
|
+ |
|
+#This function removes an export dynamically(uses the export_id of the export) |
|
+function dynamic_export_remove() |
|
+{ |
|
+ removed_id=`cat $GANESHA_DIR/exports/export.$VOL.conf |\ |
|
+grep Export_Id | awk -F"[=,;]" '{print$2}'| tr -d '[[:space:]]'` |
|
+ dbus-send --print-reply --system \ |
|
+--dest=org.ganesha.nfsd /org/ganesha/nfsd/ExportMgr \ |
|
+org.ganesha.nfsd.exportmgr.RemoveExport uint16:$removed_id |
|
+ check_cmd_status `echo $?` |
|
+} |
|
+ |
|
+if [ "$OPTION" = "on" ]; |
|
+then |
|
+ dynamic_export_add $@ |
|
+fi |
|
+ |
|
+if [ "$OPTION" = "off" ]; |
|
+then |
|
+ dynamic_export_remove $@ |
|
+fi |
|
diff --git a/extras/ganesha/scripts/generate-epoch.py b/extras/ganesha/scripts/generate-epoch.py |
|
new file mode 100755 |
|
index 0000000..5db5e56 |
|
--- /dev/null |
|
+++ b/extras/ganesha/scripts/generate-epoch.py |
|
@@ -0,0 +1,48 @@ |
|
+#!/usr/bin/python |
|
+# |
|
+# Copyright (c) 2016 Red Hat, Inc. <http://www.redhat.com> |
|
+# This file is part of GlusterFS. |
|
+# |
|
+# This file is licensed to you under your choice of the GNU Lesser |
|
+# General Public License, version 3 or any later version (LGPLv3 or |
|
+# later), or the GNU General Public License, version 2 (GPLv2), in all |
|
+# cases as published by the Free Software Foundation. |
|
+# |
|
+# Generates unique epoch value on each gluster node to be used by |
|
+# nfs-ganesha service on that node. |
|
+# |
|
+# Configure 'EPOCH_EXEC' option to this script path in |
|
+# '/etc/sysconfig/ganesha' file used by nfs-ganesha service. |
|
+# |
|
+# Construct epoch as follows - |
|
+# first 32-bit contains the now() time |
|
+# rest 32-bit value contains the local glusterd node uuid |
|
+ |
|
+import time |
|
+import binascii |
|
+ |
|
+# Calculate the now() time into a 64-bit integer value |
|
+def epoch_now(): |
|
+ epoch_time = int(time.mktime(time.localtime())) << 32 |
|
+ return epoch_time |
|
+ |
|
+# Read glusterd UUID and extract first 32-bit of it |
|
+def epoch_uuid(): |
|
+ file_name = '/var/lib/glusterd/glusterd.info' |
|
+ |
|
+ for line in open(file_name): |
|
+ if "UUID" in line: |
|
+ glusterd_uuid = line.split('=')[1].strip() |
|
+ |
|
+ uuid_bin = binascii.unhexlify(glusterd_uuid.replace("-","")) |
|
+ |
|
+ epoch_uuid = int(uuid_bin.encode('hex'), 32) & 0xFFFF0000 |
|
+ return epoch_uuid |
|
+ |
|
+# Construct epoch as follows - |
|
+# first 32-bit contains the now() time |
|
+# rest 32-bit value contains the local glusterd node uuid |
|
+epoch = (epoch_now() | epoch_uuid()) |
|
+print str(epoch) |
|
+ |
|
+exit(0) |
|
diff --git a/extras/hook-scripts/start/post/Makefile.am b/extras/hook-scripts/start/post/Makefile.am |
|
index e32546d..792019d 100644 |
|
--- a/extras/hook-scripts/start/post/Makefile.am |
|
+++ b/extras/hook-scripts/start/post/Makefile.am |
|
@@ -1,4 +1,4 @@ |
|
-EXTRA_DIST = S29CTDBsetup.sh S30samba-start.sh |
|
+EXTRA_DIST = S29CTDBsetup.sh S30samba-start.sh S31ganesha-start.sh |
|
|
|
hookdir = $(GLUSTERD_WORKDIR)/hooks/1/start/post/ |
|
if WITH_SERVER |
|
diff --git a/extras/hook-scripts/start/post/S31ganesha-start.sh b/extras/hook-scripts/start/post/S31ganesha-start.sh |
|
new file mode 100755 |
|
index 0000000..90ba6bc |
|
--- /dev/null |
|
+++ b/extras/hook-scripts/start/post/S31ganesha-start.sh |
|
@@ -0,0 +1,122 @@ |
|
+#!/bin/bash |
|
+PROGNAME="Sganesha-start" |
|
+OPTSPEC="volname:,gd-workdir:" |
|
+VOL= |
|
+declare -i EXPORT_ID |
|
+ganesha_key="ganesha.enable" |
|
+GANESHA_DIR="/var/run/gluster/shared_storage/nfs-ganesha" |
|
+CONF1="$GANESHA_DIR/ganesha.conf" |
|
+GLUSTERD_WORKDIR= |
|
+ |
|
+function parse_args () |
|
+{ |
|
+ ARGS=$(getopt -l $OPTSPEC -o "o" -name $PROGNAME $@) |
|
+ eval set -- "$ARGS" |
|
+ |
|
+ while true; do |
|
+ case $1 in |
|
+ --volname) |
|
+ shift |
|
+ VOL=$1 |
|
+ ;; |
|
+ --gd-workdir) |
|
+ shift |
|
+ GLUSTERD_WORKDIR=$1 |
|
+ ;; |
|
+ *) |
|
+ shift |
|
+ break |
|
+ ;; |
|
+ esac |
|
+ shift |
|
+ done |
|
+} |
|
+ |
|
+ |
|
+ |
|
+#This function generates a new export entry as export.volume_name.conf |
|
+function write_conf() |
|
+{ |
|
+echo -e "# WARNING : Using Gluster CLI will overwrite manual |
|
+# changes made to this file. To avoid it, edit the |
|
+# file, copy it over to all the NFS-Ganesha nodes |
|
+# and run ganesha-ha.sh --refresh-config." |
|
+ |
|
+echo "EXPORT{" |
|
+echo " Export_Id = 2;" |
|
+echo " Path = \"/$VOL\";" |
|
+echo " FSAL {" |
|
+echo " name = \"GLUSTER\";" |
|
+echo " hostname=\"localhost\";" |
|
+echo " volume=\"$VOL\";" |
|
+echo " }" |
|
+echo " Access_type = RW;" |
|
+echo " Disable_ACL = true;" |
|
+echo " Squash=\"No_root_squash\";" |
|
+echo " Pseudo=\"/$VOL\";" |
|
+echo " Protocols = \"3\", \"4\" ;" |
|
+echo " Transports = \"UDP\",\"TCP\";" |
|
+echo " SecType = \"sys\";" |
|
+echo "}" |
|
+} |
|
+ |
|
+#It adds the export dynamically by sending dbus signals |
|
+function export_add() |
|
+{ |
|
+ dbus-send --print-reply --system --dest=org.ganesha.nfsd \ |
|
+/org/ganesha/nfsd/ExportMgr org.ganesha.nfsd.exportmgr.AddExport \ |
|
+string:$GANESHA_DIR/exports/export.$VOL.conf string:"EXPORT(Export_Id=$EXPORT_ID)" |
|
+ |
|
+} |
|
+ |
|
+# based on src/scripts/ganeshactl/Ganesha/export_mgr.py |
|
+function is_exported() |
|
+{ |
|
+ local volume="${1}" |
|
+ |
|
+ dbus-send --type=method_call --print-reply --system \ |
|
+ --dest=org.ganesha.nfsd /org/ganesha/nfsd/ExportMgr \ |
|
+ org.ganesha.nfsd.exportmgr.ShowExports \ |
|
+ | grep -w -q "/${volume}" |
|
+ |
|
+ return $? |
|
+} |
|
+ |
|
+# Check the info file (contains the volume options) to see if Ganesha is |
|
+# enabled for this volume. |
|
+function ganesha_enabled() |
|
+{ |
|
+ local volume="${1}" |
|
+ local info_file="${GLUSTERD_WORKDIR}/vols/${VOL}/info" |
|
+ local enabled="off" |
|
+ |
|
+ enabled=$(grep -w ${ganesha_key} ${info_file} | cut -d"=" -f2) |
|
+ |
|
+ [ "${enabled}" == "on" ] |
|
+ |
|
+ return $? |
|
+} |
|
+ |
|
+parse_args $@ |
|
+ |
|
+if ganesha_enabled ${VOL} && ! is_exported ${VOL} |
|
+then |
|
+ if [ ! -e ${GANESHA_DIR}/exports/export.${VOL}.conf ] |
|
+ then |
|
+ #Remove export entry from nfs-ganesha.conf |
|
+ sed -i /$VOL.conf/d $CONF1 |
|
+ write_conf ${VOL} > ${GANESHA_DIR}/exports/export.${VOL}.conf |
|
+ EXPORT_ID=`cat $GANESHA_DIR/.export_added` |
|
+ EXPORT_ID=EXPORT_ID+1 |
|
+ echo $EXPORT_ID > $GANESHA_DIR/.export_added |
|
+ sed -i s/Export_Id.*/"Export_Id=$EXPORT_ID;"/ \ |
|
+ $GANESHA_DIR/exports/export.$VOL.conf |
|
+ echo "%include \"$GANESHA_DIR/exports/export.$VOL.conf\"" >> $CONF1 |
|
+ else |
|
+ EXPORT_ID=$(grep ^[[:space:]]*Export_Id $GANESHA_DIR/exports/export.$VOL.conf |\ |
|
+ awk -F"[=,;]" '{print $2}' | tr -d '[[:space:]]') |
|
+ fi |
|
+ export_add $VOL |
|
+fi |
|
+ |
|
+exit 0 |
|
diff --git a/glusterfs.spec.in b/glusterfs.spec.in |
|
index 0d57b49..dd7438c 100644 |
|
--- a/glusterfs.spec.in |
|
+++ b/glusterfs.spec.in |
|
@@ -299,7 +299,6 @@ Obsoletes: hekafs |
|
Obsoletes: %{name}-common < %{version}-%{release} |
|
Obsoletes: %{name}-core < %{version}-%{release} |
|
Obsoletes: %{name}-ufo |
|
-Obsoletes: %{name}-ganesha |
|
%if ( 0%{!?_with_gnfs:1} ) |
|
Obsoletes: %{name}-gnfs |
|
%endif |
|
@@ -455,6 +454,30 @@ is in user space and easily manageable. |
|
This package provides support to FUSE based clients and inlcudes the |
|
glusterfs(d) binary. |
|
|
|
+%if ( 0%{!?_without_server:1} ) |
|
+%package ganesha |
|
+Summary: NFS-Ganesha configuration |
|
+Group: Applications/File |
|
+ |
|
+Requires: %{name}-server%{?_isa} = %{version}-%{release} |
|
+Requires: nfs-ganesha-gluster, pcs, dbus |
|
+%if ( 0%{?rhel} && 0%{?rhel} == 6 ) |
|
+Requires: cman, pacemaker, corosync |
|
+%endif |
|
+ |
|
+%description ganesha |
|
+GlusterFS is a distributed file-system capable of scaling to several |
|
+petabytes. It aggregates various storage bricks over Infiniband RDMA |
|
+or TCP/IP interconnect into one large parallel network file |
|
+system. GlusterFS is one of the most sophisticated file systems in |
|
+terms of features and extensibility. It borrows a powerful concept |
|
+called Translators from GNU Hurd kernel. Much of the code in GlusterFS |
|
+is in user space and easily manageable. |
|
+ |
|
+This package provides the configuration and related files for using |
|
+NFS-Ganesha as the NFS server using GlusterFS |
|
+%endif |
|
+ |
|
%if ( 0%{!?_without_georeplication:1} ) |
|
%package geo-replication |
|
Summary: GlusterFS Geo-replication |
|
@@ -1111,6 +1134,12 @@ exit 0 |
|
%endif |
|
%endif |
|
|
|
+%if ( 0%{?_without_server:1} ) |
|
+#exclude ganesha related files |
|
+%exclude %{_sysconfdir}/ganesha/* |
|
+%exclude %{_libexecdir}/ganesha/* |
|
+%endif |
|
+ |
|
%files api |
|
%exclude %{_libdir}/*.so |
|
# libgfapi files |
|
@@ -1273,6 +1302,12 @@ exit 0 |
|
%exclude %{_datadir}/glusterfs/tests/vagrant |
|
%endif |
|
|
|
+%if ( 0%{!?_without_server:1} ) |
|
+%files ganesha |
|
+%{_sysconfdir}/ganesha/* |
|
+%{_libexecdir}/ganesha/* |
|
+%endif |
|
+ |
|
%if ( 0%{!?_without_ocf:1} ) |
|
%files resource-agents |
|
# /usr/lib is the standard for OCF, also on x86_64 |
|
@@ -1396,6 +1431,7 @@ exit 0 |
|
%dir %attr(0755,-,-) %{_sharedstatedir}/glusterd/hooks/1/start/post |
|
%attr(0755,-,-) %{_sharedstatedir}/glusterd/hooks/1/start/post/S29CTDBsetup.sh |
|
%attr(0755,-,-) %{_sharedstatedir}/glusterd/hooks/1/start/post/S30samba-start.sh |
|
+ %attr(0755,-,-) %{_sharedstatedir}/glusterd/hooks/1/start/post/S31ganesha-start.sh |
|
%ghost %dir %attr(0755,-,-) %{_sharedstatedir}/glusterd/hooks/1/start/pre |
|
%dir %attr(0755,-,-) %{_sharedstatedir}/glusterd/hooks/1/stop |
|
%ghost %dir %attr(0755,-,-) %{_sharedstatedir}/glusterd/hooks/1/stop/post |
|
@@ -1868,6 +1904,9 @@ fi |
|
%endif |
|
|
|
%changelog |
|
+* Fri Apr 5 2019 Jiffin Tony Thottan <jthottan@redhat.com> |
|
+- Adding ganesha bits back in gluster repository |
|
+ |
|
* Wed Mar 6 2019 Kaleb S. KEITHLEY <kkeithle@redhat.com> |
|
- remove unneeded ldconfig in scriptlets |
|
- reported by Igor Gnatenko in Fedora |
|
@@ -1960,9 +1999,6 @@ fi |
|
* Thu Feb 16 2017 Niels de Vos <ndevos@redhat.com> |
|
- Obsolete and Provide python-gluster for upgrading from glusterfs < 3.10 |
|
|
|
-* Tue Feb 7 2017 Kaleb S. KEITHLEY <kkeithle@redhat.com> |
|
-- remove ganesha (#1418417) |
|
- |
|
* Wed Feb 1 2017 Poornima G <pgurusid@redhat.com> |
|
- Install /var/lib/glusterd/groups/metadata-cache by default |
|
|
|
-- |
|
1.8.3.1 |
|
|
|
|