To reproduce
set system config-management commit-archive location 'scp://test123:foo%bar12/34!k@172.18.254.201/config/tftpboot'
The password / is treated wrongly and generates:
VyOS 1.3 equuleus
cpo@LR3.wue3# commit Archiving config... scp://test123:foo%bar12/34!k@172.18.254.201/config/tftpboot Traceback (most recent call last): File "<string>", line 1, in <module> File "/usr/lib/python3/dist-packages/vyos/remote.py", line 312, in upload urlc(urlstring, *args, **kwargs).upload(local_path) File "/usr/lib/python3/dist-packages/vyos/remote.py", line 304, in urlc return url_classes[url.scheme](url, *args, **kwargs) File "/usr/lib/python3/dist-packages/vyos/remote.py", line 172, in __init__ self.port = url.port or 22 File "/usr/lib/python3.7/urllib/parse.py", line 169, in port port = int(port, 10) ValueError: invalid literal for int() with base 10: 'foo%bar12'
VyOS 1.4 sagitta
cpo@LR2.wue3# set system config-management commit-archive location 'scp://test123:foo%bar12/34!k@172.18.254.201/config/tftpboot' "//test123:foo%bar12/34!k@172.18.254.201/config/tftpboot" is not a valid URI for the scp URL scheme Invalid value Value validation failed Set failed
I do not know which one is more bad, at least the 1.4 error will generate errors during image upgrades as now the validator fails