Validate-value.py not found

Hi all, I’ve got a rather odd problem when trying to remotely configure a VyOS host. The error occurs when using the vyatta cfg cmd wrapper to run a configuration script, specifically only when I’m trying to edit an interface. Whenever I use the set interfaces command I get an error saying validate-value.py cannot be found (no such file or directory), which causes the validation to fail and returns Invalid interface name.

My goal is to configure the host remotely using scripts that don’t require any input. For this I have a script.sh file containing:

#!/bin/bash

cfg=/opt/vyatta/sbin/vyatta-cfg-cmd-wrapper

$cfg begin

$cfg set interfaces ethernet eth1 description TEST

$cfg commit

$cfg save

$cfg end

I’ve configured my VyOS host to log in using SSH keys, copy the script onto the VyOS host with scp, then login using ssh, chmod the script and execute it. Effectively I have the script above, then run:

scp script.sh vyos@10.10.10.9:~/script.sh

ssh vyos@10.10.10.9 'chmod +x script.sh; ./script.sh'

Upon executing the script, it fails when trying to set an interfaces and returns the validate-value.py not found error. Other scripts, for example creating firewall rules, work fine but anything involving setting and interface fails. Additionally it only fails if I log in with ssh and pass the commands to execute, if I log in and manually run ./script.sh it’ll execute without any problems.

I’ve tried looking for information on the error, but the only other thread even mentioning this error is found here. Does anyone have any suggestions on getting around this problem?