本文整理汇总了Python中katello.client.api.custom_info.CustomInfoAPI.add_custom_info方法的典型用法代码示例。如果您正苦于以下问题:Python CustomInfoAPI.add_custom_info方法的具体用法?Python CustomInfoAPI.add_custom_info怎么用?Python CustomInfoAPI.add_custom_info使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类katello.client.api.custom_info.CustomInfoAPI
的用法示例。
在下文中一共展示了CustomInfoAPI.add_custom_info方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: run
# 需要导入模块: from katello.client.api.custom_info import CustomInfoAPI [as 别名]
# 或者: from katello.client.api.custom_info.CustomInfoAPI import add_custom_info [as 别名]
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')
value = self.get_option('value')
system = get_system(org_name, sys_name, env_name, sys_uuid)
custom_info_api = CustomInfoAPI()
response = custom_info_api.add_custom_info("system", system['id'], keyname, value)
ident = sys_uuid if sys_uuid else sys_name
test_record(response,
_("Successfully added Custom Information [ %s : %s ] to System [ %s ]") % (keyname, value, ident),
_("Could not add Custom Information [ %s : %s ] to System [ %s ]") % (keyname, value, ident)
)
示例2: run
# 需要导入模块: from katello.client.api.custom_info import CustomInfoAPI [as 别名]
# 或者: from katello.client.api.custom_info.CustomInfoAPI import add_custom_info [as 别名]
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')
value = self.get_option('value')
distributor = get_distributor(org_name, dist_name, env_name, dist_uuid)
custom_info_api = CustomInfoAPI()
response = custom_info_api.add_custom_info("distributor", distributor['id'], keyname, value)
ident = dist_uuid if dist_uuid else dist_name
test_record(response,
_("Successfully added Custom Information [ %(keyname)s : %(value)s ] to Distributor [ %(ident)s ]") \
% {'keyname':keyname, 'value':value, 'ident':ident},
_("Could not add Custom Information [ %(keyname)s : %(value)s ] to Distributor [ %(ident)s ]") \
% {'keyname':keyname, 'value':value, 'ident':ident}
)
示例3: run
# 需要导入模块: from katello.client.api.custom_info import CustomInfoAPI [as 别名]
# 或者: from katello.client.api.custom_info.CustomInfoAPI import add_custom_info [as 别名]
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")
value = self.get_option("value")
system = get_system(org_name, sys_name, env_name, sys_uuid)
custom_info_api = CustomInfoAPI()
response = custom_info_api.add_custom_info("system", system["id"], keyname, value)
ident = sys_uuid if sys_uuid else sys_name
test_record(
response,
_("Successfully added Custom Information [ %(keyname)s : %(value)s ] to System [ %(ident)s ]")
% {"keyname": keyname, "value": value, "ident": ident},
_("Could not add Custom Information [ %(keyname)s : %(value)s ] to System [ %(ident)s ]")
% {"keyname": keyname, "value": value, "ident": ident},
)
示例4: KatelloConnection
# 需要导入模块: from katello.client.api.custom_info import CustomInfoAPI [as 别名]
# 或者: from katello.client.api.custom_info.CustomInfoAPI import add_custom_info [as 别名]
#.........这里部分代码省略.........
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'])
self.infoapi.add_custom_info(informable_type='system', informable_id=consumer['id'],
keyname='spacewalk-id', value=sw_uuid)
return consumer['uuid']
# katello demands a name here
def update_consumer(self, cp_uuid, name, facts=None, installed_products=None,
last_checkin=None, owner=None, guest_uuids=None,
release=None, service_level=None):
params = {}
params['name'] = name
if installed_products is not None:
params['installedProducts'] = installed_products
if guest_uuids is not None:
params['guestIds'] = guest_uuids
if facts is not None:
# this logic should be moved elsewhere
if 'virt.is_guest' in facts:
facts['virt.uuid'] = cp_uuid
params['facts'] = facts
if release is not None:
params['releaseVer'] = release
if service_level is not None:
params['serviceLevel'] = service_level
# three rest calls, just one would be better
self.systemapi.update(cp_uuid, params)
if last_checkin is not None:
self.systemapi.checkin(cp_uuid, self._convert_date(last_checkin))
self.systemapi.refresh_subscriptions(cp_uuid)
def get_consumers(self, owner=None, with_details=True):
# TODO: this has a lot of logic and could be refactored
示例5: KatelloConnection
# 需要导入模块: from katello.client.api.custom_info import CustomInfoAPI [as 别名]
# 或者: from katello.client.api.custom_info.CustomInfoAPI import add_custom_info [as 别名]
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!
#.........这里部分代码省略.........