-
Notifications
You must be signed in to change notification settings - Fork 26
/
Copy pathreinitialize.py
23 lines (20 loc) · 1.02 KB
/
reinitialize.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
import argparse
import time
from ArubaCloud.PyArubaAPI import CloudInterface
if __name__ == '__main__':
parser = argparse.ArgumentParser()
parser.add_argument('-d', '--datacenter', help='Specify datacenter to login.', action='store', type=int, dest='dc')
parser.add_argument('-p', '--pattern', help='Specify pattern to search.', action='store', dest='pattern')
parser.add_argument('-u', '--username', help='Specify username.', action='store', dest='username')
parser.add_argument('-w', '--password', help='Specify password.', action='store', dest='password')
parser.add_argument('--new-admin-password', action='store', dest='new_admin_passwd')
p = parser.parse_args()
i = CloudInterface(p.dc)
i.login(p.username, p.password, False)
for vm in i.get_vm(pattern=p.pattern):
print('Reinitialize: %s' % vm.vm_name)
if vm.status == 3:
vm.poweroff()
while len(i.get_jobs()['Value']) > 0:
time.sleep(1)
vm.reinitialize(admin_password=p.new_admin_passwd)