Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
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() {
...
@@ -9,7 +9,7 @@ dns_infoblox_add() {
## Nothing to see here, just some housekeeping
## Nothing to see here, just some housekeeping
fulldomain
=
$1
fulldomain
=
$1
txtvalue
=
$2
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"
_info
"Using Infoblox API"
_debug fulldomain
"
$fulldomain
"
_debug fulldomain
"
$fulldomain
"
...
@@ -19,14 +19,19 @@ dns_infoblox_add() {
...
@@ -19,14 +19,19 @@ dns_infoblox_add() {
if
[
-z
"
$Infoblox_Creds
"
]
||
[
-z
"
$Infoblox_Server
"
]
;
then
if
[
-z
"
$Infoblox_Creds
"
]
||
[
-z
"
$Infoblox_Server
"
]
;
then
Infoblox_Creds
=
""
Infoblox_Creds
=
""
Infoblox_Server
=
""
Infoblox_Server
=
""
_err
"You didn't specify the credentials
or
server yet (Infoblox_Creds
and
Infoblox_Server)."
_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]
and
[ip or hostname]) and try again."
_err
"Please set them via EXPORT ([username:password]
,
[ip or hostname]) and try again."
return
1
return
1
fi
fi
if
[
-z
"
$Infoblox_View
"
]
;
then
Infoblox_View
=
"default"
fi
## Save the credentials to the account file
## Save the credentials to the account file
_saveaccountconf Infoblox_Creds
"
$Infoblox_Creds
"
_saveaccountconf Infoblox_Creds
"
$Infoblox_Creds
"
_saveaccountconf Infoblox_Server
"
$Infoblox_Server
"
_saveaccountconf Infoblox_Server
"
$Infoblox_Server
"
_saveaccountconf Infoblox_View
"
$Infoblox_View
"
## Base64 encode the credentials
## Base64 encode the credentials
Infoblox_CredsEncoded
=
$(
printf
"%b"
"
$Infoblox_Creds
"
| _base64
)
Infoblox_CredsEncoded
=
$(
printf
"%b"
"
$Infoblox_Creds
"
| _base64
)
...
@@ -39,7 +44,7 @@ dns_infoblox_add() {
...
@@ -39,7 +44,7 @@ dns_infoblox_add() {
result
=
$(
_post
""
"
$baseurlnObject
"
""
"POST"
)
result
=
$(
_post
""
"
$baseurlnObject
"
""
"POST"
)
## Let's see if we get something intelligible back from the unit
## 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"
_info
"Successfully created the txt record"
return
0
return
0
else
else
...
@@ -68,18 +73,18 @@ dns_infoblox_rm() {
...
@@ -68,18 +73,18 @@ dns_infoblox_rm() {
export
_H2
=
"Authorization: Basic
$Infoblox_CredsEncoded
"
export
_H2
=
"Authorization: Basic
$Infoblox_CredsEncoded
"
## Does the record exist? Let's check.
## 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
"
)
result
=
$(
_get
"
$baseurlnObject
"
)
## Let's see if we get something intelligible back from the grid
## 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
## 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
"
objRmUrl
=
"https://
$Infoblox_Server
/wapi/v2.2.2/
$objRef
"
## Delete them! All the stale records!
## Delete them! All the stale records!
rmResult
=
$(
_post
""
"
$objRmUrl
"
""
"DELETE"
)
rmResult
=
$(
_post
""
"
$objRmUrl
"
""
"DELETE"
)
## Let's see if that worked
## 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
"
_info
"Successfully deleted
$objRef
"
return
0
return
0
else
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