Пример #1
0
def extract_metadata(manifest, labelfile=None, prefix=None):
    '''extract_metadata will write a file of metadata from shub
    :param manifest: the manifest to use
    '''

    if prefix is None:
        prefix = ""
    prefix = prefix.upper()

    source = 'Hub'
    if 'frozen' in manifest:
        source = 'Registry'

    metadata = manifest.copy()
    remove_fields = ['files', 'spec', 'metrics']
    for remove_field in remove_fields:
        if remove_field in metadata:
            del metadata[remove_field]

    if labelfile is not None:
        for key, value in metadata.items():
            key = "%s%s" % (prefix, key)
            value = ADD(key=key, value=value, jsonfile=labelfile, force=True)

        bot.verbose("Saving Singularity %s metadata to %s" %
                    (source, labelfile))
    return metadata
Пример #2
0
def extract_labels(manifest, labelfile=None, prefix=None):
    '''extract_labels will write a file of key value pairs including
    maintainer, and labels.
    :param manifest: the manifest to use
    :param labelfile: if defined, write to labelfile (json)
    :param prefix: an optional prefix to add to the names
    '''
    if prefix is None:
        prefix = ""

    labels = get_config(manifest, 'Labels')
    if labels is not None and len(labels) is not 0:
        bot.verbose3("Found Docker container labels!")
        if labelfile is not None:
            for key, value in labels.items():
                key = "%s%s" % (prefix, key)
                value = ADD(key, value, labelfile, force=True)
    return labels
Пример #3
0
def main():

    parser = get_parser()
    
    try:
        (args,options) = parser.parse_args()
    except:
        sys.exit(0)
    
    if args.key is not None and args.file is not None and args.value is not None:

       value = ADD(key=args.key,
                   value=args.value,
                   jsonfile=args.file,
                   force=args.force)

    else:
        bot.error("--key and --file and --value must be defined for ADD. Exiting")
        sys.exit(1)