Project Proposals/vppcfg

From fd.io
< Project Proposals
Revision as of 20:42, 5 April 2022 by Pimvanpelt (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search


Name

VPP Configuration utility

Project Contact Name and Email

Pim van Pelt <pim@ipng.nl>

Repository Name

vppcfg

Description

vppcfg is a commandline utility that applies a YAML based configuration file safely to a running VPP dataplane. It contains a strict syntax and semantic validation, and a path planner that brings the dataplane from any configuration state safely to any other configuration state, as defined by these YAML files.

vppcfg consumes YAML files of a specific format. Their validity is asserted by two main types of validation:

  • syntax checks are performed and this ensures that all fields in the YAML file are correctly formed, that field-names are correctly spelled, that no extra fields are given, and their values are of the correct type.
  • semantic validations are performed to ensure that configurations are safely applyable to a running VPP. Note: Some semantic checks are stricter than VPP, because applying them may leave the dataplane in a non-recoverable state.

Then, a path is planned from the current running VPP dataplane configuration to the desired target configuration.


Scope

Initial Committers

Pim van Pelt <pim@ipng.nl> Dave Wallace <dwallacelf@gmail.com> ... two more

Vendor Neutral

There is no desire or need for vppcfg to commit to any given vendor. It's purpose is to configure the open source fd.io version of the VPP dataplane based a YAML configuration file. No external tools or projects/products will be in scope for vppcfg to configure. In principle, the only entity it will be talking to is the CLI and API endpoints provided by VPP itself.


Meets Board Policy (including IPR, being within Board defined Scope etc)

Meets board policy as expressed in Technical Community Charter and IP Policy

Administrata

  • Request for Project proposal consideration
    • Email: (place link to email to TSC proposing project, this can be obtained from TSC Archives
    • Date: (date proposed, makes it simpler to calculate the pre-requisite 2 week time period of gestation before being permitted to be voted on)