Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

The <intended> datastore does not contain the template themselves #15

Open
kwatsen opened this issue Dec 4, 2024 · 3 comments
Open

Comments

@kwatsen
Copy link

kwatsen commented Dec 4, 2024

Templates are only useful (to determining the final config and validation) once fully expanded/flattened.

Since templates are expected to be expanded/flattened in (see #13), there is no need to keep the unexpanded template definitions in .

Further, having unexpanded templates in may cause validation issues, if the YANG is unable to validate them (note: this assumes that #4 is False).

@RobertPeschi
Copy link

This is maybe not an essential point, but I am struggling a bit about the rationale behind this one.
#4 says that template should be validated, which I think is a good thing (we may discuss to what extend, as https://github.com/jsterne commented on #4), so I don't really see the harm showing it in the intended as well, as a matter of orthogonality, i.e. avoiding making exceptions if not strictly needed.

(note: this assumes that #4 is False).

If a template is not validated (in the running), its config could be completely messed up, hence unusable for expansion. I guess this would be best caught in the running before any doomed expansion is even attempted in the intended.

@QiufangMa
Copy link

QiufangMa commented Dec 5, 2024

if I understand this requirement correctly, template YANG module is only implemented in running ds (and system), and intended won't share a common datastore schema with running. This would require a rework of conventional datastore definition in (future) NMDA-bis work, I guess.

@derajara
Copy link

derajara commented Jan 2, 2025

To maintain the consistency of the view, that an intended is a read only representation of the running, i don't see an issue of having the template itself as part of the intended (the template being just a blueprint). I think this is also related to the #4 since the earlier we detect an inconsistency in the configuration, the quicker will be the resolution instead of waiting till the template is referred by a template-consumer

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants