Page MenuHomeVyOS Platform

Revisit storing syntax version of interface definitions in XML file
Closed, ResolvedPublic

Description

In T1962, the possibility of storing the component syntax version within the XML file was introduced. It has remained underadvertised and underused due to a question of convenience: the mapping

component <~~> interface definition file

is not 1-to-1, nor should it be (for example system <~> system-*.xml.in; interfaces <~> interface-*.xml.in). This raises the question of in which file to include the XML syntax version element, so as to be least burdensome on the developer. In this task, we will revisit the matter, so as to finally move the component syntax version out of vyatta-cfg-system.

Details

Difficulty level
Unknown (require assessment)
Version
vyos-1,4
Why the issue appeared?
Will be filled on close
Is it a breaking change?
Unspecified (possibly destroys the router)
Issue type
Unspecified (please specify)

Event Timeline

jestabro triaged this task as Normal priority.
jestabro created this object in space S1 VyOS Public.
jestabro updated the task description. (Show Details)

The suggested resolution is to define an include file with the syntaxVersion element. The syntaxVersion element contains the component name and version number; the including interface definition file corresponds to the conf_mode script. Hence, this defines a mapping

conf_mode script --> component name. In addition, the workflow is not burdensome:

old workflow: update interface definition/conf mode script; write migration script; update vyatta-cfg-system curver_data
new workflow: update interface definition/conf mode script; write migration script; update version number in interface_definitions/include/version

Al the processing scripts are already in place in 1.3/1.4. An example is here:

https://github.com/vyos/vyos-1x/compare/current...jestabro:syntaxVersion

jestabro changed the task status from Open to In progress.Aug 4 2021, 4:37 PM
jestabro changed the task status from In progress to Backport candidate.Feb 17 2022, 3:32 PM
jestabro added a project: VyOS 1.3 Equuleus.
jestabro moved this task from Need Triage to Finished on the VyOS 1.4 Sagitta board.
dmbaturin set Issue type to Unspecified (please specify).