diff options
| author | Meghana M <mmadhusu@redhat.com> | 2014-03-24 13:58:38 +0530 | 
|---|---|---|
| committer | Vijay Bellur <vbellur@redhat.com> | 2014-05-03 07:24:07 -0700 | 
| commit | 0088e318c1218191535ea0baa04b4fe858412f54 (patch) | |
| tree | 4ddcb20318affb12ae2470c4191805c1f4745141 /extras/hook-scripts/reset/post | |
| parent | 66f560e0071db84d430f38b996364f6b8c4f0f6d (diff) | |
cli/hooks : Add volume set options to enable/disable nfs-ganesha support.
1. gluster volume set nfs-ganesha.enable ON/OFF
If the option is set to ON, the volume field in the nfs-ganesha configuartion file is
edited. Gluster-nfs is disabled on that volume and the volume is exported using
nfs-ganesha.
2.gluster volume set nfs-ganesha.host IP
This is used to provide the IP of the nfs-ganesha host.
Note : nfs-ganesha.host MUST be set before using nfs-ganesha.enable ON
The switch from gluster-nfs to nfs-ganesha is mostly done by the hook-scripts
in the post phase of the 'set' option. As a result, gluster volume reset does not
function as it is expected to. By default, nfs-ganesha will be set to off but the
process  will not be killed.
Hence, a few changes have to be made post 'reset' option as well. Those changes
also have been added.
Change-Id: I7fdc14ee49d1724af96eda33c6a3ec08b1020788
BUG: 1092283
Signed-off-by: Meghana <mmadhusu@redhat.com>
Reviewed-on: http://review.gluster.org/7321
Reviewed-by: Raghavendra Talur <rtalur@redhat.com>
Reviewed-by: Santosh Pradhan <spradhan@redhat.com>
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Vijay Bellur <vbellur@redhat.com>
Diffstat (limited to 'extras/hook-scripts/reset/post')
| -rw-r--r-- | extras/hook-scripts/reset/post/Makefile.am | 1 | ||||
| -rwxr-xr-x | extras/hook-scripts/reset/post/S31ganesha-reset.sh | 38 | 
2 files changed, 39 insertions, 0 deletions
diff --git a/extras/hook-scripts/reset/post/Makefile.am b/extras/hook-scripts/reset/post/Makefile.am new file mode 100644 index 00000000000..fcdd8ab55ba --- /dev/null +++ b/extras/hook-scripts/reset/post/Makefile.am @@ -0,0 +1 @@ +EXTRA_DIST = S31ganesha-reset.sh diff --git a/extras/hook-scripts/reset/post/S31ganesha-reset.sh b/extras/hook-scripts/reset/post/S31ganesha-reset.sh new file mode 100755 index 00000000000..68411e4bd95 --- /dev/null +++ b/extras/hook-scripts/reset/post/S31ganesha-reset.sh @@ -0,0 +1,38 @@ +#/bin/bash +PROGNAME="Sganesha-reset" +OPTSPEC="volname:" +VOL= + +function parse_args () { +        ARGS=$(getopt -l $OPTSPEC  -o "o" -name $PROGNAME $@) +        eval set -- "$ARGS" +        case $1 in +            --volname) +               shift +               VOL=$1 +                ;; +        esac +} + +function is_volume_started () { +        volname=$1 +        echo "$(grep status /var/lib/glusterd/vols/"$volname"/info |\ +                cut -d"=" -f2)" +} + +parse_args $@ +if ps aux | grep -q "[g]anesha.nfsd" +        then +        kill -s TERM `cat /var/run/ganesha.pid` +        sleep 10 +        rm -rf /var/lib/ganesha/exports +        rm -rf /var/lib/ganesha/export_added +        sed -i /conf/d /var/lib/ganesha/nfs-ganesha.conf +        if [ "1" = $(is_volume_started "$VOL") ]; +                then +                gluster volume start $VOL force +        fi +fi + + +  | 
