summaryrefslogtreecommitdiff
path: root/src/op_mode
AgeCommit message (Collapse)Author
2025-07-10Merge pull request #4582 from hedrok/T7545-fix-show-vpn-debug-peerHEADcurrentDaniil Baturin
ipsec: T7545: Fix show vpn debug peer
2025-07-09wlb: T7622: fix the op mode "run show wan-load-balance" commandDaniil Baturin
2025-07-08ipsec: T7545: Fix show vpn debug peerKyrylo Yatsenko
Fix re for searching of peers in /etc/swanctl/swanctl.conf ``` search = rf'^[\s]*(peer_{peer}_(tunnel_[\d]+|vti)).*' ``` Changed to ``` search = rf'^[\s]*({peer}-(tunnel-[\d]+|vti))[\s]*{{' ``` Added message ``` print(f'\n### {command} ###') ``` so that output is not empty when `/usr/sbin/ipsec statusall` shows nothing
2025-06-28T7591: remove copyright years from source filesChristian Breunig
The legal team says years are not necessary so we can go ahead with it, since it will simplify backporting. Automatically removed using: git ls-files | grep -v libvyosconfig | xargs sed -i -E \ 's/^# Copyright (19|20)[0-9]{2}(-[0-9]{4})? VyOS maintainers.*/# Copyright VyOS maintainers and contributors <maintainers@vyos.io>/g' In addition we will error-out during "make" if someone re-adds a legacy copyright notice
2025-06-24wan-load-balancing: T7567: Write health-status on first runAbhishek Safui
Write the health-status on the very first run of the script, without waiting for any change in status, to show the current state to the show command. In show command use the same api to get the now timestamp as used in state change timestamp.
2025-06-23pki: T7574: add optional force argument to renew certbot-issued certificatesChristian Breunig
Certbot renewal command in op-mode "renew certbot" only works if any of the certificates is up for renewal. There is no CLI option to forcefully renew a certificate. This is about adding a force option to the CLI and with this addition move the entire certbot renew handling to new-style op-mode commands. vyos@vyos:~$ renew certbot force - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Processing /config/auth/letsencrypt/renewal/vyos.conf - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Renewing an existing certificate for vyos.io - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Congratulations, all renewals succeeded: /config/auth/letsencrypt/live/vyos/fullchain.pem (success) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Hook 'post-hook' ran with output: Updating certificates in /etc/ssl/certs... 0 added, 0 removed; done. Running hooks in /etc/ca-certificates/update.d... done.
2025-06-20installer: T6144: require at least 2GB of free space for image upgradeDaniil Baturin
2025-06-17container: T7473: fix show/monitor container log failed when log-driver is ↵opswill
journald
2025-06-10op-mode: T7527: move assorted embedded shel snippets to script filesDaniil Baturin
2025-05-17T1771: automatic reboot of system into previous imageChristian Breunig
If any part of the system boot fails, we set overall_status=1 in the vyos-router startup script. When an error during the image upgrade is detected, the system will automatically revert the default boot image to the previously used version, if the CLI option "system option reboot-on-upgrade-failure" is set. The user is informed via console messages: Booting failed, reverting to previous image Automatic reboot in 5 minutes Use "reboot cancel" to cancel The user has time to log in and run reboot cancel to remain in the faulty image for troubleshooting. Reboot timeout is defined by CLI: "system option reboot-on-upgrade-failure" Once the system boots into the previous image, the MOTD will display a persistent warning message - cleared during next reboot. WARNING: Image update to "VyOS 1.5.xxxx" failed Please check the logs: /usr/lib/live/mount/persistence/boot/NAME/rw/var/log Message is cleared on next reboot! Upgrade failure can be synthetically injected by booting with Kernel command line option: vyos-fail-migration
2025-05-17image: T1771: save previous image name to upgraded image persistent storageChristian Breunig
When performing an image upgrade we will create a file named /config/first_boot with JSON data inside the new images persistent storage. The content of the file will look like: {"previous_image": "1.5-stream-2025-Q3"} The previous image name can be easily queried using "jq -r '.previous_image'". This is the base work required for an adjusted version of the vyos-router init script to support an automatic rollback to a previous image if things go sideways.
2025-05-07T7386: firewall: use signal SIGPIPE/SIG_DFL to suppress brokenpipe errors on ↵Mark Hayes
large output
2025-05-07T7386: firewall: allow mix of IPv4 and IPv6 addresses/prefixes/ranges in ↵Mark Hayes
remote groups
2025-05-06Merge pull request #4447 from l0crian1/t7268-show-interfaces-kernelDaniil Baturin
interfaces: T7268: Add op-mode command for show all interfaces on system
2025-05-06Merge pull request #4387 from woodsb02/patch-1Daniil Baturin
installer: T7049: Fix GRUB boot with RAID1
2025-04-30installer: T7420: pass image download credentials in environment variablesDaniil Baturin
rather than in the command line
2025-04-29Merge pull request #4479 from dmbaturin/T7410-tech-support-usbDaniil Baturin
tech-support: T7410: handle possible errors when executing lsusb
2025-04-29interfaces: T7268: Add op-mode command for show all interfaces on system l0crian1
Commiting suggestions from dmbaturin Co-authored-by: Daniil Baturin <daniil@baturin.org>
2025-04-29Merge pull request #4477 from c-po/kernel-option-quietDaniil Baturin
T7397: add "system kernel option quiet" to suppress boot messages
2025-04-28tech-support: T7410: handle possible errors when executing lsusbDaniil Baturin
because it exits with a non-zero code on machines without USB controllers
2025-04-26T7397: add "system kernel option quiet" to suppress boot messagesChristian Breunig
Add option to limit the number of messages that are displayed on the console during the boot process and to persist this setting with image upgrades. set system option kernel quiet
2025-04-25image_installer: T7394: add system image raise "Error: argument of type ↵canoziia
'NoneType' is not iterable"
2025-04-22T7282: op-mode: update firewall.py for proper group filteringMark Hayes
2025-04-20t7268: Add op-mode command for show all interfaces on systeml0crian1
lo address was an edge case and needed to be handled.
2025-04-20t7268: Add op-mode command for show all interfaces on systeml0crian1
Created op-mode script per request Commands added: show interfaces kernel show interfaces kernel detail show interfaces kernel json show interfaces kernel <interface> show interfaces kernel <interface> detail show interfaces kernel <interface> json
2025-04-15grub: T7327: honor "system option kernel" settings during image upgradeChristian Breunig
When performing an image upgrade and Linux Kernel command-line option that should be passed via GRUB to the Linux Kernel are missing on the first boot. This is because when generating the GRUB command-line via the op-mode scripts the CLI nodes defining the options are not honored. This commit re-implements the code-path in op-mode which generates the strings passed via GRUB to the Linux Kernel command-line. NOTE: If (for a yet unknown reason) a Kernel command-line option string changes during a major - or minor - upgrade of the Linux Kernel, we will need to adapt that logic and possibly call a helper from within the NEW updated image rootfs. Thus we can ship future information back into the past like the "Grays Sports Almanac" from Back to the Future Part II.
2025-04-13T7359: confirm image name is available before acceptingJohn Estabrook
An attempt to reuse the name of an existing installed image should prompt the user to re-enter a name, rather than allowing the installation to fail.
2025-04-10Merge pull request #4422 from l0crian1/T7254-add-stp-op-commandsChristian Breunig
T7254: op-mode: Add spanning-tree op-mode commands
2025-04-04T7314: firewal op-mode: implement better detail view of remote-groups and ↵Mark Hayes
group members
2025-03-31installer: T7301: remove support for GnuPG signaturesDaniil Baturin
2025-03-30Update src/op_mode/stp.py l0crian1
Updated language of "VLANs are enabled/disabled" to "VLANs enabled/disabled" Co-authored-by: Christian Breunig <christian@breunig.cc>
2025-03-30Update src/op_mode/stp.py l0crian1
Updated language of amRoot to " (This bridge is the root)" Co-authored-by: Christian Breunig <christian@breunig.cc>
2025-03-28T7294: preserve /config symlinks on image upgradeJohn Estabrook
The service certbot expects symbolic links for /config/auth/letsencrypt/live/<cert_name>/*.pem however, the default behavior of copytree copies the linked files during image upgrade. Set copytree argument to preserve symlinks.
2025-03-28T7254: op-mode: Add Spanning Tree op-mode commandsl0crian1
Created stp.py to create output for spanning-tree info Modified show-bridge.xml.in to add: show bridge spanning-tree show bridge spanning-tree detail show bridge <interface> spanning-tree show bridge <interface> spanning-tree detail
2025-03-25Merge pull request #4413 from oniko94/fix/T7278-fix-cracklib-dep-buildJohn Estabrook
T7278: Remove cracklib hack from postconfig script template
2025-03-25Merge pull request #4326 from Embezzle/T5493Daniil Baturin
firewall: T5493: Implement remote-group
2025-03-25T7278: Remove cracklib hack from postinstall script templateoniko94
2025-03-21firewall: T5493: Implement remote-groupAlex W
2025-03-21Merge pull request #4400 from l0crian1/currentChristian Breunig
T7138: Fix show qos
2025-03-18T6353: Add password strength check and user warningoniko94
2025-03-17T7138: Fix show qosl0crian1
This change corrects a behavior witnessed in T7138. If a policy name had a `-` in it, the command would fail, returning nothing.
2025-03-11installer: T7049: Fix GRUB boot with RAID1Ben Woods
Rename directory in EFI system partition from: From: \EFI\VyOS (RAID disk 1) To: \EFI\VyOS This prevents GRUB dropping to a grub prompt rather than showing the VyOS boot menu, after installing with the RAID1 option. Refer bug: https://vyos.dev/T7049
2025-02-27Merge pull request #4237 from indrajitr/hostd-updateViacheslav Hletenko
T6948: Keep DHCP server leases in sync with hostd records
2025-02-17dhcp: T7052: Clean up unnecessary params in formatter methodsIndrajit Raychaudhuri
The formatter methods are mostly `family` agnostic now.
2025-02-13wlb: T4470: Support WLB op-mode commandssarthurdev
2025-02-03installer: T7102: download upgrade images to a random path in the root ↵Daniil Baturin
filesystem
2025-01-30installer: T7036: handle missing flavor and architecture data gracefullyDaniil Baturin
2025-01-28installer: T7034: fail the upgrade if image flavors do not match (#4297)Daniil Baturin
2025-01-26T6998: Remove vestigial helper and reformatIndrajit Raychaudhuri
2025-01-26T6998: dhcpy.py - fix datetime to be timezone awaremetron2