summaryrefslogtreecommitdiff
path: root/scripts
AgeCommit message (Collapse)Author
2023-10-08scripts: T4269: node.def generator should automatically add default valuesChristian Breunig
Since introducing the XML <defaultValue> node it was common, but redundant, practice to also add a help string indicating which value would be used as default if the node is unset. This makes no sense b/c it's duplicated code/value/characters and prone to error. The node.def scripts should be extended to automatically render the appropriate default value into the CLI help string. For e.g. SSH the current PoC renders: $ cat templates-cfg/service/ssh/port/node.def multi: type: txt help: Port for SSH service (default: 22) val_help: u32:1-65535; Numeric IP port ... Not all subsystems are already migrated to get_config_dict() and make use of the defaults() call - those subsystems need to be migrated, first before the new default is added to the CLI help. (cherry picked from commit a68c9238111c6caee78bb28f8054b8f0cfa0e374)
2021-09-07scripts: op-mode: T3807: bugfix node.def generatorChristian Poessinger
process_node() processes the XML tree in a fixed order, "node" before "tagNode" before "leafNode". If the generator created a "node.def" file, it can no longer be overwritten - else we would have some stale "node.def" files with an empty help string (T2555). Without the fixed order this would resulted in a case where we get a node and a tagNode with the same name, e.g. "show interfaces ethernet" and "show interfaces ethernet eth0" that the node implementation was not callable from the CLI, rendering this command useless (T3807). This can be fixed by forcing the "node", "tagNode", "leafNode" order by sorting the input XML file automatically (sorting from https://stackoverflow.com/a/46128043) thus adding no additional overhead to the user. (cherry picked from commit 7623e37c918c65418d8dfc521f976bb91f0594c0)
2021-08-23T3165: op-mode: prevent override of populated node.def file with empty contentChristian Poessinger
This is an extension to commit b4fdcebe ("T3165: prevent override of populated node.def file with empty content") which implemented the same thing for the configuration mode commands. (cherry picked from commit 17b5ac143c9128ac3e187d8d8167dd8fe6cbca7d)
2021-08-23scripts: op-mode: use Python 'f'ormat strings on debug messagesChristian Poessinger
(cherry picked from commit 252bc820b0d130d8d81b5711586eca41287abdca)
2021-08-19T3768: Revert "xml: T1962: Add syntaxVersion to schema"John Estabrook
This reverts commit 5849ba88a1a20e4d3584843e0be46e456c5f7980.
2021-08-19T3768: Revert "xml: T1962: Add script to process syntaxVersion tags during ↵John Estabrook
build" This reverts commit 0ecc2c26f7ac939e4e23c14f5027ac7592c25761.
2021-08-12T3574: add constraintGroup for combining validators with logical ANDJohn Estabrook
(cherry picked from commit 591b8bcadd8b6bbd46c61484193d2bf7e16bd1ae commit 31553283aaa929da63147082e85513e8d4dacf0e commit 59a4aadfe419eca16e6288b37d6c51acd9789903)
2021-08-12xml: T3732: merge leafNode with defaultValue with leafNode(s) of same pathJohn Estabrook
(cherry picked from commit e7c69ead85af485b2b881f24b929a4bcc779a4ce and commit ec6dc94a5144ea4ac75ba6fac4d85b4f66337ae2)
2021-06-08T3165: prevent override of populated node.def file with empty contentChristian Poessinger
(cherry picked from commit b4fdcebebecd8d8952211b78bce26d53fd29edb3)
2021-03-31xml: T3445: avoid false positive on element references; use path nameJohn Estabrook
(cherry picked from commit f22fa8e6454b1cd2539ddb7c354ac9eeeac725c5)
2021-02-03xml: T2910: add script to support override of defaultValue elementsJohn Estabrook
(cherry picked from commit 3dfbd19e0f3676d70dc32f0e001e4589eb9e97d6)
2020-08-31configd: T2582: add utility to safely add/remove items from include fileJohn Estabrook
2020-08-31configd: T2582: add shim var to node.defJohn Estabrook
2020-07-18T2704: force newlines after listActiveNode output.Daniil Baturin
2020-06-03Enable debug mode to build-command-templatesChristian Poessinger
2020-05-07T2431: use native versions of validate-value and numeric validator.Daniil Baturin
2020-03-18T2136: fail the build for interface definitions with valueless or multi ↵Daniil Baturin
flags set for non-leaf nodes.
2020-03-04templates: T2099: make op-mode path completion helper workingChristian Poessinger
2020-01-13xml: T1962: Add script to process syntaxVersion tags during buildJohn Estabrook
2020-01-13xml: T1962: Add syntaxVersion to schemaJohn Estabrook
2019-12-10scripts: import: T1836: add regex filter for condition importAntonio Cuñat Alario
Add import multiple values to a regex xml expression
2019-12-10scripts: import: T1836: fix XML exportAntonio Cuñat Alario
Fix export xml interfaces from node.def where node.tad doesn't have a node.def file
2019-10-25[XML templates] T1772: Add escaping of `\` symbol in `<regex>`zsdc
2019-09-17T1667: add a script for importing old conf mode command definitions into XML.Daniil Baturin
2019-08-02T786: Rename tagNode environment variable VALUE to VYOS_TAGNODE_VALUEChristian Poessinger
2018-08-18T786: Add tagNode value as a Env.variable passed into config scriptRunar Borge
2018-06-23T689, T707: do not use sudo for op mode commands.Daniil Baturin
Else they all are unavailable for operator level users.
2018-05-18More granular validator error handling in build-command-templates.Daniil Baturin
2018-05-17T646: prevent convertors from overwriting existing node.def files.Daniil Baturin
2018-05-16T644: remove prefixing from all scripts and update environment variables ↵Daniil Baturin
with VyOS paths.
2018-05-16T643: correct support for regex validators.Daniil Baturin
2018-05-16T643: correct the logic for generating node constraints and add emulation of ↵Daniil Baturin
multiple validation options.
2018-05-15Correct the logic of generating tag nodes for op mode.Daniil Baturin
Unlike conf mode tag nodes, op mode "pseudo-tag nodes" have the real node.def inside the node.tag dir rather than at the top level. The required node.def at the top level is populated with the help string from the real one. A side effect is that commands that take arguments now must have their own words, e.g. "run show arp" and "run show arp eth0" is impossible and has to be "run show arp" and "run show arp interface eth0", which is probably a good thing.
2018-05-14T633: build integration and minor fixes in the op mode command generator.Daniil Baturin
2018-05-14T602: remove support for the type element and correct the logic for setting ↵Daniil Baturin
the type in generated command templates.
2017-12-31Support setting optional 'type' node in command templates other than 'txt'Christian Poessinger
2017-12-09Bugfix: 'multi:' statement must be on top of generated 'node.def' fileChristian Poessinger
If 'multi:' is not on the first line of the auto generated 'node.def' file, VyOS will throw a CLI error: get_parsed_tmpl: failed to parse tmpl [.../interfaces] DEBUG vexit_internal: get_parsed_tmpl: failed to parse tmpl [.../interfaces]
2017-10-11T413: Make a schema for op mode;Taniadz
T420: Write op mode version of node.def generator
2017-09-16T396: add support for value constraint tags to the build-command-templates ↵Daniil Baturin
script
2017-09-14T388: nicer options handling and output.Daniil Baturin
2017-09-14T392: add support for completionHelp to the interface definition converter.Daniil Baturin
2017-09-12Add debug mode to the build-command-templates script with content printingTaniadz
2017-09-12Add debug mode to the build-command-templates scriptTaniadz
2017-09-08Automatically wrap all script calls in generated templates into sudo sh -cDaniil Baturin
shemminger once said we already overuse sudo and advocated using capabilities instead, but I think the union of all privilege sets needed equals the root privileges, and in practice admin level users need sudo anyway.
2017-09-08Fix handling of tag and multi nodes in the convertor.Daniil Baturin
Ugly fixup in the makefile to delete generated node.def's that are now in other packages. Adjust the cron interface definition to better match the old templates.
2017-09-07Add support for priority tags. In 1.x, there's no way around using it.Daniil Baturin
2017-09-07Remove crude debugging stuff, I'll add a proper solution later.Daniil Baturin
2017-09-07Add a convertor from new style XML command definitions to old style templates.Daniil Baturin