Oh yeah, and this breaks the unittests frontend/afe/rpc_interface_unittest.py. You've sent a fix later, and I'd say we'd need to merge this patch with the fix.
On Mon, Mar 11, 2013 at 11:43 AM, Lucas Meneghel Rodrigues <[email protected]> wrote: > On Thu, Mar 7, 2013 at 2:16 PM, Nishanth Aravamudan > <[email protected]> wrote: >> Use an RPC call, just like for specific hosts, for finding all possible >> profiles. We let the user shoot themselves in the foot (that is, they >> might select a profile that doesn't apply to that server), but that's >> the nature of selecting by label -- unless the label is a platform, we >> won't be able to do the lookup anyways in the install server. >> >> Update the create_job interface appropriately. >> >> Signed-off-by: Nishanth Aravamudan <[email protected]> >> >> --- >> I have not tested the cli submission of jobs yet. I *think* it should >> work similar to the regular host. But I need to look into it still. >> >> >> diff --git a/frontend/afe/rpc_interface.py b/frontend/afe/rpc_interface.py >> index e316af9..8308e1e 100644 >> --- a/frontend/afe/rpc_interface.py >> +++ b/frontend/afe/rpc_interface.py >> @@ -264,6 +264,50 @@ def get_num_hosts(multiple_labels=(), >> exclude_only_if_needed_labels=False, >> return hosts.count() >> >> >> +def get_profiles(): >> + install_server = None >> + install_server_info = get_install_server_info() >> + install_server_type = install_server_info.get('type', None) >> + install_server_url = install_server_info.get('xmlrpc_url', None) >> + >> + if install_server_type == 'cobbler' and install_server_url: >> + install_server = xmlrpclib.ServerProxy(install_server_url) >> + >> + error_encountered = True >> + profile_dicts = [] >> + if install_server is not None: >> + profiles = install_server.get_item_names('profile') >> + >> + if len(profiles) < 1: >> + msg = 'No profiles defined on install server' >> + rpc_logger = logging.getLogger('rpc_logger') >> + rpc_logger.info(msg, host_dict['hostname']) >> + >> + else: >> + error_encountered = False >> + # not sorted >> + profiles.sort() >> + profile_dicts.append(dict(name="Do_not_install")) >> + for profile in profiles: >> + profile_dicts.append(dict(name=profile)) >> + >> + if error_encountered: >> + profile_dicts.append(dict(name="N/A")) > > ^ My scripts caught this, indentation slightly wrong. -- Lucas _______________________________________________ Autotest-kernel mailing list [email protected] https://www.redhat.com/mailman/listinfo/autotest-kernel
