> -----Original Message----- > From: Juraj Linkeš <juraj.lin...@pantheon.tech> > Sent: Friday, July 29, 2022 6:56 PM > To: tho...@monjalon.net; david.march...@redhat.com; Randles, Ronan > <ronan.rand...@intel.com>; honnappa.nagaraha...@arm.com; > ohily...@iol.unh.edu; Tu, Lijuan <lijuan...@intel.com> > Cc: dev@dpdk.org; Juraj Linkeš <juraj.lin...@pantheon.tech> > Subject: [PATCH v4 6/9] dts: add config parser module > > From: Owen Hilyard <ohily...@iol.unh.edu> > > The configuration is split into two parts, one defining the parameters of the > test > run and the other defining the topology to be used. > > The format of the configuration is YAML. It is validated according to a json > schema which also servers as detailed documentation of the various > configuration fields. This means that the complete set of allowed values are > tied > to the schema as a source of truth. This enables making changes to parts of > DTS > that interface with config files without a high risk of breaking someone's > configuration. > > This configuration system uses immutable objects to represent the > configuration, > making IDE/LSP autocomplete work properly. > > There are two ways to specify the configuration file path, an environment > variable or a command line argument, applied in that order. > > Signed-off-by: Owen Hilyard <ohily...@iol.unh.edu> > Signed-off-by: Juraj Linkeš <juraj.lin...@pantheon.tech> > --- > dts/conf.yaml | 7 ++ > dts/framework/config/__init__.py | 99 ++++++++++++++++++++++ > dts/framework/config/conf_yaml_schema.json | 73 ++++++++++++++++ > dts/framework/exception.py | 14 +++ > dts/framework/settings.py | 65 ++++++++++++++ > 5 files changed, 258 insertions(+) > create mode 100644 dts/conf.yaml > create mode 100644 dts/framework/config/__init__.py create mode 100644 > dts/framework/config/conf_yaml_schema.json > create mode 100644 dts/framework/settings.py >
Reviewed-by: Lijuan Tu <lijuan...@intel.com> Thanks, Lijuan