Python Scripts: Difference between revisions
Content added Content deleted
Line 399: | Line 399: | ||
username = "nsroot" |
username = "nsroot" |
||
passwd = "pwd@123" |
passwd = "pwd@123" |
||
# Boolean true means Warm reboot |
# Boolean true means Warm reboot; false means full reboot |
||
boolean = "true" |
boolean = "true" |
||
# Nitro API calls using Curl |
# Nitro API calls using Curl |
||
⚫ | |||
⚫ | |||
uptimeapi = ('curl', '-s', '-k', '-X', 'GET', '-H', 'Content-Type:application/json', '--basic', '--user', 'nsroot:pwd@123', 'http://10.107.88.78/nitro/v1/stat/system?attrs=starttime') |
uptimeapi = ('curl', '-s', '-k', '-X', 'GET', '-H', 'Content-Type:application/json', '--basic', '--user', 'nsroot:pwd@123', 'http://10.107.88.78/nitro/v1/stat/system?attrs=starttime') |
||
rebootapi = ('curl', '-s', '-k', '-X', 'POST', '-H', 'Content-Type:application/vnd.com.citrix.netscaler.reboot+json', '--basic', '--user', 'nsroot:pwd@123', '-d', '{"reboot":{"warm":true}}', 'http://10.107.88.78/nitro/v1/config/reboot') |
rebootapi = ('curl', '-s', '-k', '-X', 'POST', '-H', 'Content-Type:application/vnd.com.citrix.netscaler.reboot+json', '--basic', '--user', 'nsroot:pwd@123', '-d', '{"reboot":{"warm":true}}', 'http://10.107.88.78/nitro/v1/config/reboot') |
||
Line 421: | Line 419: | ||
uptime2 = sub.Popen(uptimeapi, stdout=sub.PIPE) |
uptime2 = sub.Popen(uptimeapi, stdout=sub.PIPE) |
||
output2, err = uptime2.communicate() |
|||
print output2 |
|||
if (output1 == output2): |
|||
print "Reboot unsuccessful" |
|||
else: |
|||
print "Reboot successful" |
|||
</pre> |
|||
;Updated version of above with using parameters: |
|||
<pre> |
|||
import subprocess as sub |
|||
import time |
|||
# Netscaler Parameters |
|||
host = "10.107.88.78" |
|||
username = "nsroot" |
|||
passwd = "pwd@123" |
|||
# Boolean true means Warm reboot; false means full reboot |
|||
boolean = "true" |
|||
# Nitro API calls using Curl |
|||
⚫ | |||
⚫ | |||
print uptimeapi |
|||
print rebootapi |
|||
uptime1 = sub.Popen(uptimeapi.split(), stdout=sub.PIPE) |
|||
output1, err = uptime1.communicate() |
|||
print output1 |
|||
sub.Popen(rebootapi.split(), stdout=sub.PIPE) |
|||
time.sleep(10) |
|||
uptime2 = sub.Popen(uptimeapi.split(), stdout=sub.PIPE) |
|||
output2, err = uptime2.communicate() |
output2, err = uptime2.communicate() |
||
print output2 |
print output2 |