oktetlabs / test-environment

OKTET Labs Test Environment
Other
5 stars 9 forks source link

23 01 17 remove xml from configurator #9

Closed okt-kosovnn closed 1 year ago

okt-kosovnn commented 1 year ago

The XML structures was used for temporary storing parsed information from YAML configuration files. There was a decision to eliminate XML from CS since there are some features that doesn't provided by XML but only by YAML.

The fundamental idea behind CYAML is to allow applications to construct schemas which describe both the permissible structure of the YAML documents to read/write, and the C data structure(s) in which the loaded data is arranged in memory. Nevertheless that CYAML couldn't handle configuration files (they are not so simple as CYAML expected) it is very convenient to use it for backup and for dynamic history files.

Note that since CYAML couldn't handle with YAML configuration files there are some fields in the structures about which CYAML doesn't know such as cond and include fields.

The parsing consist of two steps. 1) At the first step the configuration files are parsed to the structure that has fields like cond and include that couldn't be handled via CYAML. 2) The second step called reparse resolves include and cond fields. Also it resolves oid and value of instance where some substitutions are needed (for example of environment variables).