Vyconf roadmap

From VyOS Wiki
Jump to: navigation, search

This roadmap is not complete, it's very vague. Add things you think need to be done, or break tasks down into smaller parts if you want.

What status means:

  • Blank: nothing has been done in this area so far
  • Designed: We have pretty good idea how to do it, but there is no code yet
  • In progress: Code is being written
  • Implemented: Code works, tests pass, you can use rely on it in other modules
  • Stable: Module API and behaviour will not change in backwards-incompatible ways
Area Status Notes
Multiway tree for config representation Implemented
Config tree (higher level set/delete wrappers for primitive tree node insert/delete operations) Implemented
Reference tree (the tree that stores allowed config nodes and metadata for path and value validation) Implemented
Session (highest level set/delete operations that validate the path and value etc.) In progress It will be in progress for a long time as it binds everything together
Daemon config loader (the config with settings of vyconf itself, like PID file and whatever) Implemented
XML schema for interface definitions (that defines which nodes can exist in the config and what values they can have) Implemented Subject to change/extension
"Curly" config syntax (config.boot) parser Implemented
Socket communication In progress We need to decide on the message format and, most importantly, wire protocol
Config loader Needs serious design discussion
Commit algorithm Needs *very* serious design effort
Non-interactive client
Interactive shell This will likely need its own roadmap ;)
HTTP bridge