It's possible to use operational and configuration mode commands from scripts.
#!/bin/vbash source /opt/vyatta/etc/functions/script-template
Once you source /opt/vyatta/etc/functions/script-template, you can use all configure/set/delete/commit commands. You also can use operational mode commands, but unlike normal CLI, they **always** must be prepended with "run", whether you started a configuration session or not.
#!/bin/vbash source /opt/vyatta/etc/functions/script-template configure set system host-name test1 commit run show interfaces ethernet eth0
If you want to script the configs in a language other than bash you can have your script output commands and then source them in a bash script. Here is a simple example
#!/usr/bin/env python print "delete firewall group address-group somehosts" print "set firewall group address-group somehosts address '220.127.116.11'" print "set firewall group address-group somehosts address '18.104.22.168'"
#!bin/vbash source /opt/vyatta/etc/functions/script-template configure source <(/config/scripts/setfirewallgroup.py) commit