Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
ruanhaishen
Acme.Sh
Commits
896dfe3d
Commit
896dfe3d
authored
Jun 17, 2017
by
neil
Committed by
GitHub
Jun 17, 2017
Browse files
Merge pull request #886 from Neilpang/dev
Dev
parents
c2b1e38d
6c4f3391
Changes
1
Hide whitespace changes
Inline
Side-by-side
dnsapi/dns_infoblox.sh
View file @
896dfe3d
...
...
@@ -9,7 +9,7 @@ dns_infoblox_add() {
## Nothing to see here, just some housekeeping
fulldomain
=
$1
txtvalue
=
$2
baseurlnObject
=
"https://
$Infoblox_Server
/wapi/v2.2.2/record:txt?name=
$fulldomain
&text=
$txtvalue
"
baseurlnObject
=
"https://
$Infoblox_Server
/wapi/v2.2.2/record:txt?name=
$fulldomain
&text=
$txtvalue
&view=
$Infoblox_View
"
_info
"Using Infoblox API"
_debug fulldomain
"
$fulldomain
"
...
...
@@ -19,14 +19,19 @@ dns_infoblox_add() {
if
[
-z
"
$Infoblox_Creds
"
]
||
[
-z
"
$Infoblox_Server
"
]
;
then
Infoblox_Creds
=
""
Infoblox_Server
=
""
_err
"You didn't specify the credentials
or
server yet (Infoblox_Creds
and
Infoblox_Server)."
_err
"Please set them via EXPORT ([username:password]
and
[ip or hostname]) and try again."
_err
"You didn't specify the credentials
,
server
or infoblox view
yet (Infoblox_Creds
,
Infoblox_Server
and Infoblox_View
)."
_err
"Please set them via EXPORT ([username:password]
,
[ip or hostname]) and try again."
return
1
fi
if
[
-z
"
$Infoblox_View
"
]
;
then
Infoblox_View
=
"default"
fi
## Save the credentials to the account file
_saveaccountconf Infoblox_Creds
"
$Infoblox_Creds
"
_saveaccountconf Infoblox_Server
"
$Infoblox_Server
"
_saveaccountconf Infoblox_View
"
$Infoblox_View
"
## Base64 encode the credentials
Infoblox_CredsEncoded
=
$(
printf
"%b"
"
$Infoblox_Creds
"
| _base64
)
...
...
@@ -39,7 +44,7 @@ dns_infoblox_add() {
result
=
$(
_post
""
"
$baseurlnObject
"
""
"POST"
)
## Let's see if we get something intelligible back from the unit
if
echo
"
$result
"
| egrep
'
record:txt/.*:.*/
default'
;
then
if
echo
"
$result
"
| egrep
"
record:txt/.*:.*/
$Infoblox_View
"
;
then
_info
"Successfully created the txt record"
return
0
else
...
...
@@ -68,18 +73,18 @@ dns_infoblox_rm() {
export
_H2
=
"Authorization: Basic
$Infoblox_CredsEncoded
"
## Does the record exist? Let's check.
baseurlnObject
=
"https://
$Infoblox_Server
/wapi/v2.2.2/record:txt?name=
$fulldomain
&text=
$txtvalue
&_return_type=xml-pretty"
baseurlnObject
=
"https://
$Infoblox_Server
/wapi/v2.2.2/record:txt?name=
$fulldomain
&text=
$txtvalue
&
view=
$Infoblox_View
&
_return_type=xml-pretty"
result
=
$(
_get
"
$baseurlnObject
"
)
## Let's see if we get something intelligible back from the grid
if
echo
"
$result
"
| egrep
'
record:txt/.*:.*/
default'
;
then
if
echo
"
$result
"
| egrep
"
record:txt/.*:.*/
$Infoblox_View
"
;
then
## Extract the object reference
objRef
=
$(
printf
"%b"
"
$result
"
| _egrep_o
'
record:txt/.*:.*/
default'
)
objRef
=
$(
printf
"%b"
"
$result
"
| _egrep_o
"
record:txt/.*:.*/
$Infoblox_View
"
)
objRmUrl
=
"https://
$Infoblox_Server
/wapi/v2.2.2/
$objRef
"
## Delete them! All the stale records!
rmResult
=
$(
_post
""
"
$objRmUrl
"
""
"DELETE"
)
## Let's see if that worked
if
echo
"
$rmResult
"
| egrep
'
record:txt/.*:.*/
default'
;
then
if
echo
"
$rmResult
"
| egrep
"
record:txt/.*:.*/
$Infoblox_View
"
;
then
_info
"Successfully deleted
$objRef
"
return
0
else
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment