https://github.com/cesnet/netconf-cli
A NETCONF-talking CLI
https://github.com/cesnet/netconf-cli
cli client czechlight devops netconf sdn tab-completion yang
Last synced: 3 months ago
JSON representation
A NETCONF-talking CLI
- Host: GitHub
- URL: https://github.com/cesnet/netconf-cli
- Owner: CESNET
- License: apache-2.0
- Created: 2020-01-08T15:53:50.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2025-06-19T10:02:53.000Z (4 months ago)
- Last Synced: 2025-06-19T11:19:46.285Z (4 months ago)
- Topics: cli, client, czechlight, devops, netconf, sdn, tab-completion, yang
- Language: C++
- Homepage: https://gerrit.cesnet.cz/q/project:CzechLight%252Fnetconf-cli
- Size: 5.67 MB
- Stars: 17
- Watchers: 8
- Forks: 6
- Open Issues: 20
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Console interface to NETCONF servers

[](https://gerrit.cesnet.cz/q/project:CzechLight/netconf-cli)
[](https://zuul.gerrit.cesnet.cz/t/public/buildsets?project=CzechLight/netconf-cli)
[](https://tree.taiga.io/project/jktjkt-netconf-cli)This program provides an interactive console for working with YANG data.
It can connect to NETCONF servers, work as a standalone YANG data editor, or talk to [sysrepo](http://www.sysrepo.org/) locally.## Installation
For building, one needs:
* A C++20 compiler
* [Boost](https://www.boost.org/) (we're testing with `1.78`)
* [cmake](https://cmake.org/download/) for managing the build
* [libyang](https://github.com/CESNET/libyang) plus the [C++ bindings](https://github.com/CESNET/libyang-cpp)
* [libnetconf2](https://github.com/CESNET/libnetconf2) plus the [C++ bindings](https://github.com/CESNET/libnetconf2-cpp) for connecting to NETCONF servers
* [replxx](https://github.com/AmokHuginnsson/replxx) which provides interactive line prompts
* [docopt](https://github.com/docopt/docopt.cpp) for CLI option parsing
* [pkg-config](https://www.freedesktop.org/wiki/Software/pkg-config/) for building
* optionally, [Doctest](https://github.com/doctest/doctest/) as a C++ unit test framework
* optionally, [trompeloeil](https://github.com/rollbear/trompeloeil) for mock objects in C++
* optionally, [sysrepo](https://github.com/sysrepo/sysrepo/) plus the [C++ bindings](https://github.com/sysrepo/sysrepo-cpp) for the local sysrepo backend, and for the comprehensive test suite
* optionally, [netopeer2](https://github.com/CESNET/netopeer2) for a test suiteAt times the `devel` branch of `libyang`, `sysrepo`, `libnetconf2` and `Netopeer2` might be required due to fresh bugfixes and behavior changes.
The build process uses [CMake](https://cmake.org/runningcmake/).
A quick-and-dirty build with no fancy options can be as simple as `mkdir build && cd build && cmake .. && make && make install`.## Bug Reporting
Issue reporting and feature requests are welcome over GitHub.
## Development
We are using [Gerrit](https://gerrit.cesnet.cz/q/project:CzechLight%252Fnetconf-cli) for patch submission, code review and Continuous Integration (CI).
A [quick introduction](https://gerrit.cesnet.cz/Documentation/intro-user.html) is recommended for first-time Gerrit users.
Choose *CESNET - Sign in with GitHub* for login.
Development roadmap and planning happens [over Taiga.io](https://tree.taiga.io/project/jktjkt-netconf-cli/kanban).## Credits
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.