def define_jobs_context(self, context): from mocdp import logger logger.setLevel(logging.DEBUG) options = self.get_options() params = options.get_extra() if len(params) < 1: seeds = None #raise ValueError('Please specify some model names to be used as seeds.') else: seeds = params config_dirs = options.config_dirs.split(":") maindir = options.maindir res = context.comp(find_dependencies, config_dirs=config_dirs, maindir=maindir, seeds=seeds) print('config_dirs: {}'.format(config_dirs)) print('maindir: {}'.format(maindir)) context.comp_dynamic(other_jobs, maindir=maindir, config_dirs=config_dirs, outdir=options.output, res=res) r = context.comp(draw_depgraph, res) context.add_report(r, 'draw') r = context.comp(draw_libdepgraph, res) context.add_report(r, 'libdepgraph')
def go(self): logger.setLevel(logging.DEBUG) options = self.get_options() if not options.contracts: logger.debug('Disabling PyContrats. Use --contracts to enable.') disable_all() if options.expect_nimp is not None: options.imp = True params = options.get_extra() if len(params) < 1: raise ValueError('Please specify model name.') model_name = params[0] # drop the extension if '.mcdp' in model_name or '/' in model_name: msg = 'The model name should not contain extension or /.' raise UserError(msg) max_steps = options.max_steps _exp_advanced = options.advanced expect_nres = options.expect_nres lower = options.lower upper = options.upper out_dir = options.out query_strings = params[1:] intervals = options.intervals imp = options.imp expect_nimp = options.expect_nimp make = options.make if make: imp = True plot = options.plot do_movie = options.movie expect_res = None config_dirs = options.config_dirs.split(":") maindir = options.maindir if options.cache: if out_dir is None: out_dir = 'out-mcdp_solve' cache_dir = os.path.join(out_dir, '_cached', 'solve') else: cache_dir = None solve_main(logger, config_dirs, maindir, cache_dir, model_name, lower, upper, out_dir, max_steps, query_strings, intervals, _exp_advanced, expect_nres, imp, expect_nimp, plot, do_movie, expect_res, make)
def go(self): logger.setLevel(logging.DEBUG) options = self.get_options() if not options.contracts: disable_all() params = options.get_extra() if len(params) < 1: raise ValueError("Please specify name.") config_dirs = options.config_dirs.split(":") maindir = options.maindir out_dir = options.out if out_dir is None: out_dir = os.path.join("out", "mcdp_render") if options.cache: cache_dir = os.path.join(out_dir, "_cached", "solve") else: cache_dir = None librarian = Librarian() for e in config_dirs: librarian.find_libraries(e) library = librarian.get_library_by_dir(maindir) if cache_dir is not None: library.use_cache_dir(cache_dir) docs = params if not docs: msg = "At least one argument required." raise_desc(UserError, msg) for docname in docs: basename = docname + "." + MCDPLibrary.ext_doc_md f = library._get_file_data(basename) data = f["data"] realpath = f["realpath"] generate_pdf = options.pdf render(library, docname, data, realpath, out_dir, generate_pdf)
def define_jobs_context(self, context): logger.setLevel(logging.DEBUG) options = self.get_options() out_dir = None if out_dir is None: out_dir = os.path.join('out', 'mcdp_render_manual') generate_pdf = options.pdf files_contents = [] for libname, docname in manual_contents: res = context.comp(render, libname, docname, generate_pdf, job_id='render-%s-%s' % (libname, docname)) files_contents.append(res) d = context.comp(manual_join, files_contents) context.comp(write, d, options.output_file)
def go(self): from mocdp import logger logger.setLevel(logging.DEBUG) options = self.get_options() if not options.contracts: disable_all() params = options.get_extra() if len(params) < 1: raise ValueError('Please specify name.') name = params[0] config_dirs = options.config_dirs.split(":") maindir = options.maindir out_dir = options.out if out_dir is None: out_dir = os.path.join('out', 'mcdp_eval') if options.cache: cache_dir = os.path.join(out_dir, '_cached', 'solve') else: cache_dir = None librarian = Librarian() for e in config_dirs: librarian.find_libraries(e) library = librarian.get_library_by_dir(maindir) if cache_dir is not None: library.use_cache_dir(cache_dir) context = library._generate_context_with_hooks() c = library.load_constant(name, context) print(c)