Page MenuHomeVyOS Platform

Improve interface completion helper CLI experience
Closed, ResolvedPublicFEATURE REQUEST

Description

There are currently two ways to generate the interface name completion helper list (we use openvpn in this example)

  • <script> ${vyos_completion_dir}/list_interfaces.py --type openvpn</script>
  • <path>interfaces openvpn</path>

The first one using <script> tends to be rather slow as there is a Python interpreter startup involved (expensive). The latter simply calls a C program which is executed rather fast and gives the same result.

We can simply replace the first call with the second one to make the CLI feel faster.

NOTE this currently does not work for interfaces that have VLAN subinterfaces (bridge, bond, ethernet)

Details

Difficulty level
Easy (less than an hour)
Version
-
Why the issue appeared?
Will be filled on close
Is it a breaking change?
Perfectly compatible
Issue type
Performance optimization

Event Timeline

c-po changed the task status from Open to In progress.Jan 23 2023, 4:43 PM
c-po claimed this task.
c-po triaged this task as High priority.
c-po created this task.
c-po changed Difficulty level from Unknown (require assessment) to Easy (less than an hour).

PR for alternative completion helper. This provides the same args/output of the Python script, with a speedup of 1--2 orders of magnitude; testing needed.
https://github.com/vyos/vyos-utils/pull/11