diff --git a/python/dune/codegen/options.py b/python/dune/codegen/options.py index 62085e85a7ea9945e20c715c42b5d3864c79abee..11af17aede3a29f115162ff67818c343f04a5254 100644 --- a/python/dune/codegen/options.py +++ b/python/dune/codegen/options.py @@ -5,6 +5,7 @@ from os.path import abspath from pytools import ImmutableRecord, memoize import cerberus import yaml +import pkg_resources from dune.testtools.parametertree.parser import parse_ini_file @@ -148,24 +149,24 @@ def initialize_options(): _global_options = update_options_from_inifile(_global_options) # Validate global options - filename = '/home/rene/phd/dune-les/dune-codegen/python/dune/codegen/options_global.yaml' - # filename = 'options_global.yaml' - with open(filename, 'r') as stream: - try: - scheme_global = yaml.safe_load(stream) - except Exception as e: - raise e + resource_package = __name__ + resource_path = 'options_global.yaml' + yaml_stream = pkg_resources.resource_string(resource_package, resource_path) + try: + scheme_global = yaml.safe_load(yaml_stream) + except Exception as e: + raise e validator_global = CodegenOptionsValidator(scheme_global) if not validator_global.validate(_global_options.__dict__): raise RuntimeError("Global options validation failed: {}".format(validator_global.errors)) # Validate form options - filename = '/home/rene/phd/dune-les/dune-codegen/python/dune/codegen/options_form.yaml' - with open(filename, 'r') as stream: - try: - scheme_form = yaml.safe_load(stream) - except Exception as e: - raise e + resource_path = 'options_form.yaml' + yaml_stream = pkg_resources.resource_string(resource_package, resource_path) + try: + scheme_form = yaml.safe_load(yaml_stream) + except Exception as e: + raise e validator_form = CodegenOptionsValidator(scheme_form) for form in [i.strip() for i in _global_options.operators.split(",")]: if not validator_form.validate(_form_options[form].__dict__):