def create_ami(connection, region, instance_id, name, description, block_device_mapping=None, log=False): ami = connection.create_image(instance_id, name, description, block_device_mapping) image_status = connection.get_image(ami) while (image_status.state != "available" and image_status.state != "failed"): if log: log_yellow('creating ami...') sleep_for_one_minute() image_status = connection.get_image(ami) if image_status.state == "available": if log: log_green("ami %s %s" % (ami, image_status)) return(ami) else: if log: log_red("ami %s %s" % (ami, image_status)) return False
def create_rackspace_image(connection, server_id, name, description, block_device_mapping=None): image_id = connection.servers.create_image(server_id, name) image = connection.images.get(image_id).status.lower() log_green('creating rackspace image...') while connection.images.get(image_id).status.lower() not in ['active', 'error']: log_green('building rackspace image...') sleep_for_one_minute() if image == 'error': log_red('error creating image') sys.exit(1) log_green('finished image: %s' % image_id) return image_id
def create_rackspace_image(connection, server_id, name, description, block_device_mapping=None): image_id = connection.servers.create_image(server_id, name) image = connection.images.get(image_id).status.lower() log_green('creating rackspace image...') while connection.images.get(image_id).status.lower() not in [ 'active', 'error' ]: log_green('building rackspace image...') sleep_for_one_minute() if image == 'error': log_red('error creating image') sys.exit(1) log_green('finished image: %s' % image_id) return image_id