Made it to compile...

This commit is contained in:
2023-03-12 05:09:56 +02:00
parent 0f003a8791
commit e04acf4f6f

View File

@@ -938,22 +938,14 @@ def create_node(provider, name=None, location=None, size=None, image=None, confi
confirm = input("Continue? ")
# Any input other than yes does not continue the node creation
assert confirm == "yes", "User did not confirm"
# In the case of gce the driver does not accept the auth parameter so we must create the node using the deploy node function
if provider == "gce":
# node = driver.create_node(name, size, image, location, ex_service_accounts=sa_scopes)
# SCRIPT = """
# #!/usr/bin/env bash
# useradd -G sudo -m secdep
# echo "secdep:secdeppass" | chpasswd
# mkdir -p /home/secdep/.ssh
# """
# step = ScriptDeployment(SCRIPT)
node = driver.create_node(name=name, image=image, size=size, location=location, ex_service_accounts=sa_scopes, ex_metadata=metadata)
# node = driver.deploy_node(name=name, image=image, size=size, location=location, deploy=step, ex_service_accounts=sa_scopes, ex_metadata=metadata, ssh_key=SECDEP_SSH_PRIVATE_KEY)
elif provider == "azure":
node = driver.create_node(name, size, image, location, auth=auth)
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')
keyname="secdep@"+socket.gethostname()
SCRIPT = '''#!/usr/bin/env bash
useradd -G sudo -m secdep
echo "secdep:secdeppass" | chpasswd
@@ -963,30 +955,20 @@ def create_node(provider, name=None, location=None, size=None, image=None, confi
step_1 = SSHKeyDeployment(pubkey)
step_2 = ScriptDeployment(SCRIPT)
msd = MultiStepDeployment([step_1, step_2])
node = driver.deploy_node(name=name, image=image, size=size, deploy=msd, ssh_key=SECDEP_SSH_PRIVATE_KEY)
node = driver.deploy_node(name=name, image=image, size=size, ex_keyname=keyname, deploy=msd, ssh_key=SECDEP_SSH_PRIVATE_KEY)
print('stdout: %s' % (step_2.stdout))
print('stderr: %s' % (step_2.stderr))
print('exit_code: %s' % (step_2.exit_status))
else:
# When the -y or --yes parameter is passed we go straight to the node creation
if provider == "gce":
# SCRIPT = '''#!/usr/bin/env bash
# useradd -G sudo -m secdep
# echo "secdep:secdeppass" | chpasswd
# echo "%sudo ALL=(ALL:ALL) ALL" >> /etc/sudoers
# mkdir -p /home/secdep/.ssh'''
# step = ScriptDeployment(SCRIPT)
node = driver.create_node(name=name, image=image, size=size, location=location, ex_service_accounts=sa_scopes, ex_metadata=metadata)
# node = driver.deploy_node(name=name, image=image, size=size, location=location, deploy=step, ex_service_accounts=sa_scopes, ex_metadata=metadata, ssh_key=SECDEP_SSH_PRIVATE_KEY)
# if provider == "aws":
# SCRIPT = '''#!/usr/bin/env bash
# useradd -G sudo -m secdep
# echo "secdep:secdeppass" | chpasswd
# echo "%sudo ALL=(ALL:ALL) ALL" >> /etc/sudoers
# mkdir -p /home/secdep/.ssh'''
# step = ScriptDeployment(SCRIPT)
#
elif provider == "azure":
node = driver.create_node(name, size, image, location, auth=auth)
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')
keyname="secdep@"+socket.gethostname()
SCRIPT = '''#!/usr/bin/env bash
useradd -G sudo -m secdep
echo "secdep:secdeppass" | chpasswd
@@ -996,7 +978,7 @@ def create_node(provider, name=None, location=None, size=None, image=None, confi
step_1 = SSHKeyDeployment(pubkey)
step_2 = ScriptDeployment(SCRIPT)
msd = MultiStepDeployment([step_1, step_2])
node = driver.deploy_node(name=name, image=image, size=size, deploy=msd, ssh_key=SECDEP_SSH_PRIVATE_KEY)
node = driver.deploy_node(name=name, image=image, size=size, ex_keyname=keyname, deploy=msd, ssh_key=SECDEP_SSH_PRIVATE_KEY)
print('stdout: %s' % (step_2.stdout))
print('stderr: %s' % (step_2.stderr))
print('exit_code: %s' % (step_2.exit_status))
@@ -1063,14 +1045,6 @@ def delete_node():
else:
print("%s node could not be deleted" % (providerName.upper()))
#elif node.state == "running":
# def get_provider_features(provider):
# driver = get_corresponding_driver(provider);
# print(driver.features['create_node'])
#
# get_provider_features("azure")
# If -p -q or -G is passed, provider must be passed as well
if args.listimages or args.listsizes or args.listlocations:
assert args.provider is not None, "Provider must be passed if listing images, sizes or locations"
@@ -1112,14 +1086,9 @@ if args.list:
if args.delete:
delete_node()
exit(0)
# env = {
# 'gce_key': gce_key,
# 'gce_secret': gce_secret,
# 'azure_key': azure_key,
# 'azure_secret': azure_secret,
# 'aws_key': aws_key,
# 'aws_secret': aws_secret
# }
# with open('.env', 'w') as f:
# json.dump(env, f)
if args.image or args.size or args.name or args.region or args.yes and not args.create:
print("Image, size, name, region and yes parameters only go along with the create flag")
exit(0)
# if args.create and not args.provider:
# print("Provider must be specified in oder to use the create action")
# exit(0)