summaryrefslogtreecommitdiff
path: root/python
AgeCommit message (Collapse)Author
2025-10-22Merge pull request #4622 from MattKobayashi/T3680Viacheslav Hletenko
T3680: protocols: add dhclient hooks for dhcp-interface static routes
2025-10-21Merge pull request #4792 from sarthurdev/kea_configChristian Breunig
kea: T7925: Improve error handling, validate IPv6 PD prefix length
2025-10-21T5811: Make static dhcp-interface routes robustKyrylo Yatsenko
Solves the problem that vyos-configs in FRRender caches configuation and DHCP changes are ignored. * Add src/helpers/vyos-request-configd-update.py that requests vyos-configd to update FRR configuration. * Make dhclient hooks use it instead of calling protocols_static.py * Make FRRender cache not only configuration but also DHCP gateways so that is any of them changes, FRR configuration is updated
2025-10-21Merge pull request #4783 from hedrok/T5942-failover-dhcp-gatewayDaniil Baturin
T5942: Make failover support dhcp-interface
2025-10-21Merge pull request #4795 from natali-rs1985/T7930Daniil Baturin
T7930: VPP: Changing NAT44 settings resets `forwarding_enabled` to False
2025-10-20T7930: VPP: Changing NAT44 settings resets `forwarding_enabled` to FalseNataliia Solomko
Enable/disable NAT forwarding in vpp_nat.py script to prevent it's reset
2025-10-17configdict: T7927: refactor check_dhcp() with local VRF argumentChristian Breunig
While debugging and resolving the underlying VRF assignment issue in T7929, this code path was refactored for clarity. Previously, the check_dhcp() helper function relied on the parent scope’s vrf variable. Although this worked correctly, it was not clean or explicit. The function now takes and uses its own vrf argument, improving readability and maintainability.
2025-10-17frrender: T7927: de-nest DHCP and PPPoE interface section for VRFsChristian Breunig
This update refactors the code path to eliminate unnecessary nesting when processing interfaces using PPPoE or DHCP that are bound to a VRF. Previously, the configuration dictionary was only populated if a static route was defined under the corresponding VRF node. This behavior was incorrect, as interfaces tied to a VRF can receive dynamic routes - such as a default route via DHCP - without having any static routing configuration. A typical use case is a VRF dedicated to out-of-band management.
2025-10-17frrender: T7927: improve class descriptionChristian Breunig
2025-10-17kea: T7925: Improve error handling, validate IPv6 PD prefix lengthsarthurdev
2025-10-16Merge pull request #4781 from natali-rs1985/T7897Viacheslav Hletenko
T7897: VPP: fix rx-mode interrupt for XDP driver with workers
2025-10-16Merge pull request #4789 from sever-sever/T7890Viacheslav Hletenko
T7890: VPP fix verify_dev_driver
2025-10-16T7890: VPP fix verify_dev_driverViacheslav
The verify_dev_driver must return bool value, but it a device does not have PCI address (for example veth interface) it returns Traceback Fix this
2025-10-15Merge pull request #4780 from natali-rs1985/T7750Viacheslav Hletenko
T7750: VPP: CGNAT commit failure with vpptunX interface
2025-10-14Merge pull request #4786 from mzpqnxow/T7723Daniil Baturin
dhcp-server: T7723: add DHCP Option 26 (interface MTU)
2025-10-14T7750: VPP: CGNAT commit failure with vpptunX interfaceNataliia Solomko
Allow using bond interfaces in CGNAT. Improve interface cleanup to rely on VPP API queries, as VPP config changes may modify interface indexes
2025-10-14T5942: Improve current DHCP router obtainingKyrylo Yatsenko
Change vyos.template.get_dhcp_router to use '*.lease' file instead of '.leases' file - in 'leases' there can be several last leases and current one may not be the first one in file. '*.lease' file contains current lease.
2025-10-14T7897: VPP: fix rx-mode interrupt for XDP driver with workersNataliia Solomko
Remove no-syscall-lock from CLI and enable this option if interrupt/adaptive mode is enabled and workers are configured. Also forbid interrupt mode for ixgbevf driver
2025-10-11frrender: T7764: do not log unique-id in syslog messagesChristian Breunig
There is currently no use for us for unique transaction ids emitted by FRR to syslog.
2025-10-11frrender: T7764: reduce log level to notifications during normal operationChristian Breunig
There is no need for informational logging which adds quiet some noise to syslog. Informational logging can be enabled when FRR debug swtitch is set.
2025-10-11frrender: T7764: add "log timestamp precision 3" global optionChristian Breunig
2025-10-11frrender: T7764: log to daemon facility instead of local7Christian Breunig
FRR operates multiple daemons - use proper syslog facility.
2025-10-11frrender: T7764: add deletion marker for bfdChristian Breunig
When deleting the daemon configuration, use the deleted dict element to properly inform FRR config render of absence of the configuration items. Nothing needs to be rendered.
2025-10-11frrender: T7764: add deletion marked for babelChristian Breunig
When deleting the daemon configuration, use the deleted dict element to properly inform FRR config render of absence of the configuration items. Nothing needs to be rendered.
2025-10-10dhcp-server: T7723: add DHCP Option 26 (interface MTU)Adam Greene
2025-10-10T7920: vpp: add missing Warning import (#4788)Nataliia S.
2025-10-10Merge pull request #4784 from c-po/pppoe-flushViacheslav Hletenko
vyos.ifconfig: T7919: call "ip addr flush" only if interface exists
2025-10-09vyos.ifconfig: T7919: call "ip addr flush" only if interface existsChristian Breunig
Flushing all interface addresses on an interface that does not exists will throw a Python PermissionError. Add safe-guard to only flush interfaces still available.
2025-10-09Merge pull request #4678 from alexandr-san4ez/T5455-currentChristian Breunig
image: T5455: Add migration of SSH `known_hosts` files during upgrade
2025-10-07T7800: VPP: Bonding interface fails when change vpp configurationNataliia Solomko
2025-10-03T7907: archive config file on first boot to avoid misleading log entryJohn Estabrook
Restrictions on writing an empty config file in T7709 lead to a misleading log entry on first boot, in the absence of a baseline archived config file; explicitly create.
2025-10-03vyos.utils.network: T7898: check if system UUID is availableDaniil Baturin
before trying to use it for host identity generation
2025-10-03Merge pull request #4771 from jestabro/airbag-enable-log-falseChristian Breunig
T7903: set airbag enable to default log=False
2025-10-02Merge pull request #4769 from c-po/pki-acme-listen-addressJohn Estabrook
pki: T7885: check_port_availability() can't be used during system boot
2025-10-02T7903: set airbag enable to default log=FalseJohn Estabrook
The default setting for airbag enable redirects sys.stderr by way of a singleton class. Though this construction is not unreasonable, it has been implicated in recent bugs, and is disabled pending a full anaylsis.
2025-10-02config: T7885: show user Warning() instead of hard error on ACME cert issueChristian Breunig
This complements commit ae74a511e (pki: T7885: support full ACME setup via renew certbot force). If /config/auth/letsencrypt is missing, ACME certificate data can't be merged into the VyOS configuration, preventing interface (e.g., ethernet) setup during boot. This change ensures basic IP connectivity is established, allowing remote management instead of leaving the system entirely inaccessible. This is not what we will expect but if a user deletes /config/auth/letsencrypt - this is what will happen.
2025-10-02kea: T7823: DHCP-server lease cannot be clearedcanoziia
* kea: T7823: DHCP-server lease cannot be cleared * Update smoketest/scripts/cli/test_service_dhcp-server.py Co-authored-by: Christian Breunig <christian@breunig.cc> --------- Co-authored-by: Christian Breunig <christian@breunig.cc>
2025-10-02Merge pull request #4739 from roedie/T7852Daniil Baturin
T7852: Switch to yescrypt password encryption
2025-10-02Merge pull request #4758 from dmbaturin/T7871-op-mode-constraintsDaniil Baturin
op-mode: T7871: add support for op mode command argument constraints
2025-09-27frr: T7875: add pre-apply validation using frr-reload --testChristian Breunig
Ensures rendered FRR config passes sanity checks before applying. Prevents issues like T7089 where bad template syntax broke routing. Improves robustness and minimizes risk of config-induced outages.
2025-09-26op-mode: T7871: add support for op mode command argument constraintsDaniil Baturin
2025-09-26image: T5455: Add migration of SSH `known_hosts` files during image upgradeOleksandr Kuchmystyi
During upgrade, the script now checks if any `known_hosts` files exist. If so, it prompts the user to save these SSH fingerprints, and upon confirmation, copies the files to the new image persistence directory.
2025-09-25Merge pull request #4753 from jestabro/config-save-sync-atomicDaniil Baturin
T7709: Add file sync and atomic write to config save script
2025-09-25Merge pull request #4756 from natali-rs1985/T7862Viacheslav Hletenko
T7862: VPP: Enable support of ixgbevf driver for DPDK
2025-09-25Merge pull request #4746 from awolfnet/currentDaniil Baturin
l2tpv3: T7721: fix show l2tpv3 interface information
2025-09-25T7862: VPP: Enable support of ixgbevf driver for DPDKNataliia Solomko
2025-09-24T7709: use standard script vyos-save-config.py for vyconfJohn Estabrook
Take advantage of the helper script in the vyconf context.
2025-09-24T7709: use write_file_sync/atomic in vyos-save-config.py scriptJohn Estabrook
Config save is provided by the helper script in both CLI and configsession (hence also in the http api). Use utilities write_file_sync and write_file_atomic, in accordance with permissions and location: If the target is in /opt/vyatta/etc/config or /config, use write_file_sync; if, moreover, the caller has permissions, use write_file_atomic. Otherwise, fall back to util write_file.
2025-09-24T7709: add utils write_file_sync and write_file_atomicJohn Estabrook
write_file_sync does an explicit fsync of file and directory on write. write_file_atomic calls write_file_sync on a temp file and uses os.rename to provide an 'atomic' write.
2025-09-24Merge pull request #4737 from jestabro/edit-level-op-mode-dictViacheslav Hletenko
T7850: make op_mode_config_dict edit level aware