ctdb-doc: Factor out grace period function
authorVinit Agnihotri <vagnihotri@ddn.com>
Fri, 27 Oct 2023 06:03:01 +0000 (23:03 -0700)
committerVolker Lendecke <vl@samba.org>
Wed, 6 Mar 2024 06:05:38 +0000 (06:05 +0000)
Signed-off-by: Vinit Agnihotri <vagnihotri@ddn.com>
Reviewed-by: Martin Schwenke <mschwenke@ddn.com>
Reviewed-by: Volker Lendecke <vl@samba.org>
ctdb/doc/examples/nfs-ganesha-callout

index aac301df5d4448f05cf869ab58ee6db57ead39a1..1605202c77bca0c8f59272aa907cee76cfead314 100755 (executable)
@@ -254,31 +254,38 @@ service_check ()
 
 #-------------------------------------------------
 
-nfs_releaseip ()
+grace_period()
 {
+       _arg="$1"
+
        if [ -x "/usr/bin/grace_period" ]; then
-               /usr/bin/grace_period "2:${2}"
+               /usr/bin/grace_period "$_arg"
        else
                dbus-send --print-reply --system --dest=org.ganesha.nfsd \
-                         /org/ganesha/nfsd/admin org.ganesha.nfsd.admin.grace \
-                         string:"2:${2}"
+                       /org/ganesha/nfsd/admin org.ganesha.nfsd.admin.grace \
+                       string:"$_arg"
        fi
 }
 
+nfs_releaseip()
+{
+       _ip="$2"
+
+       # NFS-Ganesha recovery code only processes items matching $_ip
+       grace_period "2:${_ip}"
+}
+
 nfs_takeip ()
 {
+       _ip="$2"
+
        case  $state_fs in
        glusterfs)
-               check_ln "$NODESTATEDIR" "${GANSTATEDIR}/${2}"
+               check_ln "$NODESTATEDIR" "${GANSTATEDIR}/${_ip}"
                ;;
        esac
-       if [ -x "/usr/bin/grace_period" ]; then
-               /usr/bin/grace_period "5:${2}"
-       else
-               dbus-send --print-reply --system --dest=org.ganesha.nfsd \
-                         /org/ganesha/nfsd/admin org.ganesha.nfsd.admin.grace \
-                         string:"5:${2}"
-       fi
+
+       grace_period "5:${_ip}"
 }
 
 ##################################################