properties[target] = value continue LOG.debug(_("Ignoring key %s because it's not in property mapping.") % key) return properties if __name__ == "__main__": parser = argparse.ArgumentParser() parser.add_argument("--unattend", metavar="FILENAME", help="The unattend.xml file", required=True) parser.add_argument("--mapping", metavar="TARGET=SOURCE", help="A property mapping", action="append") parser.add_argument("--auth_token", metavar="FILENAME", help="File containing authentication token") parser.add_argument("--image_id", metavar="ID", help="Image ID") parser.add_argument("--replace", action="store_true", help="Replace existing attribute") parser.add_argument( "--hostname", metavar="HOSTNAME", default="localhost", help="Glance server hostname, defaults to localhost" ) args = parser.parse_args() mappings = common.parse_mappings(args.mapping) with open(args.unattend, "r") as f: unattend_contents = f.read() cs_data = common.calc_common_metadata("sysprep", unattend_contents, mappings) res = common.set_image_metadata(cs_data, args.image_id, args.auth_token, args.replace, hostname=args.hostname) print("Result: %s %s" % (res.status, res.reason))
return properties, compressed_targets if __name__ == '__main__': parser = argparse.ArgumentParser() parser.add_argument('--ovf', metavar='FILENAME', help='The OVF descriptor file', required=True) parser.add_argument('--mapping', metavar='TARGET=SOURCE', help='A property mapping', action='append') parser.add_argument('--auth_token', metavar='FILENAME', help='File containing authentication token') parser.add_argument('--image_id', metavar='ID', help='Image ID') parser.add_argument('--replace', action='store_true', help='Replace existing attribute') parser.add_argument('--hostname', metavar='HOSTNAME', default='localhost', help='Glance server hostname, defaults to localhost') args = parser.parse_args() mappings = common.parse_mappings(args.mapping) with open(args.ovf, 'r') as f: ovf_descriptor = f.read() cs_data = common.calc_common_metadata('ovf', ovf_descriptor, mappings) res = common.set_image_metadata(cs_data, args.image_id, args.auth_token, args.replace, hostname=args.hostname) print('Result: %s %s' % (res.status, res.reason))