The service config-sync does not rely on priorities but must.
For example, if we have interface bridge and vrf sections for sync, they will be applied one by one.
The first section interfaces bridge and the second section vrf.
But they must rely on priorities
vyos@r15-left:~$ /opt/vyatta/sbin/priority.pl | match "vrf|bridge" 11 vrf 310 interfaces/bridge
Attaching an interface to the VRF is impossible if the VRF does not exist.
Initial config
set service config-sync mode 'load' set service config-sync secondary address '192.168.122.11' set service config-sync secondary key 'foo' set service config-sync section interfaces bridge set service config-sync section vrf commit
Add some config on the primary node (on the secondary node no VRFs and bridge yet):
set interfaces bridge br0 description 'br0-eth1' set interfaces bridge br0 member interface eth1 set interfaces bridge br0 vrf 'vrf-br' set vrf name vrf-br table '1010' commit
commit:
vyos@r15-left# commit [['interfaces', 'bridge'], ['vrf']] INFO:vyos_config_sync:Config synchronization: Mode=load, Secondary=192.168.122.11
The log dump from the secondary node VRF "vrf-br" does not exist
Mar 20 16:08:38 r1-right sudo[5982]: root : PWD=/ ; USER=root ; COMMAND=/usr/bin/sh -c '/usr/sbin/vyshim VYOS_TAGNODE_VALUE=\'br0\' /usr/libexec/vyos/conf_mode/interfaces_bridge.py' Mar 20 16:08:38 r1-right sudo[5982]: pam_unix(sudo:session): session opened for user root(uid=0) by (uid=0) Mar 20 16:08:38 r1-right vyos-configd[4859]: Received message: {"type": "init"} Mar 20 16:08:38 r1-right vyos-configd[4859]: config session pid is 3062 Mar 20 16:08:38 r1-right vyos-configd[4859]: Received message: {"type": "node", "data": "VYOS_TAGNODE_VALUE=br0/usr/libexec/vyos/conf_mode/interfaces_bridge.py"} Mar 20 16:08:38 r1-right vyos-configd[4859]: VRF "vrf-br" does not exist Mar 20 16:08:38 r1-right vyos-configd[4859]: Sending response 2 Mar 20 16:08:38 r1-right sudo[5982]: pam_unix(sudo:session): session closed for user root Mar 20 16:08:39 r1-right systemd[1]: opt-vyatta-config-tmp-new_config_3062.mount: Deactivated successfully. Mar 20 16:08:39 r1-right vyos-http-api[3062]: INFO: - "POST /configure-section HTTP/1.0" 400 Bad Request Mar 20 16:08:40 r1-right systemd[1]: opt-vyatta-config-tmp-new_config_3062.mount: Deactivated successfully. Mar 20 16:08:40 r1-right vyos-http-api[3062]: Configuration modified via HTTP API using key 'KID' Mar 20 16:08:40 r1-right vyos-http-api[3062]: INFO: - "POST /configure-section HTTP/1.0" 200 OK Mar 20 16:08:41 r1-right systemd[1]: opt-vyatta-config-tmp-new_config_3062.mount: Deactivated successfully. Mar 20 16:08:41 r1-right vyos-http-api[3062]: Configuration modified via HTTP API using key 'KID' Mar 20 16:08:41 r1-right vyos-http-api[3062]: INFO: - "POST /configure-section HTTP/1.0" 200 OK Mar 20 16:08:41 r1-right sudo[6124]: root : PWD=/ ; USER=root ; COMMAND=/usr/bin/sh -c '/usr/sbin/vyshim /usr/libexec/vyos/conf_mode/vrf.py' Mar 20 16:08:41 r1-right sudo[6124]: pam_unix(sudo:session): session opened for user root(uid=0) by (uid=0) Mar 20 16:08:41 r1-right vyos-configd[4859]: Received message: {"type": "init"} Mar 20 16:08:41 r1-right vyos-configd[4859]: config session pid is 3062 Mar 20 16:08:41 r1-right vyos-configd[4859]: Received message: {"type": "node", "data": "/usr/libexec/vyos/conf_mode/vrf.py"}