Sysrepo Integration Installation
The following sections describe how to install, build, and verify Sysrepo Integration support for netconfd-pro.
Two installation models are supported:
source-code installation, where netconfd-pro is built with Sysrepo Integration enabled
binary-package installation, where a prebuilt package with Sysrepo Integration support is installed together with the required runtime libraries
Before building or running the server, ensure that the required libsysrepo, libyang, and related development tools are installed and visible in the selected build and runtime environment.
Sysrepo Integration Source Code Installation
Sysrepo Integration Dependencies
The Sysrepo Integration feature requires external Sysrepo and libyang packages in addition to the normal YumaPro build environment.
This section lists the packages specifically needed to build and run netconfd-pro with Sysrepo support.
Before building netconfd-pro with Sysrepo Integration support, the following software must already be installed:
a compatible libsysrepo installation
a compatible libyang installation
the pkg-config tool
the compiler and build tools required for a normal YumaPro source build
The libyang library is a required dependency of sysrepo. The sysrepo development package provides the header files and pkg-config metadata needed to compile the Sysrepo Integration code.
The Sysrepo command line tools are also recommended for installation and testing:
sysrepoctl for YANG module installation and management
sysrepocfg for configuration import, export, and datastore verification
Ubuntu version:
sudo apt-get install libyang2-dev libsysrepo-dev sysrepo pkg-config
Fedora version:
sudo dnf install libyang-devel sysrepo-devel sysrepo pkgconf-pkg-config
Notes:
On Ubuntu 22.04, the libsysrepo-dev package depends on libyang2-dev.
On Fedora, the sysrepo-devel package depends on libyang-devel, pkgconf-pkg-config, and sysrepo.
The Sysrepo tools may be packaged separately on some platforms.
The Sysrepo Integration build must use one consistent installation of
libsysrepo and libyang. Mixed installations, such as one version
in /usr and another version in /usr/local, are not supported and
can cause compile-time or runtime failures.
If custom install locations are used, ensure that the compiler, linker, and runtime loader all resolve the same library set.
Sysrepo Source Code Compilation
If YumaPro is installed from source code, then netconfd-pro must be
built with the WITH_SYSREPO=1 make variable enabled.
Example:
make DEBUG=1 DEBUG2=1 EVERYTHING=1 WITH_SYSREPO=1 USE_WERROR=1
sudo make DEBUG=1 DEBUG2=1 EVERYTHING=1 WITH_SYSREPO=1 USE_WERROR=1 install
This enables compilation of the Sysrepo Integration code in the server.
If the build system supports a custom Sysrepo installation prefix, then that prefix must also be provided during the build. For example:
make DEBUG=1 DEBUG2=1 EVERYTHING=1 WITH_SYSREPO=1 SYSREPO_PREFIX=/custom/prefix
sudo make DEBUG=1 DEBUG2=1 EVERYTHING=1 WITH_SYSREPO=1 SYSREPO_PREFIX=/custom/prefix install
After installation, verify that the built server resolves the intended libraries. For example:
ldd /usr/sbin/netconfd-pro | egrep 'sysrepo|yang'
This check should show the expected libsysrepo and libyang shared libraries.
Sysrepo Integration Binary Package Installation
If YumaPro is installed from binary packages, then a package build that includes Sysrepo Integration support is required.
Before installing the package, ensure that the required runtime libraries for libsysrepo and libyang are already installed on the target system.
After the binary package is installed, verify that the server resolves the expected runtime libraries:
ldd /usr/sbin/netconfd-pro | egrep 'sysrepo|yang'
If the server does not resolve libsysrepo and libyang, then the required runtime packages are missing or the runtime linker environment is not configured correctly.
Runtime Verification
After the build is complete, verify that the Sysrepo runtime environment is configured correctly before starting the server.
Typical checks include:
pkg-config --modversion sysrepo
pkg-config --modversion libyang
ldconfig -p | egrep 'sysrepo|yang'
If a custom Sysrepo repository location or shared memory prefix is used, the corresponding environment variables must also be set consistently before running the server or any Sysrepo tools.
Example:
export SYSREPO_REPOSITORY_PATH=/custom/repository/path
export SYSREPO_SHM_PREFIX=customprefix
These settings must match the intended Sysrepo deployment.
After the environment is prepared, the server must be started with the
--with-sysrepo parameter set to true. If this parameter is
not enabled, the Sysrepo Integration code will not be activated even if
the server was built with WITH_SYSREPO=1.
Example:
netconfd-pro --with-sysrepo=true
The server can also be started with additional normal netconfd-pro startup parameters required for the deployment.
Next Steps
After installation is complete, the next steps are: