tree 4075f38ac97901347173bc5fdb6088511323a36c
parent ba1421ba885aea5d0f0d1b3256ace14f2970d477
author ekinzie <ekinzie@pobox.com> 1665385437 -0400
committer GitHub <noreply@github.com> 1665385437 +0200
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsBcBAABCAAQBQJjQ8PdCRBK7hj4Ov3rIwAA/AcIAIOMSKYLa30tLN3jr0aI9Hwn
 iIfbGV7hiR4QUqIDotfih+li8Ot4HTWh6FnxziovMDb8v1+qkxFJfkqN8aRqWQmH
 R3usVTlWF1UTL4Lh8hMJoM3zXJB1N2dh59vuU/1nBWGeKCd+32xEyv55Ses/LQxE
 YxCRHGs9dVslHWArBlfht40lYMCLoh8M+pL3FQdwvXNWCZGHf017tQKGAkx7PxnQ
 vAMTJQ9g9etgaCYI2a9TeD3qfAgQk96vnsKC0hfIYV0wgqE5pUH8udsUEEyIjvmC
 Kzq9ZjTqIBcvNsQYGl2ebY+j2MhysAmUIBgZqCbP24x4f31VA+UM/IzSBxZAwlE=
 =L7tE
 -----END PGP SIGNATURE-----
 

yanglint FEATURE schema mount support (#1901)

* modify existing context if provided

In ly_ctx_new_yldata(), check if *ctx is NULL.  If so, proceed as before
with allocating a new context.  Otherwise, load modules into the existing
context.

Signed-off-by: Eric Kinzie <ekinzie@labn.net>

* add parent-reference xpath helper to schema-mount plugin

This new function produces a list of schema nodes from the expanded
parent-reference xpath expressions.

Signed-off-by: Eric Kinzie <ekinzie@labn.net>

* add context lookup to schema-mount plugin

This function allocates a new context for a particular instance of the
yangmnt:mount-point extension.

Signed-off-by: Eric Kinzie <ekinzie@labn.net>

* yanglint: schema-mount extension callback

Add a commandline argument "-x" that accepts a file containing extension
data, used to create a context for the schema-mount extension.  This file
has the same format as what is provided to the "-Y" option.  A callback
function for the schema-mount extenion is registered if the new option
is specified.

This allows validating instance data for models that include a schema
mount point.

Signed-off-by: Eric Kinzie <ekinzie@labn.net>

* yanglint: print mounted schema trees

Display "mp" flag for mount point and print mounted tree.  Also display
the / and @ opts in node names.

Signed-off-by: Eric Kinzie <ekinzie@labn.net>

* add unit test for tree mount-point flag

Test is courtesy of aPiecek <piecek@cesnet.cz>.

Signed-off-by: Eric Kinzie <ekinzie@labn.net>

* add example data files for validation with schema-mount

From tools/lint/examples directory:

% ../../../build/yanglint \
    -f json -t config -p ../../../models -p . \
    -Y ./sm-context-main.xml -x ./sm-context-extension.xml sm-data.xml

% ../../../build/yanglint \
    -f tree -p ../../../models -p . \
    -Y ./sm-context-main.xml -x ./sm-context-extension.xml sm-main.yang

Signed-off-by: Eric Kinzie <ekinzie@labn.net>

Signed-off-by: Eric Kinzie <ekinzie@labn.net>
Co-authored-by: Eric Kinzie <ekinzie@labn.net>