commit | bba5252a704602be7b0e1d0957895408a8f4e029 | [log] [tgz] |
---|---|---|
author | Jan Kundrát <jan.kundrat@cesnet.cz> | Wed Nov 11 17:40:31 2020 +0100 |
committer | Jan Kundrát <jan.kundrat@cesnet.cz> | Thu Nov 12 11:22:12 2020 +0100 |
tree | 646451d737f54258e70af514f5921450fe54f51b | |
parent | 75c88c5f383c8c19097ab4c60526604ff4167a53 [diff] |
Make sysrepo dependency optional This project is useful as a standalone NETCONF client, too. Do not require sysrepo unconditionally. If not available, just build the main NETCONF client (and a `yang-cli`, too, because it's essentially free). The CMake setup is a wee bit complex. CMake's OPTION statement doesn't really support tri-state dependencies, and I like automagic stuff: - OFF for disabling stuff unconditionally, even if the deps are there, - ON for enabling stuff, and failing if it cannot be built, - AUTO for trying to enable stuff if possible, and gracefully disabling it if not available Of course this has a potential of introducing nasty surprises to the CI, so make sure the CI fails if the sysrepo backend gets disabled for some reason. Change-Id: I9c38245c3eea767ad20f42240328c483b6f80dd4
This program provides an interactive console for working with YANG data. It can connect to NETCONF servers, and also talk to sysrepo locally.
For building, one needs:
Use an exact commit of any dependencies as specified in submodules/dependencies/*
.
The build process uses CMake. A quick-and-dirty build with no fancy options can be as simple as mkdir build && cd build && cmake .. && make && make install
.
Issue reporting and feature requests are welcome via Taiga.io.
We are using Gerrit for patch submission, code review and Continuous Integration (CI). Development roadmap and planning happens over Taiga.io.
Copyright © CESNET, https://www.cesnet.cz/ . Portions copyright © Faculty of Information Technology, Czech Technical University in Prague, https://fit.cvut.cz/ . Most of the code was written by Václav Kubernát (CESNET, formerly FIT ČVUT) and Jan Kundrát (CESNET). The project is distributed under the terms of the Apache 2.0 license.