示例#1
0
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
示例#2
0
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
示例#3
0
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