diff options
Diffstat (limited to 'extras')
| -rwxr-xr-x | extras/ganesha/scripts/create-export-ganesha.sh | 54 | ||||
| -rwxr-xr-x | extras/ganesha/scripts/dbus-send.sh | 59 | 
2 files changed, 29 insertions, 84 deletions
diff --git a/extras/ganesha/scripts/create-export-ganesha.sh b/extras/ganesha/scripts/create-export-ganesha.sh index a1a35dba58a..1ffba427457 100755 --- a/extras/ganesha/scripts/create-export-ganesha.sh +++ b/extras/ganesha/scripts/create-export-ganesha.sh @@ -21,14 +21,17 @@ if [ -f /etc/default/ganesha ]  fi  GANESHA_DIR=${1%/} -VOL=$2 -CONF= +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  } @@ -40,28 +43,6 @@ if [ ! -d "$GANESHA_DIR/exports" ];          check_cmd_status `echo $?`  fi -function find_rhel7_conf -{ - while [[ $# > 0 ]] -        do -                key="$1" -                case $key in -                        -f) -                         CONFFILE="$2" -                         ;; -                         *) -                         ;; -                 esac -                 shift -         done -} - -if [ -z $CONFFILE ]; then -        find_rhel7_conf $OPTIONS - -fi -CONF=${CONFFILE:-/etc/ganesha/ganesha.conf} -  function write_conf()  {  echo -e "# WARNING : Using Gluster CLI will overwrite manual @@ -85,9 +66,26 @@ echo '      Transports = "UDP","TCP";'  echo '      SecType = "sys";'  echo "     }"  } - -write_conf $@ > $GANESHA_DIR/exports/export.$VOL.conf -if ! (cat $CONF | grep  $VOL.conf\"$ ) +if [ "$OPTION" = "on" ];  then -echo "%include \"$GANESHA_DIR/exports/export.$VOL.conf\"" >> $CONF +        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 index 14af095464d..c071d03480c 100755 --- a/extras/ganesha/scripts/dbus-send.sh +++ b/extras/ganesha/scripts/dbus-send.sh @@ -15,71 +15,22 @@ if [ -f /etc/default/ganesha ]          . /etc/default/ganesha  fi -declare -i EXPORT_ID  GANESHA_DIR=${1%/}  OPTION=$2  VOL=$3 -CONF= - -function find_rhel7_conf -{ - while [[ $# > 0 ]] -        do -                key="$1" -                case $key in -                        -f) -                         CONFFILE="$2" -                         break; -                         ;; -                         *) -                         ;; -                 esac -                 shift -         done -} - -if [ -z $CONFFILE ] -        then -        find_rhel7_conf $OPTIONS - -fi - -CONF=${CONFFILE:-/etc/ganesha/ganesha.conf} +CONF=$GANESHA_DIR"/ganesha.conf"  function check_cmd_status()  {          if [ "$1" != "0" ] -                 then -                 rm -rf $GANESHA_DIR/exports/export.$VOL.conf -                 sed -i /$VOL.conf/d $CONF -                 exit 1 +        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()  { -        count=`ls -l $GANESHA_DIR/exports/*.conf | wc -l` -        if [ "$count" = "1" ] ; -                then -                EXPORT_ID=2 -        else -        #if [ -s /var/lib/ganesha/export_removed ]; -        #               then -        #               EXPORT_ID=`head -1 /var/lib/ganesha/export_removed` -        #               sed -i -e "1d" /var/lib/ganesha/export_removed -        #               else - -                 EXPORT_ID=`cat $GANESHA_DIR/.export_added` -                 check_cmd_status `echo $?` -                 EXPORT_ID=EXPORT_ID+1 -        #fi -        fi -        echo $EXPORT_ID > $GANESHA_DIR/.export_added -        check_cmd_status `echo $?` -        sed -i s/Export_Id.*/"Export_Id= $EXPORT_ID ;"/ \ -$GANESHA_DIR/exports/export.$VOL.conf -        check_cmd_status `echo $?`          dbus-send  --system \  --dest=org.ganesha.nfsd  /org/ganesha/nfsd/ExportMgr \  org.ganesha.nfsd.exportmgr.AddExport  string:$GANESHA_DIR/exports/export.$VOL.conf \ @@ -92,14 +43,10 @@ function dynamic_export_remove()  {          removed_id=`cat $GANESHA_DIR/exports/export.$VOL.conf |\  grep Export_Id | awk -F"[=,;]" '{print$2}'| tr -d '[[:space:]]'` -        check_cmd_status `echo $?`          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 $?` -        sed -i /$VOL.conf/d $CONF -        rm -rf $GANESHA_DIR/exports/export.$VOL.conf -  }  if [ "$OPTION" = "on" ];  | 
