def check_config(self): self.tracer.put_debug("<<< Check Config >>>\n") tracer = self.tracer parameters = self.parameters cfg = self.config ok = True cust = self.customs ### Default customs... if not cust.has_key("platform"): if framework.pyjoce.os2.is_current_platform_win64(): cust["platform"] = "win64" elif framework.pyjoce.os2.is_current_platform_win32(): cust["platform"] = "windows" else: cust["platform"] = "" if not cust.has_key("library"): cust["library"] = "src" ### Apply customs for c in cust: if len(cust[c]) > 0: # tracer.put_debug (" * Custom: %s: %s\n" % (c, cust[c])) os.environ["initenv_var_%s" % (c)] = cust[c] self.display_customs() # if self.debug == True: # sys.exit() for k in parameters: p = parameters[k] if cfg.has_key(k): tracer.put_debug(" * Param: %s: %s => %s\n" % (k, p.to_string(), cfg[k])) else: tracer.put_debug(" * Missing: %s: %s \n" % (k, p.to_string())) quest = Questionner(tracer) chx = p.choices() vs = {} ks = [] for c in chx: tracer.put_debug("[%s - %s]\n" % (c[0], c[1])) ks.append({"key": c[0]}) vs[c[0]] = c[1] n = quest.process_question("Param %s" % (k), vs, ks) if n: cfg[k] = n else: ok = False self.tracer.put_debug("<<< Check Config: done >>>\n") return ok
def get_profile(self, name=None): self.tracer.put_debug("<<< Get Profile >>>\n") n = name self.get_profiles() profs = self.profiles if n == None: if len(profs) > 0: dft_prof = "-select-" values = {} values_keys = [] dft = dft_prof for p in profs: pobj = profs[p] if p == "default": dft = p values_keys.append({"key": p}) pstr = pobj.to_string() values[p] = pstr # trace(" - profile: %s=%s\n" % (p, pstr)) values_keys.append({"key": dft_prof, "choice": "s"}) values[dft_prof] = "Select each parameter" k = "_default" values_keys.append({"key": k}) values[k] = dft quest = Questionner(self.tracer) n = quest.process_question("Profile", values, values_keys) if n == dft_prof: n = None self.tracer.put_debug("<<< Get Profile: done >>>\n") if n != None: return profs[n] else: return None
import sys; import string; import pyjoce.os2; from pyjoce.conf import config; import pyjoce from pyjoce import pyInitEnv; from framework.tracer import Tracer; from framework.questionner import Questionner; #sys.path.append(pyjoce.__path__[0]) #sys.stderr.write ("%s\n" % (sys.path)) #sys.exit() tracer = Tracer(); quest = Questionner(tracer); def trace (msg): tracer.put(msg) ### Start ... ### configs = pyjoce.pyInitEnv.configs(); entries=[] custom_modes={} the_profile = '' for c in configs: #trace("conf=%s\n" % (c)) entries.append (pyjoce.pyInitEnv.datas_from(c))