Now added delete for real
This commit is contained in:
25
secdep.py
25
secdep.py
@@ -811,9 +811,9 @@ def create_node(provider, name=None, location=None, size=None, image=None, confi
|
|||||||
if name is None:
|
if name is None:
|
||||||
name = input("Enter the name of the node: ")
|
name = input("Enter the name of the node: ")
|
||||||
assert name != "", "Name is empty"
|
assert name != "", "Name is empty"
|
||||||
name = provider+"_"+name
|
name = provider+"-"+name
|
||||||
else:
|
else:
|
||||||
name = provider+"_"+name
|
name = provider+"-"+name
|
||||||
# In the case of aws location has to be None because it is actually derived from the ami (image)
|
# In the case of aws location has to be None because it is actually derived from the ami (image)
|
||||||
if provider == "aws":
|
if provider == "aws":
|
||||||
location = None
|
location = None
|
||||||
@@ -944,15 +944,14 @@ def create_node(provider, name=None, location=None, size=None, image=None, confi
|
|||||||
elif provider == "azure":
|
elif provider == "azure":
|
||||||
node = driver.create_node(name, size, image, location, auth=auth)
|
node = driver.create_node(name, size, image, location, auth=auth)
|
||||||
else:
|
else:
|
||||||
keys = driver.ex_find_or_import_keypair_by_key_material(pubkey)
|
keys = driver.list_key_pairs()
|
||||||
if len(keys) <= 2:
|
for key in keys:
|
||||||
pass
|
driver.delete_key_pair(key)
|
||||||
else:
|
|
||||||
driver.import_key_pair_from_string("secdep@"+socket.gethostname(), pubkey)
|
driver.import_key_pair_from_string("secdep@"+socket.gethostname(), pubkey)
|
||||||
driver.ex_authorize_security_group_permissive('default')
|
driver.ex_authorize_security_group_permissive('default')
|
||||||
keyname="secdep@"+socket.gethostname()
|
keyname="secdep@"+socket.gethostname()
|
||||||
SCRIPT = '''#!/usr/bin/env bash
|
SCRIPT = '''#!/usr/bin/env bash
|
||||||
sudo useradd -G sudo -m secdep
|
sudo useradd -G sudo -s /bin/bash -m secdep
|
||||||
sudo echo "secdep:secdeppass" | sudo chpasswd
|
sudo echo "secdep:secdeppass" | sudo chpasswd
|
||||||
sudo mkdir -p /home/secdep/.ssh
|
sudo mkdir -p /home/secdep/.ssh
|
||||||
[[ -e /root/.ssh/authorized_keys ]] && sudo cp /root/.ssh/authorized_keys /home/secdep/.ssh/authorized_keys
|
[[ -e /root/.ssh/authorized_keys ]] && sudo cp /root/.ssh/authorized_keys /home/secdep/.ssh/authorized_keys
|
||||||
@@ -979,15 +978,14 @@ def create_node(provider, name=None, location=None, size=None, image=None, confi
|
|||||||
elif provider == "azure":
|
elif provider == "azure":
|
||||||
node = driver.create_node(name, size, image, location, auth=auth)
|
node = driver.create_node(name, size, image, location, auth=auth)
|
||||||
else:
|
else:
|
||||||
keys = driver.ex_find_or_import_keypair_by_key_material(pubkey)
|
keys = driver.list_key_pairs()
|
||||||
if len(keys) <= 2:
|
for key in keys:
|
||||||
pass
|
driver.delete_key_pair(key)
|
||||||
else:
|
|
||||||
driver.import_key_pair_from_string("secdep@"+socket.gethostname(), pubkey)
|
driver.import_key_pair_from_string("secdep@"+socket.gethostname(), pubkey)
|
||||||
driver.ex_authorize_security_group_permissive('default')
|
driver.ex_authorize_security_group_permissive('default')
|
||||||
keyname="secdep@"+socket.gethostname()
|
keyname="secdep@"+socket.gethostname()
|
||||||
SCRIPT = '''#!/usr/bin/env bash
|
SCRIPT = '''#!/usr/bin/env bash
|
||||||
sudo useradd -G sudo -m secdep
|
sudo useradd -G sudo -s /bin/bash -m secdep
|
||||||
sudo echo "secdep:secdeppass" | sudo chpasswd
|
sudo echo "secdep:secdeppass" | sudo chpasswd
|
||||||
sudo mkdir -p /home/secdep/.ssh
|
sudo mkdir -p /home/secdep/.ssh
|
||||||
[[ -e /root/.ssh/authorized_keys ]] && sudo cp /root/.ssh/authorized_keys /home/secdep/.ssh/authorized_keys
|
[[ -e /root/.ssh/authorized_keys ]] && sudo cp /root/.ssh/authorized_keys /home/secdep/.ssh/authorized_keys
|
||||||
@@ -1009,6 +1007,7 @@ def create_node(provider, name=None, location=None, size=None, image=None, confi
|
|||||||
print('exit_code: %s' % (step_2.exit_status))
|
print('exit_code: %s' % (step_2.exit_status))
|
||||||
print(node.name + " created successfully")
|
print(node.name + " created successfully")
|
||||||
print("Node is initializing")
|
print("Node is initializing")
|
||||||
|
if provider == "aws":
|
||||||
time.sleep(30) #Aws takes a while to assign a public ip
|
time.sleep(30) #Aws takes a while to assign a public ip
|
||||||
print("ip to connect to")
|
print("ip to connect to")
|
||||||
print("\nIP: %s\n" % (node.public_ips))
|
print("\nIP: %s\n" % (node.public_ips))
|
||||||
@@ -1058,7 +1057,7 @@ def delete_node():
|
|||||||
if node is None:
|
if node is None:
|
||||||
print("Nothing was chosen")
|
print("Nothing was chosen")
|
||||||
exit(0)
|
exit(0)
|
||||||
providerName = node.name.split("_")[0]
|
providerName = node.name.split("-")[0]
|
||||||
if providerName == "gce":
|
if providerName == "gce":
|
||||||
driver = get_corresponding_driver("gce")
|
driver = get_corresponding_driver("gce")
|
||||||
elif providerName == "azure":
|
elif providerName == "azure":
|
||||||
|
|||||||
Reference in New Issue
Block a user