summaryrefslogtreecommitdiff
path: root/python
AgeCommit message (Collapse)Author
2025-12-04Merge pull request #4878 from alexandr-san4ez/T8001-currentDaniil Baturin
ipsec: T8001: Commit fails removing VTI interface in IPsec config
2025-12-02Merge pull request #4867 from jestabro/vyconf-session-unsavedJohn Estabrook
T8032: add analogue of cli-shell-api sessionUnsaved
2025-12-01T8030: VPP: Check support for changed driver tooNataliia Solomko
2025-11-28ipsec: T8001: Commit fails removing VTI interface in IPsec configOleksandr Kuchmystyi
Fix cases where commit or IPsec up/down hooks fail if the VTI interface has already been deleted or the `/tmp/ipsec_vti_interfaces` file does not exist. Changes: - Return empty dict from `get_interface_config()` if it returns None to avoid TypeError when accessing 'operstate' (vti_updown_db.py). - Use `open_vti_updown_db_for_create_or_update()` in `vti‑up‑down` script so the temporary interface tracking file is created automatically when missing.
2025-11-26T8032: add protobuf files for analogue of sessionUnsavedJohn Estabrook
2025-11-26Merge pull request #4862 from jestabro/vyconf-edit-levelDaniil Baturin
T8009: add vyconf_cli_compat for retained options of cli-shell-api
2025-11-25Merge pull request #4860 from sarthurdev/ping-checkJohn Estabrook
kea: T7913: Fixes for ping-check handling
2025-11-23T8031: use util file_compare for check unsaved_commitsJohn Estabrook
2025-11-23T8031: add file comparison utility for comparison modulo empty linesJohn Estabrook
2025-11-20T8009: add generated protobuf files for edit_levelJohn Estabrook
2025-11-20kea: T7913: Fixes for ping-check handlingsarthurdev
- Kea docs state multi-threaded mode is required for ping checking. - Parent scope needs enabling if shared-network/subnet has ping-check enabled.
2025-11-20T7988: adjust function name to distinguish compare from show configJohn Estabrook
2025-11-19Merge pull request #4856 from c-po/op-mode-install-cli-fixChristian Breunig
op-mode: T8000: fix environment when calling my_set
2025-11-18Merge pull request #4845 from vyos/T7556Daniil Baturin
T7556: VPP add IPFIX collector configuration
2025-11-18vyos.utils: T8000: fix environment for install_into_config()Christian Breunig
2025-11-14T7556: VPP add IPFIX collector configurationViacheslav Hletenko
Add VPP IPFIX configuration commands: ``` set vpp ipfix active-timeout '8' set vpp ipfix collector 192.0.2.2 port '2055' set vpp ipfix collector 192.0.2.2 source-address '192.0.2.1' set vpp ipfix flowprobe-record 'l2' set vpp ipfix flowprobe-record 'l3' set vpp ipfix flowprobe-record 'l4' set vpp ipfix inactive-timeout '32' set vpp ipfix interface eth0 set vpp ipfix interface eth1 direction 'both' set vpp ipfix interface eth1 flow-variant 'ipv4' ```
2025-11-14Merge pull request #4841 from alexandr-san4ez/T7255-currentViacheslav Hletenko
VRF: T7255: Impossible to delete protocols under VRF
2025-11-13Merge pull request #4835 from natali-rs1985/T7731Nataliia S.
T7731: Static ARP entries are missing after an interface status change
2025-11-12vrf: T7255: Impossible to delete protocols under VRFOleksandr Kuchmystyi
When deleting the 'protocols' node under a VRF, a `KeyError` was raised in `frrender.py` because the 'protocols' dictionary key was missing when attempting to update protocol states. This prevented configuration commits from completing successfully.
2025-11-12T7731: Static ARP entries are missing after an interface status changeNataliia Solomko
2025-11-06Merge pull request #4823 from l0crian1/fix-wlb-multi-intChristian Breunig
wlb: T7977: Fix weight calculation for multiple interfaces
2025-11-06Merge pull request #4814 from jestabro/exn-alertDaniil Baturin
T7915: minor fixes for consistent exception handling and error messages
2025-11-05Merge pull request #4833 from c-po/fix-veth-removalViacheslav Hletenko
veth: T7990: fix stale DHCP clients when removing virtual Ethernet pairs
2025-11-05T7910: add call show_sessionsJohn Estabrook
show_sessions returns a list of dicts of the internal session record structure for each live session. As this call is itself mediated by a session one can specify exclude_self=True, resp., exclude_other=True.
2025-11-05T7910: update auto-generated protobuf files for show_sessionsJohn Estabrook
2025-11-05T7910: switch keyword order pid/token for consistency and intuitionJohn Estabrook
pid is the more commonly passed argument, and this maintains consistency with configsession arg use.
2025-11-05T7910: add keyword extant, for use by teardown scriptJohn Estabrook
The standalone script teardown-config-session.py is called on CLI config-mode exit, to close the persistent vyconf config session. Instead of injecting the config-mode env var into the external script to indicate a non-ephemeral session, add keyword 'extant' to find existing session.
2025-11-05T7910: call enter_config_mode only on new sessionJohn Estabrook
2025-11-05T7910: op-mode init should always start a new sessionJohn Estabrook
2025-11-05T7910: use weakref.finalize for reliable session teardownJohn Estabrook
2025-11-05T7915: minor fixes for consistent exception handling and error messagesJohn Estabrook
The addition of alert exn to vyos1x-config allows an audit of all raised exceptions, providing fixes for consistent handling and error reporting.
2025-11-05T7969: expose boolean test value_existsJohn Estabrook
2025-11-04wlb: T7977: Updated smoketest to validate nft vmap weight bucketsl0crian1
2025-11-04Merge pull request #4828 from c-po/restart-container-vrfViacheslav Hletenko
container: T7305: fix VRF loss when restarting pods
2025-11-04veth: T7990: fix stale DHCP clients when removing virtual Ethernet pairsChristian Breunig
When removing a veth interface, the kernel automatically deletes its peer interface, since veth devices always exist in pairs. However, this automatic removal does not trigger the remove() helper in vyos.ifconfig.interfaces, which can leave associated DHCP(v6) clients running indefinitely. For example: ip link add veth0 type veth peer name veth1 ip link del dev veth1 Removing veth1 will also delete veth0 in the kernel, but the VyOS cleanup routines are never called for veth0. This patch ensures that peer removal correctly purges both interfaces and their associated state. This drops the workarounds in veth smoketest and falls back to the common interface smoketests from the inherited base class.
2025-11-04Merge pull request #4747 from natali-rs1985/T7789Nataliia S.
T7789: T7661: VPP prevent failing to load XDP in clouds (ena/gve drivers)
2025-11-03container: T7305: fix VRF loss when restarting podsChristian Breunig
Container networks are only started when there is at least one active consumer. If a network is created without any attached containers, it does not need to be assigned to a VRF yet. When the last container in a pod is stopped, its associated container network is removed. Upon container restart, the kernel recreates the network, but the VRF assignment may be lost in the process. This change ensures that all container networks are correctly reattached to their designated VRFs when a pod restarts.
2025-11-03vyos.ifconfig: T7305: set_vrf() should call get_vrf() helperChristian Breunig
2025-11-03Merge pull request #4808 from natali-rs1985/T7949Daniil Baturin
T7949: VPP add the ability to configure bond subinterfaces for NAT
2025-10-31wlb: T7977: Fix weight calculation for multiple interfacesl0crian1
- Fixed issue in T7977 - Added smoketest for 3 or more interfaces in rule - Added wait_for function to utils/misc.py
2025-10-31T7789: T7661: VPP prevent failing to set XDP driver on cloudsNataliia Solomko
Some cloud NICs (ena, gve) fail to load XDP if all RX queues are configured. To avoid this, we limit the number of queues to half of the maximum supported by the driver.
2025-10-30T7975: VPP: Fix API calls for sFlowNataliia Solomko
2025-10-29Merge pull request #4812 from c-po/pki-certbot-fixesChristian Breunig
pki: T7953: refactor internal dependency generation
2025-10-29Merge pull request #4810 from bl0way/T7896-frr-profileChristian Breunig
T7896: Add frr profile selection
2025-10-29frr: T7896: Configure frr profile with 'system frr profile' commandbl0way
Co-authored-by: Christian Breunig <christian@breunig.cc>
2025-10-28dhcp-server: T3936: Added support for DHCP Option 82 (#4665)cblackburn-igl
* dhcp-server: T3936: Added support for DHCP Option 82 This commit adds support in both the CLI and the underlying code for DHCP Option 82 to be used to filter/route DHCP address assignments. The primary use case for this is to support enterprise switches which can "tag" DHCP requests with physical real world informaiton such as which switch first saw the request and which port it originated from (known in this context as remote-id and circuit-id). Once client-classes have been defined they can be assigned to subnets or ranges so that only certain addresses get assigned to specific requests. There is also a corresponding documentation update which pairs with this code change. (cherry picked from commit 326b5e713cb363a2b9f69e2204c4ee2ccd9939bb) * Update src/conf_mode/service_dhcp-server.py Co-authored-by: Nataliia S. <81954790+natali-rs1985@users.noreply.github.com> * Update src/conf_mode/service_dhcp-server.py Co-authored-by: Nataliia S. <81954790+natali-rs1985@users.noreply.github.com> * Update interface-definitions/include/dhcp/dhcp-server-common-config.xml.i Co-authored-by: Nataliia S. <81954790+natali-rs1985@users.noreply.github.com> --------- Co-authored-by: Daniil Baturin <daniil@baturin.org> Co-authored-by: Nataliia S. <81954790+natali-rs1985@users.noreply.github.com>
2025-10-28Merge pull request #4796 from natali-rs1985/T7938Daniil Baturin
T7938: VPP: Rewrite sFlow implementation
2025-10-26vyos.defaults: T7953: globally define openconnect systemd service nameChristian Breunig
2025-10-23T7949: VPP add the ability to configure bond subinterfaces for NATNataliia Solomko
2025-10-22Merge pull request #4622 from MattKobayashi/T3680Viacheslav Hletenko
T3680: protocols: add dhclient hooks for dhcp-interface static routes