Commit e1c2b84a by Feanil Patel

Merge pull request #638 from edx/feanil/abbey_yaml_load

Make yaml load correctly and reference globals correctly.
parents 6927c338 c6f118e6
...@@ -8,7 +8,7 @@ try: ...@@ -8,7 +8,7 @@ try:
import boto.ec2 import boto.ec2
import boto.sqs import boto.sqs
from boto.vpc import VPCConnection from boto.vpc import VPCConnection
from boto.exception import NoAuthHandlerFound from boto.exception import NoAuthHandlerFound, EC2ResponseError
from boto.sqs.message import RawMessage from boto.sqs.message import RawMessage
except ImportError: except ImportError:
print "boto required for script" print "boto required for script"
...@@ -461,7 +461,7 @@ def create_ami(instance_id, name, description): ...@@ -461,7 +461,7 @@ def create_ami(instance_id, name, description):
break break
else: else:
time.sleep(1) time.sleep(1)
except boto.exception.EC2ResponseError as e: except EC2ResponseError as e:
if e.error_code == 'InvalidAMIID.NotFound': if e.error_code == 'InvalidAMIID.NotFound':
time.sleep(1) time.sleep(1)
else: else:
...@@ -489,6 +489,8 @@ def launch_and_configure(ec2_args): ...@@ -489,6 +489,8 @@ def launch_and_configure(ec2_args):
print " {:<25}{}".format(k, v) print " {:<25}{}".format(k, v)
print print
global sqs_queue
global instance_id
sqs_queue = sqs.create_queue(run_id) sqs_queue = sqs.create_queue(run_id)
sqs_queue.set_message_class(RawMessage) sqs_queue.set_message_class(RawMessage)
res = ec2.run_instances(**ec2_args) res = ec2.run_instances(**ec2_args)
...@@ -571,7 +573,7 @@ if __name__ == '__main__': ...@@ -571,7 +573,7 @@ if __name__ == '__main__':
if args.vars: if args.vars:
with open(args.vars) as f: with open(args.vars) as f:
extra_vars_yml = f.read() extra_vars_yml = f.read()
extra_vars = yaml.load(f.read) extra_vars = yaml.load(extra_vars_yml)
else: else:
extra_vars_yml = "---\n" extra_vars_yml = "---\n"
extra_vars = {} extra_vars = {}
...@@ -623,7 +625,6 @@ if __name__ == '__main__': ...@@ -623,7 +625,6 @@ if __name__ == '__main__':
if args.mongo_host: if args.mongo_host:
mongo_con.update_ami(ami) mongo_con.update_ami(ami)
mongo_con.update_deployment(ami) mongo_con.update_deployment(ami)
finally: finally:
print print
if not args.no_cleanup and not args.noop: if not args.no_cleanup and not args.noop:
...@@ -633,4 +634,6 @@ if __name__ == '__main__': ...@@ -633,4 +634,6 @@ if __name__ == '__main__':
if instance_id: if instance_id:
print "Cleaning up - Terminating instance ID - {}".format( print "Cleaning up - Terminating instance ID - {}".format(
instance_id) instance_id)
ec2.terminate_instances(instance_ids=[instance_id]) # Check to make sure we have an instance id.
if instance_id:
ec2.terminate_instances(instance_ids=[instance_id])
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment