From 78cef2a22ad2a3e8c3bc0c0c228fa32cf517c256 Mon Sep 17 00:00:00 2001 From: Mohamed Larabi <mohamed.larabi@inria.fr> Date: Fri, 31 Aug 2012 16:10:58 +0200 Subject: [PATCH] Flavour oriented configuration --- config/default_config.xml | 16 ++++++++++++++++ config/sfa-config-tty | 21 ++++++++++++++++++--- 2 files changed, 34 insertions(+), 3 deletions(-) diff --git a/config/default_config.xml b/config/default_config.xml index 6d807129..6aa3df90 100644 --- a/config/default_config.xml +++ b/config/default_config.xml @@ -327,6 +327,22 @@ Thierry Parmentelat </variablelist> </category> + <!-- ======================================== --> + <category id="sfa_nitos"> + <name></name> + <description>The settings that tell this SFA instance how to interact with the NITOS testbed.</description> + + <variablelist> + <variable id="url" type="string"> + <name>XMLRPC URL</name> + <value>http://195.251.17.239:8080/RPC2</value> + <description>URL for the NITOS Scheduler xmlrpc API</description> + </variable> + </variablelist> + </category> + + <!-- ======================================== --> + </variables> <comps> diff --git a/config/sfa-config-tty b/config/sfa-config-tty index 0b708e2d..fe3aab34 100755 --- a/config/sfa-config-tty +++ b/config/sfa-config-tty @@ -29,11 +29,14 @@ usual_variables = [ "SFA_AGGREGATE_HOST", "SFA_SM_HOST", "SFA_DB_HOST", - "SFA_PLC_URL", - "SFA_PLC_USER", - "SFA_PLC_PASSWORD", ] +flavour_xml_section_hash = { \ + 'pl':'sfa_plc', + 'openstack':'sfa_nova', + 'fd':'sfa_federica', + 'nitos':'sfa_nitos' + } configuration={ \ 'name':'sfa', 'service':"sfa", @@ -401,11 +404,23 @@ def mainloop (cdef, cread, cwrite, default_config, site_config, consolidated_con (service,service)) elif command in "uU": global usual_variables + global flavour_xml_section_hash try: for varname in usual_variables: (category,variable) = cdef.locate_varname(varname) if not (category is None and variable is None): prompt_variable(cdef, cread, cwrite, category, variable, False) + + # set the driver variable according to the already set flavour + generic_flavour = cwrite.items('sfa')[0][1] + for section in cdef.sections(): + if generic_flavour in flavour_xml_section_hash and flavour_xml_section_hash[generic_flavour] == section: + for item in cdef.items(section): + category = section + variable = item[0] + prompt_variable(cdef, cread, cwrite, category, variable, False) + break + except Exception, inst: if (str(inst) != 'BailOut'): raise -- 2.47.0