コード例 #1
0
export['image_id'] = sys.argv[1]
export['image_format'] = 'docker'
export['rpms'] = []

task = brew.getTaskInfo(build['task_id'])
if task['method'] == 'indirectionimage':
    tr = brew.getTaskRequest(build['task_id'])
    res = brew.getTaskResult(int(tr[0]['base_image_task']))
    arch = brew.listArchives(build['id'])
    assert (len(arch) == 1)
    export['md5'] = arch[0]['checksum']
    multicall = MultiCall(brew)
    for r in res['rpmlist']:
        multicall.getRPM({
            'name': r['name'],
            'version': r['version'],
            'release': r['release'],
            'arch': r['arch']
        })
    rpms = multicall()
else:
    archs = brew.listArchives(build['id'])
    for archive in archs:
        if archive['type_name'] in ('ks', 'cfg', 'xml'):
            continue
        export['md5'] = archive['checksum']
        archive_id = archive.get('id')
        rpms = brew.listRPMs(imageID=archive_id)

# first need to collect srpm names and for that we need builds
multicall = MultiCall(brew)
for rpm in rpms: