Made it to compile...
This commit is contained in:
65
secdep.py
65
secdep.py
@@ -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)
|
||||
|
||||
Reference in New Issue
Block a user