def update_env_json(env, negative_env, envfile): f = open(envfile, 'r') try: new_env = json.load(f) finally: f.close() for key in new_env.keys(): # pylint: disable=E1103 update_env(env, negative_env, key, new_env[key])
def update_env_json(env, negative_env, envfile): f = open(envfile, "r") try: new_env = json.load(f) finally: f.close() for key in new_env.keys(): # pylint: disable=E1103 update_env(env, negative_env, key, new_env[key])
def recipe_builder(job_id, recipeset_id, recipefile, overrides, fqdn): global runtime log.debug("recipe_builder(%r, %r, %r, %r, %r)" % (job_id, recipeset_id, recipefile, overrides, fqdn)) f = find_open(recipefile) try: recipexml, machines, tasks, args = json.load(f) finally: f.close() f = find_open(recipexml) try: recipe = f.read() finally: f.close() args['beah_root'] = beah.tools.get_data_root().next() # pylint: disable=E1101 args['beah_py_root'] = beah.tools.get_root() args.update(overrides) args['job_id'] = job_id args['recipeset_id'] = recipeset_id recipe_id = args.setdefault('recipe_id', 99) for task in tasks: args.setdefault('task%d_stat' % task, 'Waiting') args.setdefault('task%d_res' % task, 'None') for machine_ix in range(len(machines)): machine = machines[machine_ix] args.setdefault('machine%d' % machine_ix, machine) args.setdefault('machine%d_stat' % machine_ix, 'None') rtargs = runtimes.TypeDict( runtime, 'args/%s/%s/%s' % (job_id, recipeset_id, recipe_id)) for k, v in args.items(): rtargs.setdefault(k, v) for machine_ix in range(len(machines)): if rtargs.get('machine%d' % machine_ix, '') == fqdn: log.debug("recipe_builder: found %r as %r" % (fqdn, machine_ix)) break else: log.debug("recipe_builder: %r not found, using machine 0" % (fqdn, )) rtargs['machine0'] = fqdn log.debug("recipe_builder: args=%r" % (dict(rtargs), )) for machine_ix in range(len(machines)): machine = rtargs.get('machine%d' % machine_ix, '') if machine == '' or machine == 'machine%d' % machine_ix: log.warning("Machine %d was not specified.", machine_ix) schedule(fqdn, recipe_id, recipe, rtargs, tasks) return recipe_id
def recipe_builder(job_id, recipeset_id, recipefile, overrides, fqdn): global runtime log.debug("recipe_builder(%r, %r, %r, %r, %r)" % (job_id, recipeset_id, recipefile, overrides, fqdn)) f = find_open(recipefile) try: recipexml, machines, tasks, args = json.load(f) finally: f.close() f = find_open(recipexml) try: recipe = f.read() finally: f.close() args['beah_root'] = beah.tools.get_data_root().next() # pylint: disable=E1101 args['beah_py_root'] = beah.tools.get_root() args.update(overrides) args['job_id'] = job_id args['recipeset_id'] = recipeset_id recipe_id = args.setdefault('recipe_id', 99) for task in tasks: args.setdefault('task%d_stat' % task, 'Waiting') args.setdefault('task%d_res' % task, 'None') for machine_ix in range(len(machines)): machine = machines[machine_ix] args.setdefault('machine%d' % machine_ix, machine) args.setdefault('machine%d_stat' % machine_ix, 'None') rtargs = runtimes.TypeDict(runtime, 'args/%s/%s/%s' % (job_id, recipeset_id, recipe_id)) for k, v in args.items(): rtargs.setdefault(k, v) for machine_ix in range(len(machines)): if rtargs.get('machine%d' % machine_ix, '') == fqdn: log.debug("recipe_builder: found %r as %r" % (fqdn, machine_ix)) break else: log.debug("recipe_builder: %r not found, using machine 0" % (fqdn,)) rtargs['machine0'] = fqdn log.debug("recipe_builder: args=%r" % (dict(rtargs),)) for machine_ix in range(len(machines)): machine = rtargs.get('machine%d' % machine_ix, '') if machine == '' or machine == 'machine%d' % machine_ix: log.warning("Machine %d was not specified.", machine_ix) schedule(fqdn, recipe_id, recipe, rtargs, tasks) return recipe_id