本文整理汇总了Python中katello.client.api.custom_info.CustomInfoAPI类的典型用法代码示例。如果您正苦于以下问题:Python CustomInfoAPI类的具体用法?Python CustomInfoAPI怎么用?Python CustomInfoAPI使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了CustomInfoAPI类的12个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: run
def run(self):
org_name = self.get_option("org")
env_name = self.get_option("environment")
sys_name = self.get_option("name")
sys_uuid = self.get_option("uuid")
keyname = self.get_option("keyname")
new_value = self.get_option("value")
system = get_system(org_name, sys_name, env_name, sys_uuid)
custom_info_api = CustomInfoAPI()
response = custom_info_api.update_custom_info("system", system["id"], keyname, new_value)
ident = sys_uuid if sys_uuid else sys_name
if response is not None:
print _("Successfully updated Custom Information [ %(keyname)s ] for System [ %(ident)s ]") % {
"keyname": keyname,
"ident": ident,
}
else:
print _("Could not update Custom Information [ %(keyname)s ] for System [ %(ident)s ]") % {
"keyname": keyname,
"ident": ident,
}
示例2: run
def run(self):
org_name = self.get_option('org')
env_name = self.get_option('environment')
dist_name = self.get_option('name')
dist_uuid = self.get_option('uuid')
if dist_uuid:
self.printer.set_header(_("Distributor Information [ %s ]") % dist_uuid)
elif env_name is None:
self.printer.set_header(_("Distributor Information For Org [ %s ]") % org_name)
else:
self.printer.set_header(_("Distributor Information For Environment [ %(env)s ] in Org [ %(org)s ]") \
% {'env':env_name, 'org':org_name})
# get distributor details
distributor = get_distributor(org_name, dist_name, env_name, dist_uuid)
custom_info_api = CustomInfoAPI()
custom_info = custom_info_api.get_custom_info("distributor", distributor['id'])
distributor['custom_info'] = stringify_custom_info(custom_info)
if 'environment' in distributor:
distributor['environment'] = distributor['environment']['name']
batch_add_columns(self.printer, {'name': _("Name")}, {'version': _("Version")},
{'uuid': _("UUID")}, {'environment': _("Environment")})
self.printer.add_column('created_at', _("Created"), formatter=format_date)
self.printer.add_column('updated_at', _("Last Updated"), formatter=format_date)
self.printer.add_column('description', _("Description"), multiline=True)
self.printer.add_column('custom_info', _("Custom Info"), multiline=True, show_with=printer.VerboseStrategy)
self.printer.print_item(distributor)
return os.EX_OK
示例3: run
def run(self):
org_name = self.get_option('org')
env_name = self.get_option('environment')
sys_name = self.get_option('name')
sys_uuid = self.get_option('uuid')
if sys_uuid:
self.printer.set_header(_("System Information [ %s ]") % sys_uuid)
elif env_name is None:
self.printer.set_header(_("System Information For Org [ %s ]") % org_name)
else:
self.printer.set_header(_("System Information For Environment [ %(env_name)s ] in Org [ %(org_name)s ]") \
% {'env_name':env_name, 'org_name':org_name})
# get system details
system = get_system(org_name, sys_name, env_name, sys_uuid)
custom_info_api = CustomInfoAPI()
custom_info = custom_info_api.get_custom_info("system", system['id'])
system['custom_info'] = stringify_custom_info(custom_info)
system["activation_keys"] = "[ "+ ", ".join([ak["name"] for ak in system["activation_key"]]) +" ]"
if 'host' in system:
system['host'] = system['host']['name']
if 'guests' in system:
system["guests"] = "[ "+ ", ".join([guest["name"] for guest in system["guests"]]) +" ]"
if 'environment' in system:
system['environment'] = system['environment']['name']
if 'content_view' in system:
system['content_view'] = "[ %s ]" % system['content_view']['name']
batch_add_columns(self.printer, {'name': _("Name")}, {'ipv4_address': _("IPv4 Address")}, \
{'uuid': _("UUID")}, {'environment': _("Environment")}, {'location': _("Location")})
self.printer.add_column('created_at', _("Registered"), formatter=format_date)
self.printer.add_column('updated_at', _("Last Updated"), formatter=format_date)
self.printer.add_column('description', _("Description"), multiline=True)
if 'release' in system and system['release']:
self.printer.add_column('release', _("OS Release"))
self.printer.add_column('activation_keys', _("Activation Keys"), multiline=True, \
show_with=printer.VerboseStrategy)
self.printer.add_column('host', _("Host"), show_with=printer.VerboseStrategy)
self.printer.add_column('sockets', _("Sockets"))
self.printer.add_column('ram', _("RAM (MB)"))
self.printer.add_column('serviceLevel', _("Service Level"))
self.printer.add_column('guests', _("Guests"), show_with=printer.VerboseStrategy)
self.printer.add_column('custom_info', _("Custom Info"), multiline=True, show_with=printer.VerboseStrategy)
self.printer.add_column('content_view', _("Content View"))
self.printer.print_item(system)
return os.EX_OK
示例4: run
def run(self):
org_name = self.get_option('org')
env_name = self.get_option('environment')
sys_name = self.get_option('name')
sys_uuid = self.get_option('uuid')
if sys_uuid:
self.printer.set_header(_("System Information [ %s ]") % sys_uuid)
elif env_name is None:
self.printer.set_header(_("System Information For Org [ %s ]") % org_name)
else:
self.printer.set_header(_("System Information For Environment [ %s ] in Org [ %s ]") % (env_name, org_name))
# get system details
system = get_system(org_name, sys_name, env_name, sys_uuid)
custom_info_api = CustomInfoAPI()
custom_info = custom_info_api.get_custom_info("system", system['id'])
system['custom_info'] = "[ %s ]" % ", ".join(["%s: [ %s ]" % (k, ", ".join(custom_info[k])) \
for k in custom_info.keys()])
system["activation_keys"] = "[ "+ ", ".join([ak["name"] for ak in system["activation_key"]]) +" ]"
if 'host' in system:
system['host'] = system['host']['name']
if 'guests' in system:
system["guests"] = "[ "+ ", ".join([guest["name"] for guest in system["guests"]]) +" ]"
self.printer.add_column('name')
self.printer.add_column('ipv4_address')
self.printer.add_column('uuid')
self.printer.add_column('location')
self.printer.add_column('created_at', 'Registered', formatter=format_date)
self.printer.add_column('updated_at', 'Last updated', formatter=format_date)
self.printer.add_column('description', multiline=True)
if 'releaseVer' in system and system['releaseVer']:
self.printer.add_column('releaseVer', 'OS release')
self.printer.add_column('activation_keys', multiline=True, show_with=printer.VerboseStrategy)
self.printer.add_column('host', show_with=printer.VerboseStrategy)
self.printer.add_column('serviceLevel', _('Service Level'))
self.printer.add_column('guests', show_with=printer.VerboseStrategy)
if "template" in system:
self.printer.add_column('template', show_with=printer.VerboseStrategy, value=system["template"]["name"])
self.printer.add_column('custom_info', multiline=True, show_with=printer.VerboseStrategy)
self.printer.print_item(system)
return os.EX_OK
示例5: run
def run(self):
org_name = self.get_option("org")
env_name = self.get_option("environment")
sys_name = self.get_option("name")
sys_uuid = self.get_option("uuid")
if sys_uuid:
self.printer.set_header(_("System Information [ %s ]") % sys_uuid)
elif env_name is None:
self.printer.set_header(_("System Information For Org [ %s ]") % org_name)
else:
self.printer.set_header(_("System Information For Environment [ %s ] in Org [ %s ]") % (env_name, org_name))
# get system details
system = get_system(org_name, sys_name, env_name, sys_uuid)
custom_info_api = CustomInfoAPI()
custom_info = custom_info_api.get_custom_info("system", system["id"])
system["custom_info"] = stringify_custom_info(custom_info)
system["activation_keys"] = "[ " + ", ".join([ak["name"] for ak in system["activation_key"]]) + " ]"
if "host" in system:
system["host"] = system["host"]["name"]
if "guests" in system:
system["guests"] = "[ " + ", ".join([guest["name"] for guest in system["guests"]]) + " ]"
batch_add_columns(self.printer, "name", "ipv4_address", "uuid", "location")
self.printer.add_column("created_at", _("Registered"), formatter=format_date)
self.printer.add_column("updated_at", _("Last updated"), formatter=format_date)
self.printer.add_column("description", multiline=True)
if "release" in system and system["release"]:
self.printer.add_column("release", _("OS release"))
self.printer.add_column("activation_keys", multiline=True, show_with=printer.VerboseStrategy)
self.printer.add_column("host", show_with=printer.VerboseStrategy)
self.printer.add_column("sockets")
self.printer.add_column("ram", _("RAM (MB)"))
self.printer.add_column("serviceLevel", _("Service Level"))
self.printer.add_column("guests", show_with=printer.VerboseStrategy)
if "template" in system:
self.printer.add_column("template", show_with=printer.VerboseStrategy, value=system["template"]["name"])
self.printer.add_column("custom_info", multiline=True, show_with=printer.VerboseStrategy)
self.printer.print_item(system)
return os.EX_OK
示例6: run
def run(self):
org_name = self.get_option('org')
env_name = self.get_option('environment')
dist_name = self.get_option('name')
dist_uuid = self.get_option('uuid')
keyname = self.get_option('keyname')
distributor = get_distributor(org_name, dist_name, env_name, dist_uuid)
custom_info_api = CustomInfoAPI()
response = custom_info_api.remove_custom_info("distributor", distributor['id'], keyname)
ident = dist_uuid if dist_uuid else dist_name
if len(response) == 0:
print _("Successfully removed Custom Information from Distributor [ %s ]") % ident
else:
print _("Could not remove Custom Information from Distributor [ %s ]") % ident
示例7: run
def run(self):
org_name = self.get_option('org')
env_name = self.get_option('environment')
sys_name = self.get_option('name')
sys_uuid = self.get_option('uuid')
keyname = self.get_option('keyname')
system = get_system(org_name, sys_name, env_name, sys_uuid)
custom_info_api = CustomInfoAPI()
response = custom_info_api.remove_custom_info("system", system['id'], keyname)
ident = sys_uuid if sys_uuid else sys_name
if len(response) == 0:
print _("Successfully removed Custom Information from System [ %s ]") % ident
else:
print _("Could not remove Custom Information from System [ %s ]") % ident
示例8: run
def run(self):
org_name = self.get_option('org')
env_name = self.get_option('environment')
sys_name = self.get_option('name')
sys_uuid = self.get_option('uuid')
keyname = self.get_option('keyname')
new_value = self.get_option('value')
system = get_system(org_name, sys_name, env_name, sys_uuid)
custom_info_api = CustomInfoAPI()
response = custom_info_api.update_custom_info("system", system['id'], keyname, new_value)
ident = sys_uuid if sys_uuid else sys_name
test_record(response,
_("Successfully updated Custom Information [ %s ] for System [ %s ]") % (keyname, ident),
_("Could not update Custom Information [ %s ] for System [ %s ]") % (keyname, ident)
)
示例9: run
def run(self):
org_name = self.get_option('org')
env_name = self.get_option('environment')
sys_name = self.get_option('name')
sys_uuid = self.get_option('uuid')
keyname = self.get_option('keyname')
current_value = self.get_option('current-value')
new_value = self.get_option('new-value')
system = get_system(org_name, sys_name, env_name, sys_uuid)
custom_info_api = CustomInfoAPI()
response = custom_info_api.update_custom_info("system", system['id'], keyname, current_value, new_value)
ident = sys_uuid if sys_uuid else sys_name
if response[keyname][0] == new_value:
print _("Successfully updated Custom Information for System [ %s ]") % ident
else:
print _("Could not update Custom Information for System [ %s ]") % ident
示例10: __init__
def __init__(self):
self.orgapi = OrganizationAPI()
self.systemapi = SystemAPI()
self.userapi = UserAPI()
self.envapi = EnvironmentAPI()
self.rolesapi = UserRoleAPI()
self.permissionapi = PermissionAPI()
self.distributorapi = DistributorAPI()
self.provapi = ProviderAPI()
self.infoapi = CustomInfoAPI()
s = server.KatelloServer(CONFIG.get("katello", "hostname"),
CONFIG.get("katello", "port"),
CONFIG.get("katello", "proto"),
CONFIG.get("katello", "api_url"))
s.set_auth_method(BasicAuthentication(CONFIG.get("katello", "admin_user"), CONFIG.get("katello", "admin_pass")))
server.set_active_server(s)
示例11: KatelloConnection
class KatelloConnection():
def __init__(self):
self.orgapi = OrganizationAPI()
self.systemapi = SystemAPI()
self.userapi = UserAPI()
self.envapi = EnvironmentAPI()
self.rolesapi = UserRoleAPI()
self.permissionapi = PermissionAPI()
self.distributorapi = DistributorAPI()
self.provapi = ProviderAPI()
self.infoapi = CustomInfoAPI()
s = server.KatelloServer(CONFIG.get("katello", "hostname"),
CONFIG.get("katello", "port"),
CONFIG.get("katello", "proto"),
CONFIG.get("katello", "api_url"))
s.set_auth_method(BasicAuthentication(CONFIG.get("katello", "admin_user"), CONFIG.get("katello", "admin_pass")))
server.set_active_server(s)
def get_owners(self):
return self.orgapi.organizations()
def refresh_subs(self, org_label):
_LOG.debug("entering async task to refresh systems in %s" % org_label)
return self.orgapi.attach_all_systems(org_label)
def create_distributor(self, name, root_org):
return self.distributorapi.create(name=name, org=root_org, environment_id=None)
def delete_distributor(self, name, root_org):
dist_uuid = self.distributorapi.distributor_by_name(distName=name, orgName=root_org)['uuid']
return self.distributorapi.delete(distributor_uuid=dist_uuid)
def update_distributor(self, name, root_org, params):
dist_uuid = self.distributorapi.distributor_by_name(
distName=name, orgName=root_org)['uuid']
return self.distributorapi.update(dist_uuid, params)
def export_manifest(self, dist_uuid):
return self.distributorapi.export_manifest(distributor_uuid=dist_uuid)
def import_manifest(self, prov_id, file):
return self.provapi.import_manifest(provId=prov_id, manifestFile=file)
def get_redhat_provider(self, org):
return self.provapi.provider_by_name(orgName=org, provName="Red Hat")
def get_entitlements(self, system_id):
return self.systemapi.subscriptions(system_id=system_id)['entitlements']
def get_subscription_status(self, system_uuid):
return self.systemapi.subscription_status(system_id=system_uuid)
def create_owner(self, label, name):
return self.orgapi.create(name, label, "no description")
def delete_owner(self, name):
# todo: error handling, not sure if orgapi will handle it
self.orgapi.delete(name)
def update_owner(self, name, params):
return self.orgapi.update(name, params)
def get_users(self):
return self.userapi.users()
def create_user(self, username, email):
return self.userapi.create(name=username, pw="CHANGEME", email=email, disabled=False, default_environment=None)
def delete_user(self, user_id):
return self.userapi.delete(user_id=user_id)
def get_spacewalk_id(self, object_id):
# this wants an object ID
info_list = self.infoapi.get_custom_info(informable_type='system', informable_id=object_id)
for info in info_list:
if info['keyname'] == 'spacewalk-id':
return info['value']
def find_by_spacewalk_id(self, org, spacewalk_id):
result = self.systemapi.find_by_custom_info(org, 'spacewalk-id', spacewalk_id)
if len(result) > 1:
raise Exception("more than one record found for spacewalk ID %s in org %s!" % (spacewalk_id, org))
# we're guaranteed at this point to have zero or one records
if result:
return result[0]
return
def create_consumer(self, name, facts, installed_products, last_checkin, sw_uuid=None, owner=None):
# there are four calls here! we need to work with katello to send all this stuff up at once
consumer = self.systemapi.register(name=name, org='satellite-' + owner, environment_id=None,
facts=facts, activation_keys=None, cp_type='system',
installed_products=installed_products, last_checkin=self._convert_date(last_checkin).isoformat())
# we want this to happen ASAP. Ideally, it would be in the same transaction as the above call.
self.infoapi.add_custom_info(informable_type='system', informable_id=consumer['id'],
keyname='spacewalk-id', value=sw_uuid)
# TODO: get rid of this extra call!
#.........这里部分代码省略.........
示例12: KatelloConnection
class KatelloConnection():
def __init__(self):
self.orgapi = OrganizationAPI()
self.systemapi = SystemAPI()
self.userapi = UserAPI()
self.envapi = EnvironmentAPI()
self.rolesapi = UserRoleAPI()
self.permissionapi = PermissionAPI()
self.distributorapi = DistributorAPI()
self.provapi = ProviderAPI()
self.infoapi = CustomInfoAPI()
s = server.KatelloServer(CONFIG.get("katello", "hostname"),
CONFIG.get("katello", "port"),
CONFIG.get("katello", "proto"),
CONFIG.get("katello", "api_url"))
s.set_auth_method(BasicAuthentication(CONFIG.get("katello", "admin_user"), CONFIG.get("katello", "admin_pass")))
server.set_active_server(s)
def get_owners(self):
return self.orgapi.organizations()
def create_distributor(self, name, root_org):
return self.distributorapi.create(name=name, org=root_org, environment_id=None)
def delete_distributor(self, name, root_org):
dist_uuid = self.distributorapi.distributor_by_name(distName=name, orgName=root_org)['uuid']
return self.distributorapi.delete(distributor_uuid=dist_uuid)
def update_distributor(self, name, root_org, params):
dist_uuid = self.distributorapi.distributor_by_name(
distName=name, orgName=root_org)['uuid']
return self.distributorapi.update(dist_uuid, params)
def export_manifest(self, dist_uuid):
return self.distributorapi.export_manifest(distributor_uuid=dist_uuid)
def import_manifest(self, prov_id, file):
return self.provapi.import_manifest(provId=prov_id, manifestFile=file)
def get_redhat_provider(self, org):
return self.provapi.provider_by_name(orgName=org, provName="Red Hat")
def get_entitlements(self, system_id):
return self.systemapi.subscriptions(system_id=system_id)['entitlements']
def get_subscription_status(self, system_uuid):
return self.systemapi.subscription_status(system_id=system_uuid)
def create_owner(self, label, name):
return self.orgapi.create(name, label, "no description")
def delete_owner(self, name):
# todo: error handling, not sure if orgapi will handle it
self.orgapi.delete(name)
def update_owner(self, name, params):
return self.orgapi.update(name, params)
def get_users(self):
return self.userapi.users()
def create_user(self, username, email):
return self.userapi.create(name=username, pw="CHANGEME", email=email, disabled=False, default_environment=None)
def delete_user(self, user_id):
return self.userapi.delete(user_id=user_id)
def get_spacewalk_id(self, object_id):
# this wants an object ID
info_list = self.infoapi.get_custom_info(informable_type='system', informable_id=object_id)
for info in info_list:
if info['keyname'] == 'spacewalk-id':
return info['value']
def find_by_spacewalk_id(self, org, spacewalk_id):
result = self.systemapi.find_by_custom_info(org, 'spacewalk-id', spacewalk_id)
if len(result) > 1:
raise Exception("more than one record found for spacewalk ID %s in org %s!" % (spacewalk_id, org))
# we're guaranteed at this point to have zero or one records
if result:
return result[0]
return
def create_consumer(self, name, facts, installed_products, last_checkin, sw_uuid=None, owner=None):
# there are four calls here! we need to work with katello to send all this stuff up at once
consumer = self.systemapi.register(name=name, org='satellite-' + owner, environment_id=None,
facts=facts, activation_keys=None, cp_type='system',
installed_products=installed_products)
#TODO: get rid of this extra call!
facts = consumer['facts']
if 'virt.is_guest' in facts:
facts['virt.uuid'] = consumer['uuid']
self.updateConsumer(name=consumer['name'], cp_uuid=consumer['uuid'], facts=facts)
self.systemapi.checkin(consumer['uuid'], self._convert_date(last_checkin))
self.systemapi.refresh_subscriptions(consumer['uuid'])
#.........这里部分代码省略.........