Skip to main content

A VPP Configuration Utility

This tool reads a configuration file, checks it for syntax and semantic correctness, and then reconciles a running VPP daemon with its configuration. It is meant to be re-entrant and stateless. The tool connects to the VPP API and creates/removes all of the configuration in a minimally intrusive way.

You can simply install this package from [PyPi]:

$ pip install [--break-system-packages] vppcfg

vppcfg uses the VPP Python API bindings (vpp_papi), which are provided by the python3-vpp-api Debian package that ships with VPP. That copy matches the API of the running dataplane, so it is a prerequisite and is deliberately not pulled in from PyPI (the PyPI copy lags many releases behind and, installed into /usr/local, shadows the deb and breaks API parsing). If you previously installed vpp_papi from PyPI, remove it so the Debian package is used:

$ pip uninstall [--break-system-packages] vpp_papi

Running

usage: vppcfg [-h] [-d] [-q] [-f] {check,dump,plan,apply} ...

positional arguments:
  {check,dump,plan,apply}
    check               check given YAML config for validity (no VPP)
    dump                dump current running VPP configuration (VPP readonly)
    plan                plan changes from current VPP dataplane to target config (VPP readonly)
    apply               apply changes from current VPP dataplane to target config

optional arguments:
  -h, --help            show this help message and exit
  -d, --debug           enable debug logging, default False
  -q, --quiet           be quiet (only warnings/errors), default False
  -f, --force           force progress despite warnings, default False

Please see vppcfg <command> -h   for per-command arguments

Documentation

Main user-focused documentation:

Developer deep-dives:

Licensing

The code in this project is released under Apache 2.0 license. A copy of the license is provided in this repo here. All contributions are held against our contributing guidelines. Notably, all code must be licensed Apache 2.0, and all contributions must come with a certificate of origin in the form of a Signed-off-by field in the commit.

All documentation under the docs/ directory is licensed Creative Commons Attribution 4.0 International License (details). A copy of the license is provided in this repo here.

Metadata

Release files for vppcfg 1.2.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for vppcfg 1.2.4
File Size Uploaded
vppcfg-1.2.4.tar.gz 54.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for vppcfg 1.2.4
File Interpreter ABI Platform
vppcfg-1.2.4-py3-none-any.whl Python 3 none any Details

Total release size: 135.4 kB

Release files / vppcfg-1.2.4.tar.gz

Download URL vppcfg-1.2.4.tar.gz
Size 54.8 kB
Tags Source
SHA-256 checksum
How to use checksums
da40be9b1627e3c9de4bbe2e0cf702ea16795c9a8b14e0b4290d8f6f40df1363
BLAKE2b-256 checksum
How to use checksums
3a9231c48d76b1541137951f9a190bc8cb317b8e2ea8016eb43ecbe1c9ba7665
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.5

Release files / vppcfg-1.2.4-py3-none-any.whl

Download URL vppcfg-1.2.4-py3-none-any.whl
Size 80.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
fc87691958e30a1887bcf76470860f87ffdf3ae2d188fabf9daa44d2fe789046
BLAKE2b-256 checksum
How to use checksums
8f48de4dea2189245547823e930b60f378960d51dc136edf3dc3117b50b288f0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.5

Release history Release notifications | RSS feed

This release

1.2.4 This release

2 release files

1.2.3

2 release files

1.2.2

2 release files

1.2.1

2 release files

1.2.0

2 release files

1.1.6

2 release files

1.1.5

2 release files

1.1.4

2 release files

1.1.3

2 release files

1.1.1

2 release files

1.1.0

2 release files

1.0.5

2 release files

1.0.4

2 release files

1.0.3

2 release files

1.0.2

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page