From 4ee8d383df5c92f6a3055e4883ff2bfebc0d3927 Mon Sep 17 00:00:00 2001 From: Jason Date: Wed, 15 Mar 2017 08:59:13 -0500 Subject: [PATCH] Removed [[ ]] regex bash-isms Tested in RHEL7 accessing an Infoblox Trinzic appliance --- dns_infoblox.sh | 39 ++++++++++++++++++++++++--------------- 1 file changed, 24 insertions(+), 15 deletions(-) diff --git a/dns_infoblox.sh b/dns_infoblox.sh index d3490017..c16367b8 100644 --- a/dns_infoblox.sh +++ b/dns_infoblox.sh @@ -4,10 +4,15 @@ dns_infoblox_add() { fulldomain=$1 txtvalue=$2 + baseurlnObject="https://$Infoblox_Server/wapi/v2.2.2/record:txt?name=$fulldomain&text=$txtvalue" + _info "Using Infoblox API" + _debug fulldomain "$fulldomain" + _debug txtvalue "$txtvalue" + #_err "Not implemented!" if [ -z "$Infoblox_Creds" ] || [ -z "$Infoblox_Server" ]; then @@ -24,15 +29,15 @@ dns_infoblox_add() { result=`curl -k -u $Infoblox_Creds -X POST $baseurlnObject` -if [ $result =~ record:txt/.*:.*/default ]; then +if echo "$result" | grep -Eq 'record:txt/.*:.*/default'; then echo "Successfully created the txt record" return 0 -else +else echo "Error encountered during record addition" echo $result _err $result return 1 -fi +fi } @@ -40,38 +45,42 @@ dns_infoblox_rm() { fulldomain=$1 txtvalue=$2 + _info "Using Infoblox API" + _debug fulldomain "$fulldomain" + _debug txtvalue "$txtvalue" # Does the record exist? + baseurlnObject="https://$Infoblox_Server/wapi/v2.2.2/record:txt?name=$fulldomain&text=$txtvalue&_return_type=xml-pretty" + echo $baseurlnObject result=`curl -k -u $Infoblox_Creds -X GET $baseurlnObject` -if [ $result =~ record:txt/.*:.*/default ]; then +if echo $result | grep -Eq 'record:txt/.*:.*/default'; then # Extract object ref objRef=`grep -Po 'record:txt/.*:.*/default' <<< $result` objRmUrl="https://$Infoblox_Server/wapi/v2.2.2/$objRef" rmResult=`curl -k -u $Infoblox_Creds -X DELETE $objRmUrl` # Check if rm succeeded - if [ $rmResult =~ record:txt/.*:.*/default ]; then - echo "Successfully deleted $objRef" - return 0 - else - echo "Error occurred during txt record delete" - echo $rmResult - _err $rmResult - return 1 - fi -else + if echo "$rmResult" | grep -Eq 'record:txt/.*:.*/default'; then + echo "Successfully deleted $objRef" + return 0 + else + echo "Error occurred during txt record delete" + echo $rmResult + _err $rmResult + return 1 + fi +else echo "Record to delete didn't match an existing record" echo $result _err $result return 1 fi - } #################### Private functions below ##################################