Now added delete for real

This commit is contained in:
2023-03-13 15:45:01 +02:00
parent d8fac64c0d
commit 15f3d58928

View File

@@ -811,9 +811,9 @@ def create_node(provider, name=None, location=None, size=None, image=None, confi
if name is None:
name = input("Enter the name of the node: ")
assert name != "", "Name is empty"
name = provider+"_"+name
name = provider+"-"+name
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)
if provider == "aws":
location = None
@@ -944,15 +944,14 @@ def create_node(provider, name=None, location=None, size=None, image=None, confi
elif provider == "azure":
node = driver.create_node(name, size, image, location, auth=auth)
else:
keys = driver.ex_find_or_import_keypair_by_key_material(pubkey)
if len(keys) <= 2:
pass
else:
driver.import_key_pair_from_string("secdep@"+socket.gethostname(), pubkey)
keys = driver.list_key_pairs()
for key in keys:
driver.delete_key_pair(key)
driver.import_key_pair_from_string("secdep@"+socket.gethostname(), pubkey)
driver.ex_authorize_security_group_permissive('default')
keyname="secdep@"+socket.gethostname()
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 mkdir -p /home/secdep/.ssh
[[ -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":
node = driver.create_node(name, size, image, location, auth=auth)
else:
keys = driver.ex_find_or_import_keypair_by_key_material(pubkey)
if len(keys) <= 2:
pass
else:
driver.import_key_pair_from_string("secdep@"+socket.gethostname(), pubkey)
keys = driver.list_key_pairs()
for key in keys:
driver.delete_key_pair(key)
driver.import_key_pair_from_string("secdep@"+socket.gethostname(), pubkey)
driver.ex_authorize_security_group_permissive('default')
keyname="secdep@"+socket.gethostname()
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 mkdir -p /home/secdep/.ssh
[[ -e /root/.ssh/authorized_keys ]] && sudo cp /root/.ssh/authorized_keys /home/secdep/.ssh/authorized_keys
@@ -1009,7 +1007,8 @@ def create_node(provider, name=None, location=None, size=None, image=None, confi
print('exit_code: %s' % (step_2.exit_status))
print(node.name + " created successfully")
print("Node is initializing")
time.sleep(30) #Aws takes a while to assign a public ip
if provider == "aws":
time.sleep(30) #Aws takes a while to assign a public ip
print("ip to connect to")
print("\nIP: %s\n" % (node.public_ips))
return node
@@ -1058,7 +1057,7 @@ def delete_node():
if node is None:
print("Nothing was chosen")
exit(0)
providerName = node.name.split("_")[0]
providerName = node.name.split("-")[0]
if providerName == "gce":
driver = get_corresponding_driver("gce")
elif providerName == "azure":