summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2017-01-05Expose the Vytree.adopt function in the module interface.Daniil Baturin
This is useful in the parser and possibly other code that creates nodes from scratch.
2017-01-03Add a function to get completion data from a reference tree node.Daniil Baturin
2017-01-02Last missing accessor: value help.Daniil Baturin
2016-12-31Fix format of validation error messages (paths in square brackets, no quotes).Daniil Baturin
2016-12-30Remove the extends attribute from <interfaceDefinition>Daniil Baturin
It's problematic for multiple reasons: 1. It's plaintext and is hard to verify 2. If it's wrong, it may have a very "interesting" effect on the resulting reference tree, such as lots of misplaced nodes 3. It's hardly ever needed as most nodes only go one or two levels deep in VyOS, such as "service $something" or "interfaces $something", and I think it's unlikely that other appliances will differ much.
2016-12-30Fix missing quotes around values in Session.string_of_opDaniil Baturin
2016-12-30Expose the string_of_op function in the module interface.Daniil Baturin
2016-12-28Add a function to convert config operations to commands.Daniil Baturin
2016-12-28Update the session module interface to expose the new functions.Daniil Baturin
2016-12-25Remove square brackets around the path string from Util.string_of_pathDaniil Baturin
They are trivial to add with printf when needed anyway, and this function is useful for generating commands from a tree.
2016-12-25Add value retrieval functions to the session module.Daniil Baturin
2016-12-25Add Vytree.children_of_path : 'a t -> string list function as a convenient ↵Daniil Baturin
shortcut for getting children of a non-root node
2016-12-23T230: Add missing data access functions to the Reference_tree module with ↵Phil Summers
unit tests
2016-12-23Make log template and log level configurable.Daniil Baturin
2016-12-23Handle Xml exceptions in Reference_tree.load_from_xml and re-raise as ↵Daniil Baturin
Bad_interface_definition to make things simpler for callers.
2016-12-23Move housekeeping stuff from vyconfd.ml to Startup module.Daniil Baturin
2016-12-22T226: Add secret and hidden properties to the reference tree.Phil Summers
2016-12-21T225: Added inactive and ephemeral fields to node data in Config_treePhil Summers
2016-12-20T224: add node comment functionality to the config tree.Daniil Baturin
2016-12-15T212: use a directory (normally $program_dir/validators) for external ↵Daniil Baturin
validators. What's bad is that right now way too many things are aware of the nature of external validators, and the validators dir (formerly validators hashtable) is passed around a lot. We'll need to think it through.
2016-12-15Add Directories module for storing directory structure information.Daniil Baturin
2016-12-15Rename type Vyconf_config.vyconf_config to Vyconf_config.t for brevityDaniil Baturin
It's the only type it exports.
2016-12-14T210: Oops, missing exception handler. mandatory_field raises Missing_fieldDaniil Baturin
2016-12-14T210: Do not use the Result compatibility library, use built-in result type.Daniil Baturin
Use of the Result module from a compatibility library came from using Yojson for config parsing, which uses it for compatibility with older OCaml, since the ('a, 'b) result type appeared in Pervasives only in OCaml 4.03 All projects using vyconf library, however, by definition will be new projects, and will not have any reasons to use older compilers.
2016-12-14Move version info out of defaults to its own module.Daniil Baturin
2016-12-14T210: use TOML for the vyconf config file.Daniil Baturin
Add an example of the file too.
2016-12-14Add default values for optional config fields to the Defaults module.Daniil Baturin
Related to T210.
2016-12-13Fix a few instances of sloppy sequences (with non-unit expressions).Daniil Baturin
2016-12-08Initial mockup of the vyconfd binary.Daniil Baturin
2016-12-08Fix build for ocaml 4.03Daniil Baturin
Yojson now uses the Result.result type for its decoding functions instead of polymorphic variants.
2016-12-07Initial implementation of the message decoder/encoder.Daniil Baturin
2015-10-01Some error handling in config loading.Daniil Baturin
2015-09-30Add get_values method to the message decoder.Daniil Baturin
2015-09-29Add message decoder implementation.Daniil Baturin
Restrict the Message module interface to the message types and decoder function.
2015-09-28Remove the value field from message types to account for valueless nodes and ↵Daniil Baturin
the like.
2015-09-28Add types and derivers for the message decoder.Daniil Baturin
2015-09-25Move the node_type type to Reference_treeDaniil Baturin
It shall not be used by Config_tree, so there is no reason to keep it there.
2015-09-24Add a module for various defaults.Daniil Baturin
2015-09-24Add minimal vyconfd config loader.Daniil Baturin
2015-09-23Expose set and delete in session module signature.Daniil Baturin
2015-09-23Add delete function to session.Daniil Baturin
2015-09-23Factor out common session data into a world type.Daniil Baturin
2015-09-23Add session module stub.Daniil Baturin
2015-09-23Make Config_tree.set aware of valueless nodes.Daniil Baturin
2015-09-23Add delete function to Config_tree, add some tests for it.Daniil Baturin
2015-09-22Fix formatting in Vylist.Daniil Baturin
2015-09-21Fix multilevel insert logic in Vytree.Daniil Baturin
2015-09-21Fix multilevel insert logic.Daniil Baturin
2015-09-21Make Vylist.complement return a list rather than list option.Daniil Baturin
Situations when two lists are the same and when they don't have a common part become indistinguishable, but that's rarely needed.
2015-09-21Remove metadata from the config tree data, rendering and the like requiresDaniil Baturin
input from the reference tree anyway. Make value modification functions behaviour multi-value node aware.