Source code for bellatrix.start_instance

#!/usr/bin/python
'''
this needs a good refactor
'''

import sys

from bellatrix.lib.ec2_lib import Ec2lib
from bellatrix.lib import bellatrix_util
from bellatrix.lib import util

[docs]class Run(): def __init__(self, key, sec): self._ec2 = Ec2lib(key, sec) self.out_file = bellatrix_util.getOutFile(__file__)
[docs] def startInstance(self, ami, instance_type, key_name, security_groups, new_size): #todo: use the whole set of attributes and default options inst, dns_name = self._ec2.startInstance(ami, instance_type, key_name, security_groups, new_size) util.writeFile(self.out_file, inst.id + "," + dns_name)
[docs]def run(ami, instance_type, key_name, security_groups, new_size): r = Run(bellatrix_util.getKey(), bellatrix_util.getSecret()) r.startInstance(ami, instance_type, key_name, security_groups, new_size) return 0
if __name__ == '__main__': sys.exit(run(*sys.argv[1:]))