예제 #1
0
파일: ebs.py 프로젝트: jstruebel/buildtasks
        virts.add('hvm')
        virts.add('pvm')

    for virt in virts:
        if not virt in ('hvm', 'pvm'):
            fatal("virtualization type not supported: %s" % virt)

    arch = utils.get_arch()
    region = utils.get_region()
    snapshot_id, snapshot_name = bundle(rootfs, name)

    if marketplace:
        share_marketplace(snapshot_id, region)

    for virt in virts:
        ami_id, ami_name = register(snapshot_id, region, virt, arch)

        log.info(ami_name)
        log.important(' '.join([ami_id, arch, virt, region]))

        if publish:
            share_public(ami_id, region)

        if copy:
            regions = utils.get_all_regions()
            regions.remove(region)
            images = copy_image(ami_id, ami_name, region, regions)

            for image in images:
                log.important(' '.join([image.id, arch, virt, image.region]))
예제 #2
0
    if not os.path.exists(rootfs):
        fatal("rootfs path does not exist: %s" % rootfs)

    if not name:
        turnkey_version = utils.get_turnkey_version(rootfs)
        name = '_'.join([turnkey_version, str(int(time.time()))])

    arch = utils.get_arch()
    region = utils.get_region()
    snapshot_id, snapshot_name = bundle(rootfs, name)
    log.important(' '.join([snapshot_id, arch, region]))

    if marketplace:
        share_marketplace(snapshot_id, region)

    ami_id, ami_name = register(snapshot_id, region, arch)

    log.info(ami_name)
    log.important(' '.join([ami_id, arch, region]))

    if pvmregister:
        ami_id, ami_name = register(snapshot_id, region, arch, pvm=True)

        log.info(ami_name + ' (PVM)')
        log.important(' '.join([ami_id, arch, region, '(PVM)']))

    if publish:
        share_public(ami_id, region)

    if copy:
        regions = utils.get_all_regions()
예제 #3
0
    if not os.path.exists(rootfs):
        fatal("rootfs path does not exist: %s" % rootfs)

    if not name:
        turnkey_version = utils.get_turnkey_version(rootfs)
        name = '_'.join([turnkey_version, str(int(time.time()))])

    arch = utils.get_arch()
    region = utils.get_region()
    snapshot_id, snapshot_name = bundle(rootfs, name)
    log.important(' '.join([snapshot_id, arch, region]))

    if marketplace:
        share_marketplace(snapshot_id, region)

    ami_id, ami_name = register(snapshot_id, region, arch)

    log.info(ami_name)
    log.important(' '.join([ami_id, arch, region]))

    if publish:
        share_public(ami_id, region)

    if copy:
        regions = utils.get_all_regions()
        regions.remove(region)
        images = copy_image(ami_id, ami_name, region, regions)

        for image in images:
            log.important(' '.join([image.id, arch, image.region]))
예제 #4
0
    if not os.path.exists(rootfs):
        fatal("rootfs path does not exist: %s" % rootfs)

    if not name:
        turnkey_version = utils.get_turnkey_version(rootfs)
        name = '_'.join([turnkey_version, str(int(time.time()))])

    arch = utils.get_arch()
    region = utils.get_region()
    snapshot_id, snapshot_name = bundle(rootfs, name)
    log.important(' '.join([snapshot_id, arch, region]))

    if marketplace:
        share_marketplace(snapshot_id, region)

    ami_id, ami_name = register(snapshot_id, region, arch)

    log.info(ami_name)
    log.important(' '.join([ami_id, arch, region]))

    if pvmregister:
        ami_id, ami_name = register(snapshot_id, region, arch, pvm=True)

        log.info(ami_name + ' (PVM)')
        log.important(' '.join([ami_id, arch, region, '(PVM)']))

    if publish:
        share_public(ami_id, region)

    if copy:
        regions = utils.get_all_regions()
예제 #5
0
            copy = True

        if opt == "--publish":
            publish = True

    if len(args) != 1:
        usage("incorrect number of arguments")

    rootfs = args[0]
    if not os.path.exists(rootfs):
        fatal("rootfs path does not exist: %s" % rootfs)

    region = utils.get_region()

    snapshot_id, snapshot_name = bundle(rootfs)
    ami_id = register(snapshot_id, region)

    if publish:
        share_public(ami_id, region)
        share_marketplace(snapshot_id, region)

    images = []
    if copy:
        regions = utils.get_all_regions()
        regions.remove(region)
        images = copy_image(ami_id, snapshot_name, region, regions)

    print snapshot_name
    print "  %s - %s" % (ami_id, region)
    for image in images:
        print "  %s - %s" % (image.id, image.region)