check_uuid checks that ovn-sbctl and ovn-nbctl commands return an uuid
(and not an error for instance).

Signed-off-by: Xavier Simonart <[email protected]>
---
v2: - Updated based on Ales' feedback i.e.
      - Have check_uuid fails on empty output.
      - Fixed typos.
    - Changed a few wrong check_uuid to check.
    - Rebased on main.
---
 tests/ovn-controller.at       |  34 +++---
 tests/ovn-ic.at               |   2 +-
 tests/ovn-macros.at           |   9 ++
 tests/ovn-nbctl.at            |  10 +-
 tests/ovn-northd.at           |  93 ++++++++-------
 tests/ovn-sbctl.at            |   2 +-
 tests/ovn.at                  | 216 ++++++++++++++++------------------
 tests/system-common-macros.at |   2 +-
 tests/system-ovn-kmod.at      |  10 +-
 tests/system-ovn.at           | 179 ++++++++++++++--------------
 10 files changed, 278 insertions(+), 279 deletions(-)

diff --git a/tests/ovn-controller.at b/tests/ovn-controller.at
index 2bf8b53d0..e5da2b12c 100644
--- a/tests/ovn-controller.at
+++ b/tests/ovn-controller.at
@@ -73,7 +73,7 @@ check_patches
 # Create a localnet port, but we should still have no patch ports, as they
 # won't be created until there's a localnet port on a logical switch with
 # another logical port bound to this chassis.
-ovn-sbctl \
+check_uuid ovn-sbctl \
     -- --id=@dp101 create Datapath_Binding tunnel_key=101 
external_ids:name=dp101 \
     -- create Port_Binding datapath=@dp101 logical_port=localnet1 tunnel_key=1 
\
         type=localnet options:network_name=physnet1
@@ -81,7 +81,7 @@ check_patches
 
 # Create a localnet port on a logical switch with a port bound to this chassis.
 # Now we should get some patch ports created.
-ovn-sbctl \
+check_uuid ovn-sbctl \
     -- --id=@dp102 create Datapath_Binding tunnel_key=102 
external_ids:name=dp102 \
     -- create Port_Binding datapath=@dp102 logical_port=localnet2 tunnel_key=1 
\
         type=localnet options:network_name=physnet1 \
@@ -953,7 +953,7 @@ read_counter() {
     ovn-appctl -t ovn-controller coverage/read-counter $1
 }
 
-ovn-nbctl create address_set name=as1
+check_uuid ovn-nbctl create address_set name=as1
 check ovn-nbctl --wait=hv acl-add ls1 to-lport 100 'outport == "ls1-lp1" && 
ip4.src == $as1' drop
 
 # Add IPs to as1 for 10 times, 1 IP each time.
@@ -1130,7 +1130,7 @@ read_counter() {
     ovn-appctl -t ovn-controller coverage/read-counter $1
 }
 
-ovn-nbctl create address_set name=as1
+check_uuid ovn-nbctl create address_set name=as1
 check ovn-nbctl --wait=hv acl-add ls1 to-lport 100 'outport == "ls1-lp1" && 
ip4.src == $as1 && tcp && tcp.dst == {111, 222, 333}' drop
 
 # Add IPs to as1 for 10 times, 1 IP each time.
@@ -1328,8 +1328,8 @@ read_counter() {
     ovn-appctl -t ovn-controller coverage/read-counter $1
 }
 
-ovn-nbctl create address_set name=as1
-ovn-nbctl create address_set name=as2
+check_uuid ovn-nbctl create address_set name=as1
+check_uuid ovn-nbctl create address_set name=as2
 check ovn-nbctl --wait=hv acl-add ls1 to-lport 100 'outport == "ls1-lp1" && 
ip4.src == $as1 && ip4.dst == $as2' drop
 
 # Add IPs to as1 and as2, with some of the IPs overlapping
@@ -1487,8 +1487,8 @@ read_counter() {
     ovn-appctl -t ovn-controller coverage/read-counter $1
 }
 
-ovn-nbctl create address_set name=as1
-ovn-nbctl create address_set name=as2
+check_uuid ovn-nbctl create address_set name=as1
+check_uuid ovn-nbctl create address_set name=as2
 
 # OR on different fields
 check ovn-nbctl --wait=hv acl-add ls1 to-lport 100 'outport == "ls1-lp1" && 
(ip4.src == $as1 || ip4.dst == $as2)' drop
@@ -1587,8 +1587,8 @@ read_counter() {
     ovn-appctl -t ovn-controller coverage/read-counter $1
 }
 
-ovn-nbctl create address_set name=as1
-ovn-nbctl create address_set name=as2
+check_uuid ovn-nbctl create address_set name=as1
+check_uuid ovn-nbctl create address_set name=as2
 
 # OR on the same field
 check ovn-nbctl --wait=hv acl-add ls1 to-lport 100 'outport == "ls1-lp1" && 
ip4.src == {$as1, $as2}' drop
@@ -1696,7 +1696,7 @@ read_counter() {
     ovn-appctl -t ovn-controller coverage/read-counter $1
 }
 
-ovn-nbctl create address_set name=as1
+check_uuid ovn-nbctl create address_set name=as1
 check ovn-nbctl --wait=hv acl-add ls1 to-lport 100 'outport == "ls1-lp1" && 
ip4.src == $as1 && ip4.dst == $as1' drop
 
 # Add IPs to as1 for 10 times, 1 IP each time.
@@ -1887,8 +1887,8 @@ read_counter() {
 # 2 ASes, each has 3 IPs, no overlapping.
 # 2 ACLs, each should generate a conjunction, and 1 overlapping tcp.dst
 # generating a flow with combined conjunctions.
-ovn-nbctl create address_set name=as1 addresses=10.0.0.11,10.0.0.12,10.0.0.13
-ovn-nbctl create address_set name=as2 addresses=10.0.0.21,10.0.0.22,10.0.0.23
+check_uuid ovn-nbctl create address_set name=as1 
addresses=10.0.0.11,10.0.0.12,10.0.0.13
+check_uuid ovn-nbctl create address_set name=as2 
addresses=10.0.0.21,10.0.0.22,10.0.0.23
 check ovn-nbctl acl-add ls1 to-lport 100 'outport == "ls1-lp1" && ip4.src == 
$as1 && tcp && tcp.dst == {101, 102}' drop
 check ovn-nbctl acl-add ls1 to-lport 100 'outport == "ls1-lp1" && ip4.src == 
$as2 && tcp && tcp.dst == {201, 202}' drop
 
@@ -2008,7 +2008,7 @@ read_counter() {
     ovn-appctl -t ovn-controller coverage/read-counter $1
 }
 
-ovn-nbctl create address_set name=as1
+check_uuid ovn-nbctl create address_set name=as1
 check ovn-nbctl --wait=hv acl-add ls1 to-lport 100 'outport == "ls1-lp1" && 
eth.src == $as1' drop
 
 # Add MACs to as1 for 5 times.
@@ -2093,7 +2093,7 @@ read_counter() {
     ovn-appctl -t ovn-controller coverage/read-counter $1
 }
 
-ovn-nbctl create address_set name=as1
+check_uuid ovn-nbctl create address_set name=as1
 check ovn-nbctl --wait=hv acl-add ls1 to-lport 100 'outport == "ls1-lp1" && 
ip6.src == $as1' drop
 
 # Add IPs to as1 for 5 times, 1 IP each time.
@@ -2169,7 +2169,7 @@ ovn-appctl -t ovn-controller vlog/set file:dbg
 acl_eval=$(ovn-debug lflow-stage-to-oftable ls_out_acl_eval)
 acl_sample=$(ovn-debug lflow-stage-to-oftable ls_out_acl_sample)
 
-ovn-nbctl create address_set name=as1 addresses=8.8.8.8
+check_uuid ovn-nbctl create address_set name=as1 addresses=8.8.8.8
 check ovn-nbctl acl-add ls1 to-lport 100 'outport == "ls1-lp1" && ip4.src == 
$as1' drop
 check ovn-nbctl --wait=hv sync
 AT_CHECK([ovs-ofctl dump-flows br-int table=$acl_eval | grep -c 
"priority=1100"], [0], [1
@@ -2944,7 +2944,7 @@ acl_sample=$(ovn-debug lflow-stage-to-oftable 
ls_out_acl_sample)
 dp_key=$(printf "%x" $(fetch_column datapath tunnel_key external_ids:name=ls1))
 port_key=$(printf "%x" $(fetch_column port_binding tunnel_key 
logical_port=ls1-lp1))
 
-ovn-nbctl create address_set name=as1
+check_uuid ovn-nbctl create address_set name=as1
 check ovn-nbctl acl-add ls1 to-lport 100 'outport == "ls1-lp1" && ip4.src == 
$as1' drop
 check ovn-nbctl add address_set as1 addresses 10.0.0.0/24
 check ovn-nbctl --wait=hv sync
diff --git a/tests/ovn-ic.at b/tests/ovn-ic.at
index 13150a453..9568225c9 100644
--- a/tests/ovn-ic.at
+++ b/tests/ovn-ic.at
@@ -263,7 +263,7 @@ done
 
 ovn_as az1
 
-ovn-nbctl \
+check_uuid ovn-nbctl \
   --id=@id create logical-router-static-route ip_prefix=1.1.1.1/32 
nexthop=10.0.1.10 -- \
   add logical-router lr1 static_routes @id
 
diff --git a/tests/ovn-macros.at b/tests/ovn-macros.at
index efb333a47..fbb6600cb 100644
--- a/tests/ovn-macros.at
+++ b/tests/ovn-macros.at
@@ -794,6 +794,15 @@ check() {
     AT_CHECK(["$@"])
 }
 
+# Runs COMMAND and checks that it does not print anything else than uuid as 
output.
+# It also fails if the output is empty.
+check_uuid() {
+    echo "$@"
+    output=$("${@}")
+    AT_CHECK([echo "$output" | grep .], [0], [ignore], [], [echo "Unexpected 
empty output: check_uuid is expecting a UUID"])
+    AT_CHECK([echo "$output" | grep -vE 
'^[[0-9a-fA-F]]{8}-[[0-9a-fA-F]]{4}-[[0-9a-fA-F]]{4}-[[0-9a-fA-F]]{4}-[[0-9a-fA-F]]{12}$'],
 [1])
+}
+
 parse_db() {
     case $1 in
         (*:*) echo ${1%%:*} ;;
diff --git a/tests/ovn-nbctl.at b/tests/ovn-nbctl.at
index 8d0e931d7..d4f61cb77 100644
--- a/tests/ovn-nbctl.at
+++ b/tests/ovn-nbctl.at
@@ -834,8 +834,8 @@ AT_CHECK([ovn-nbctl lr-nat-del lr0 dnat])
 
 AT_CHECK([ovn-nbctl lr-nat-del lr0])
 
-ovn-nbctl create Address_Set name=allowed_range addresses=\"1.1.1.1\"
-ovn-nbctl create Address_Set name=disallowed_range addresses=\"2.2.2.2\"
+check_uuid ovn-nbctl create Address_Set name=allowed_range 
addresses=\"1.1.1.1\"
+check_uuid ovn-nbctl create Address_Set name=disallowed_range 
addresses=\"2.2.2.2\"
 AT_CHECK([ovn-nbctl lr-nat-add lr0 snat 40.0.0.3 192.168.1.6])
 AT_CHECK([ovn-nbctl lr-nat-update-ext-ip lr0 snat 192.168.1.6 allowed_range])
 AT_CHECK([ovn-nbctl --is-exempted lr-nat-update-ext-ip lr0 snat 192.168.1.6 
disallowed_range])
@@ -2836,19 +2836,19 @@ dnl 
---------------------------------------------------------------------
 
 OVN_NBCTL_TEST([acl_sampling], [ACL sampling operations], [
 check ovn-nbctl ls-add ls
-ovn-nbctl \
+check_uuid ovn-nbctl \
   --id=@sample1 create Sample metadata=4301 -- \
   --sample-new=@sample1 acl-add ls from-lport 1 1 allow-related
 sample1=$(fetch_column nb:Sample _uuid metadata=4301)
 check_column "$sample1" nb:ACL sample_new priority=1
 
-ovn-nbctl \
+check_uuid ovn-nbctl \
   --id=@sample2 create Sample metadata=4302 -- \
   --sample-est=@sample2 acl-add ls from-lport 2 1 allow-related
 sample2=$(fetch_column nb:Sample _uuid metadata=4302)
 check_column "$sample2" nb:ACL sample_est priority=2
 
-ovn-nbctl \
+check_uuid ovn-nbctl \
   --id=@sample3 create Sample metadata=4303 -- \
   --id=@sample4 create Sample metadata=4304 -- \
   --sample-new=@sample3 --sample-est=@sample4 acl-add ls from-lport 3 1 
allow-related
diff --git a/tests/ovn-northd.at b/tests/ovn-northd.at
index 507cc302f..d437c8159 100644
--- a/tests/ovn-northd.at
+++ b/tests/ovn-northd.at
@@ -88,14 +88,14 @@ OVN_FOR_EACH_NORTHD_NO_HV([
 AT_SETUP([check from NBDB to SBDB])
 ovn_start
 
-ovn-nbctl create Logical_Router name=R1
+check_uuid ovn-nbctl create Logical_Router name=R1
 check ovn-sbctl chassis-add gw1 geneve 127.0.0.1
 check ovn-sbctl chassis-add gw2 geneve 1.2.4.8
 
 # Connect alice to R1 as distributed router gateway port on hv2
 check ovn-nbctl lrp-add R1 alice 00:00:02:01:02:03 172.16.1.1/24
 
-ovn-nbctl --wait=sb \
+check_uuid ovn-nbctl --wait=sb \
     --id=@gc0 create Gateway_Chassis name=alice_gw1 \
                                      chassis_name=gw1 \
                                      priority=20 -- \
@@ -193,7 +193,7 @@ ovn_start
 
 check ovn-sbctl chassis-add gw1 geneve 127.0.0.1
 
-ovn-nbctl create Logical_Router name=R1 options:chassis=gw1
+check_uuid ovn-nbctl create Logical_Router name=R1 options:chassis=gw1
 check ovn-nbctl lrp-add R1 R1-S1 02:ac:10:01:00:01 172.16.1.1/24
 
 check ovn-nbctl ls-add S1
@@ -1168,8 +1168,8 @@ echo "CR-LRP UUID is: " $uuid
 check ovn-nbctl set Logical_Router $cr_uuid options:chassis=gw1
 check ovn-nbctl --wait=sb sync
 
-ovn-nbctl create Address_Set name=allowed_range addresses=\"1.1.1.1\"
-ovn-nbctl create Address_Set name=disallowed_range addresses=\"2.2.2.2\"
+check_uuid ovn-nbctl create Address_Set name=allowed_range 
addresses=\"1.1.1.1\"
+check_uuid ovn-nbctl create Address_Set name=disallowed_range 
addresses=\"2.2.2.2\"
 
 # SNAT with ALLOWED_IPs
 check ovn-nbctl lr-nat-add DR snat  172.16.1.1 50.0.0.11
@@ -1454,7 +1454,7 @@ OVS_WAIT_FOR_OUTPUT(
 ])
 
 AS_BOX([Create the Load_Balancer_Health_Check again.])
-ovn-nbctl --wait=sb -- --id=@hc create \
+check_uuid ovn-nbctl --wait=sb -- --id=@hc create \
 Load_Balancer_Health_Check vip="10.0.0.10\:80" -- add Load_Balancer . \
 health_check @hc
 wait_row_count Service_Monitor 2
@@ -2885,7 +2885,7 @@ AT_SETUP([check VXLAN mode disabling])
 ovn_start
 
 # Create a fake chassis with vxlan encap to implicitly enable VXLAN mode.
-ovn-sbctl \
+check_uuid ovn-sbctl \
     --id=@e create encap chassis_name=hv1 ip="192.168.0.1" type="vxlan" \
     -- --id=@c create chassis name=hv1 encaps=@e
 
@@ -2919,7 +2919,7 @@ AT_SETUP([check datapath tunnel ids exhaustion])
 ovn_start
 
 # Create a fake chassis with vxlan encap to lower MAX DP tunnel key to 2^12
-ovn-sbctl \
+check_uuid ovn-sbctl \
     --id=@e create encap chassis_name=hv1 ip="192.168.0.1" type="vxlan" \
     -- --id=@c create chassis name=hv1 encaps=@e
 
@@ -2961,7 +2961,7 @@ check_row_count nb:Logical_Switch_Port 2048
 wait_row_count sb:Port_Binding 2048
 
 # Now create a fake chassis with vxlan encap to lower MAX port tunnel key to 
2^11
-ovn-sbctl \
+check_uuid ovn-sbctl \
     --id=@e create encap chassis_name=hv1 ip="192.168.0.1" type="vxlan" \
     -- --id=@c create chassis name=hv1 encaps=@e
 
@@ -3871,9 +3871,12 @@ done
 
 check as northd ovn-appctl -t ovn-northd inc-engine/clear-stats
 uuid=$(ovn-nbctl create bfd logical_port=r0-sw1 dst_ip=192.168.1.2 status=down 
min_tx=250 min_rx=250 detect_mult=10)
-ovn-nbctl create bfd logical_port=r0-sw2 dst_ip=192.168.2.2 status=down 
min_tx=500 min_rx=500 detect_mult=20
-ovn-nbctl create bfd logical_port=r0-sw3 dst_ip=192.168.3.2 status=down
-ovn-nbctl create bfd logical_port=r0-sw4 dst_ip=192.168.4.2 status=down 
min_tx=0 detect_mult=0
+check_uuid ovn-nbctl create bfd logical_port=r0-sw2 dst_ip=192.168.2.2 
status=down min_tx=500 min_rx=500 detect_mult=20
+check_uuid ovn-nbctl create bfd logical_port=r0-sw3 dst_ip=192.168.3.2 
status=down
+AT_CHECK([ovn-nbctl create bfd logical_port=r0-sw4 dst_ip=192.168.4.2 
status=down min_tx=0 detect_mult=0], [1], [],
+[ovn-nbctl: constraint violation: 0 is less than minimum allowed value 1
+])
+
 
 wait_row_count bfd 1 logical_port=r0-sw1 detect_mult=10 dst_ip=192.168.1.2 \
                      min_rx=250 min_tx=250 status=admin_down
@@ -4573,18 +4576,18 @@ sw0p1_key=$(fetch_column port_binding tunnel_key 
logical_port=sw0-p1)
 sw0p2_key=$(fetch_column port_binding tunnel_key logical_port=sw0-p2)
 sw1p1_key=$(fetch_column port_binding tunnel_key logical_port=sw1-p1)
 
-ovn-sbctl create FDB mac="00\:00\:00\:00\:00\:01" dp_key=$sw0_key 
port_key=$sw0p1_key
-ovn-sbctl create FDB mac="00\:00\:00\:00\:00\:02" dp_key=$sw0_key 
port_key=$sw0p1_key
-ovn-sbctl create FDB mac="00\:00\:00\:00\:00\:03" dp_key=$sw0_key 
port_key=$sw0p2_key
-ovn-sbctl create FDB mac="00\:00\:00\:00\:01\:01" dp_key=$sw1_key 
port_key=$sw1p1_key
-ovn-sbctl create FDB mac="00\:00\:00\:00\:01\:02" dp_key=$sw1_key 
port_key=$sw1p1_key
-ovn-sbctl create FDB mac="00\:00\:00\:00\:01\:03" dp_key=$sw1_key 
port_key=$sw1p1_key
+check_uuid ovn-sbctl create FDB mac="00\:00\:00\:00\:00\:01" dp_key=$sw0_key 
port_key=$sw0p1_key
+check_uuid ovn-sbctl create FDB mac="00\:00\:00\:00\:00\:02" dp_key=$sw0_key 
port_key=$sw0p1_key
+check_uuid ovn-sbctl create FDB mac="00\:00\:00\:00\:00\:03" dp_key=$sw0_key 
port_key=$sw0p2_key
+check_uuid ovn-sbctl create FDB mac="00\:00\:00\:00\:01\:01" dp_key=$sw1_key 
port_key=$sw1p1_key
+check_uuid ovn-sbctl create FDB mac="00\:00\:00\:00\:01\:02" dp_key=$sw1_key 
port_key=$sw1p1_key
+check_uuid ovn-sbctl create FDB mac="00\:00\:00\:00\:01\:03" dp_key=$sw1_key 
port_key=$sw1p1_key
 
 wait_row_count FDB 6
 
-ovn-sbctl create fdb mac="00\:00\:00\:00\:01\:03" dp_key=$sw1_key port_key=10
+AT_CHECK([ovn-sbctl create fdb mac="00\:00\:00\:00\:01\:03" dp_key=$sw1_key 
port_key=10], [1], [ignore], [ignore])
 wait_row_count FDB 6
-ovn-sbctl create fdb mac="00\:00\:00\:00\:01\:03" dp_key=4 port_key=10
+check_uuid ovn-sbctl create fdb mac="00\:00\:00\:00\:01\:03" dp_key=4 
port_key=10
 wait_row_count FDB 6
 
 check ovn-nbctl --wait=sb ls-del sw1
@@ -12755,7 +12758,7 @@ ovn_start
 check ovn-nbctl --wait=sb sync
 check as northd ovn-appctl -t ovn-northd inc-engine/clear-stats
 
-ovn-nbctl create Sampling_App type="acl-new" id="42"
+check_uuid ovn-nbctl create Sampling_App type="acl-new" id="42"
 check_row_count nb:Sampling_App 1
 check_engine_stats sampling_app recompute nocompute
 check_engine_stats northd recompute nocompute
@@ -12780,7 +12783,7 @@ AT_CHECK([ovn-sbctl lflow-list | grep 
ls_in_l2_unknown.*sample | ovn_strip_lflow
   table=??(ls_in_l2_unknown   ), priority=50   , match=(outport == "none"), 
action=(sample(probability=65535,collector_set=123,obs_domain=1,obs_point=$cookie);
 /* drop */)
 ])
 
-ovn-nbctl --wait=sb create Sampling_App type="drop" id="42"
+check_uuid ovn-nbctl --wait=sb create Sampling_App type="drop" id="42"
 check_row_count nb:Sampling_App 1
 
 AT_CHECK([ovn-sbctl lflow-list | grep ls_in_l2_unknown.*sample | 
ovn_strip_lflows], [0], [dnl
@@ -12800,8 +12803,8 @@ collector1=$(ovn-nbctl create Sample_Collector id=1 
name=c1 probability=65535 se
 collector2=$(ovn-nbctl create Sample_Collector id=2 name=c2 probability=65535 
set_id=200)
 check_row_count nb:Sample_Collector 2
 
-ovn-nbctl create Sampling_App type="acl-new" id="42"
-ovn-nbctl create Sampling_App type="acl-est" id="43"
+check_uuid ovn-nbctl create Sampling_App type="acl-new" id="42"
+check_uuid ovn-nbctl create Sampling_App type="acl-est" id="43"
 check_row_count nb:Sampling_App 2
 
 check ovn-nbctl                               \
@@ -12817,7 +12820,7 @@ m4_define([TRACE_FILTER], [grep -e sample -e commit -e 
reg9 | grep -v _sample |
 
 AS_BOX([from-lport ACL sampling (new, est)])
 check ovn-nbctl acl-del ls
-ovn-nbctl --wait=sb \
+check_uuid ovn-nbctl --wait=sb \
   --id=@sample1 create Sample collector="$collector1 $collector2" 
metadata=4301 -- \
   --id=@sample2 create Sample collector="$collector1 $collector2" 
metadata=4302 -- \
   --sample-new=@sample1 --sample-est=@sample2 acl-add ls from-lport 1 "1" 
allow-related
@@ -12851,7 +12854,7 @@ AT_CHECK_UNQUOTED([ovn_trace --ct est ls "$flow" | 
TRACE_FILTER], [0], [dnl
 
 AS_BOX([from-lport ACL sampling (new)])
 check ovn-nbctl acl-del ls
-ovn-nbctl --wait=sb \
+check_uuid ovn-nbctl --wait=sb \
   --id=@sample1 create Sample collector="$collector1 $collector2" 
metadata=4301 -- \
   --sample-new=@sample1 acl-add ls from-lport 1 "1" allow-related
 AT_CHECK([ovn-sbctl lflow-list | grep -e ls_in_acl_sample -e ls_in_acl_eval -e 
ls_out_acl_sample | ovn_strip_lflows | ovn_strip_collector_set | grep -e reg3 
-e reg9 -e sample], [0], [dnl
@@ -12880,7 +12883,7 @@ AT_CHECK_UNQUOTED([ovn_trace --ct est ls "$flow" | 
TRACE_FILTER], [0], [dnl
 
 AS_BOX([from-lport-after-lb ACL sampling (new, est)])
 check ovn-nbctl acl-del ls
-ovn-nbctl --wait=sb \
+check_uuid ovn-nbctl --wait=sb \
   --id=@sample1 create Sample collector="$collector1 $collector2" 
metadata=4301 -- \
   --id=@sample2 create Sample collector="$collector1 $collector2" 
metadata=4302 -- \
   --apply-after-lb --sample-new=@sample1 --sample-est=@sample2 acl-add ls 
from-lport 1 "1" allow-related
@@ -12914,7 +12917,7 @@ AT_CHECK_UNQUOTED([ovn_trace --ct est ls "$flow" | 
TRACE_FILTER], [0], [dnl
 
 AS_BOX([from-lport-after-lb ACL sampling (new)])
 check ovn-nbctl acl-del ls
-ovn-nbctl --wait=sb \
+check_uuid ovn-nbctl --wait=sb \
   --id=@sample1 create Sample collector="$collector1 $collector2" 
metadata=4301 -- \
   --apply-after-lb --sample-new=@sample1 acl-add ls from-lport 1 "1" 
allow-related
 AT_CHECK([ovn-sbctl lflow-list | grep -e ls_in_acl_after_lb_sample -e 
ls_in_acl_after_lb_eval -e ls_out_acl_sample | ovn_strip_lflows | 
ovn_strip_collector_set | grep -e reg3 -e reg9 -e sample], [0], [dnl
@@ -12943,7 +12946,7 @@ AT_CHECK_UNQUOTED([ovn_trace --ct est ls "$flow" | 
TRACE_FILTER], [0], [dnl
 
 AS_BOX([to-lport ACL sampling (new, est)])
 check ovn-nbctl acl-del ls
-ovn-nbctl --wait=sb \
+check_uuid ovn-nbctl --wait=sb \
   --id=@sample1 create Sample collector="$collector1 $collector2" 
metadata=4301 -- \
   --id=@sample2 create Sample collector="$collector1 $collector2" 
metadata=4302 -- \
   --sample-new=@sample1 --sample-est=@sample2 acl-add ls to-lport 1 "1" 
allow-related
@@ -12978,7 +12981,7 @@ AT_CHECK_UNQUOTED([ovn_trace --ct est --ct est ls 
"$flow" | TRACE_FILTER], [0],
 
 AS_BOX([to-lport ACL sampling (new)])
 check ovn-nbctl acl-del ls
-ovn-nbctl --wait=sb \
+check_uuid ovn-nbctl --wait=sb \
   --id=@sample1 create Sample collector="$collector1 $collector2" 
metadata=4301 -- \
   --sample-new=@sample1 acl-add ls to-lport 1 "1" allow-related
 AT_CHECK([ovn-sbctl lflow-list | grep -e ls_out_acl_sample -e ls_out_acl_eval 
-e ls_in_acl_sample | ovn_strip_lflows | ovn_strip_collector_set | grep -e reg3 
-e reg9 -e sample], [0], [dnl
@@ -13018,8 +13021,8 @@ ovn_start
 collector1=$(ovn-nbctl create Sample_Collector id=1 name=c1 probability=65535 
set_id=100)
 check_row_count nb:Sample_Collector 1
 
-ovn-nbctl create Sampling_App type="acl-new" id="42"
-ovn-nbctl create Sampling_App type="acl-est" id="43"
+check_uuid ovn-nbctl create Sampling_App type="acl-new" id="42"
+check_uuid ovn-nbctl create Sampling_App type="acl-est" id="43"
 check_row_count nb:Sampling_App 2
 
 check ovn-nbctl                               \
@@ -13038,7 +13041,7 @@ check ovn-sbctl chassis-add gw1 geneve 127.0.0.1 \
   -- set chassis gw1 other_config:ovn-sample-with-registers="false"
 
 check ovn-nbctl acl-del ls
-ovn-nbctl --wait=sb                                                    \
+check_uuid ovn-nbctl --wait=sb                                         \
   --id=@sample1 create Sample collector="$collector1" metadata=4301 -- \
   --id=@sample2 create Sample collector="$collector1" metadata=4302 -- \
   --sample-new=@sample1 --sample-est=@sample2 acl-add ls from-lport 1 "1" 
allow-related
@@ -13076,7 +13079,7 @@ check ovn-sbctl set chassis gw1 
other_config:ovn-sample-with-registers="true"
 
 AS_BOX([from-lport ACL sampling (new, est)])
 check ovn-nbctl acl-del ls
-ovn-nbctl --wait=sb                                                    \
+check_uuid ovn-nbctl --wait=sb                                         \
   --id=@sample1 create Sample collector="$collector1" metadata=4301 -- \
   --id=@sample2 create Sample collector="$collector1" metadata=4302 -- \
   --sample-new=@sample1 --sample-est=@sample2 acl-add ls from-lport 1 "1" 
allow-related
@@ -13112,7 +13115,7 @@ AT_CHECK_UNQUOTED([ovn_trace --ct est ls "$flow" | 
TRACE_FILTER], [0], [dnl
 
 AS_BOX([from-lport ACL sampling (new)])
 check ovn-nbctl acl-del ls
-ovn-nbctl --wait=sb                                                    \
+check_uuid ovn-nbctl --wait=sb                                         \
   --id=@sample1 create Sample collector="$collector1" metadata=4301 -- \
   --sample-new=@sample1 acl-add ls from-lport 1 "1" allow-related
 AT_CHECK([ovn-sbctl lflow-list | grep -e ls_in_acl_sample -e ls_in_acl_eval -e 
ls_out_acl_sample | ovn_strip_lflows | ovn_strip_collector_set | grep -e reg3 
-e reg9 -e sample], [0], [dnl
@@ -13144,7 +13147,7 @@ AT_CHECK_UNQUOTED([ovn_trace --ct est ls "$flow" | 
TRACE_FILTER], [0], [dnl
 
 AS_BOX([from-lport-after-lb ACL sampling (new, est)])
 check ovn-nbctl acl-del ls
-ovn-nbctl --wait=sb                                                    \
+check_uuid ovn-nbctl --wait=sb                                         \
   --id=@sample1 create Sample collector="$collector1" metadata=4301 -- \
   --id=@sample2 create Sample collector="$collector1" metadata=4302 -- \
   --apply-after-lb --sample-new=@sample1 --sample-est=@sample2 acl-add ls 
from-lport 1 "1" allow-related
@@ -13180,7 +13183,7 @@ AT_CHECK_UNQUOTED([ovn_trace --ct est ls "$flow" | 
TRACE_FILTER], [0], [dnl
 
 AS_BOX([from-lport-after-lb ACL sampling (new)])
 check ovn-nbctl acl-del ls
-ovn-nbctl --wait=sb                                                    \
+check_uuid ovn-nbctl --wait=sb                                         \
   --id=@sample1 create Sample collector="$collector1" metadata=4301 -- \
   --apply-after-lb --sample-new=@sample1 acl-add ls from-lport 1 "1" 
allow-related
 AT_CHECK([ovn-sbctl lflow-list | grep -e ls_in_acl_after_lb_sample -e 
ls_in_acl_after_lb_eval -e ls_out_acl_sample | ovn_strip_lflows | 
ovn_strip_collector_set | grep -e reg3 -e reg9 -e sample], [0], [dnl
@@ -13212,7 +13215,7 @@ AT_CHECK_UNQUOTED([ovn_trace --ct est ls "$flow" | 
TRACE_FILTER], [0], [dnl
 
 AS_BOX([to-lport ACL sampling (new, est)])
 check ovn-nbctl acl-del ls
-ovn-nbctl --wait=sb                                                    \
+check_uuid ovn-nbctl --wait=sb                                         \
   --id=@sample1 create Sample collector="$collector1" metadata=4301 -- \
   --id=@sample2 create Sample collector="$collector1" metadata=4302 -- \
   --sample-new=@sample1 --sample-est=@sample2 acl-add ls to-lport 1 "1" 
allow-related
@@ -13249,7 +13252,7 @@ AT_CHECK_UNQUOTED([ovn_trace --ct est --ct est ls 
"$flow" | TRACE_FILTER], [0],
 
 AS_BOX([to-lport ACL sampling (new)])
 check ovn-nbctl acl-del ls
-ovn-nbctl --wait=sb                                                    \
+check_uuid ovn-nbctl --wait=sb                                         \
   --id=@sample1 create Sample collector="$collector1" metadata=4301 -- \
   --sample-new=@sample1 acl-add ls to-lport 1 "1" allow-related
 AT_CHECK([ovn-sbctl lflow-list | grep -e ls_out_acl_sample -e ls_out_acl_eval 
-e ls_in_acl_sample | ovn_strip_lflows | ovn_strip_collector_set | grep -e reg3 
-e reg9 -e sample], [0], [dnl
@@ -13293,8 +13296,8 @@ collector1=$(ovn-nbctl create Sample_Collector id=1 
name=c1 probability=10000 se
 collector2=$(ovn-nbctl create Sample_Collector id=2 name=c2 probability=20000 
set_id=100)
 check_row_count nb:Sample_Collector 2
 
-ovn-nbctl create Sampling_App type="acl-new" id="42"
-ovn-nbctl create Sampling_App type="acl-est" id="43"
+check_uuid ovn-nbctl create Sampling_App type="acl-new" id="42"
+check_uuid ovn-nbctl create Sampling_App type="acl-est" id="43"
 check_row_count nb:Sampling_App 2
 
 check ovn-nbctl                               \
@@ -13304,15 +13307,15 @@ check ovn-nbctl                               \
   -- lsp-add ls lsp2                          \
   -- lsp-set-addresses lsp2 00:00:00:00:00:02
 
-ovn-nbctl --wait=sb \
+check_uuid ovn-nbctl --wait=sb \
   --id=@sample1 create Sample collector="$collector1" metadata=4301 -- \
   --id=@sample2 create Sample collector="$collector2" metadata=4302 -- \
   --sample-new=@sample1 --sample-est=@sample2 acl-add ls from-lport 1 "1" 
allow-related
-ovn-nbctl --wait=sb \
+check_uuid ovn-nbctl --wait=sb \
   --id=@sample1 create Sample collector="$collector1" metadata=4303 -- \
   --id=@sample2 create Sample collector="$collector2" metadata=4304 -- \
   --apply-after-lb --sample-new=@sample1 --sample-est=@sample2 acl-add ls 
from-lport 1 "1" allow-related
-ovn-nbctl --wait=sb \
+check_uuid ovn-nbctl --wait=sb \
   --id=@sample1 create Sample collector="$collector1" metadata=4305 -- \
   --id=@sample2 create Sample collector="$collector2" metadata=4306 -- \
   --sample-new=@sample1 --sample-est=@sample2 acl-add ls to-lport 1 "1" 
allow-related
@@ -14345,7 +14348,7 @@ OVS_WAIT_UNTIL([rbr_match_builtin])
 
 AS_BOX([Ensure custom role and permission are not automatically deleted])
 PERM_UID=$(fetch_column RBAC_Permission _uuid table=Load_Balancer)
-ovn-sbctl create RBAC_Role name=custom-role permissions:Load_Balancer=$PERM_UID
+check_uuid ovn-sbctl create RBAC_Role name=custom-role 
permissions:Load_Balancer=$PERM_UID
 OVS_WAIT_UNTIL([rbr_match_builtin])
 check rbr_match_custom
 
diff --git a/tests/ovn-sbctl.at b/tests/ovn-sbctl.at
index 19ac55c80..4e1fec946 100644
--- a/tests/ovn-sbctl.at
+++ b/tests/ovn-sbctl.at
@@ -95,7 +95,7 @@ AT_CHECK([ovn-sbctl -f csv -d bare --no-headings --columns 
ip,type list encap |
 
 AT_CHECK([ovn-sbctl chassis-add ch2 geneve 2.3.4.5])
 ch2_uuid=$(ovn-sbctl -d bare --no-headings --columns _uuid find chassis 
name=ch2)
-ovn-sbctl create Chassis_Private name=ch2 chassis=$ch2_uuid
+check_uuid ovn-sbctl create Chassis_Private name=ch2 chassis=$ch2_uuid
 check_row_count Chassis_Private 1
 
 AT_CHECK([ovn-sbctl -f csv -d bare --no-headings --columns ip,type list encap 
| sort],
diff --git a/tests/ovn.at b/tests/ovn.at
index de01a649f..7bee2902d 100644
--- a/tests/ovn.at
+++ b/tests/ovn.at
@@ -2441,7 +2441,7 @@ done
 check ovn-nbctl acl-add lsw0 from-lport 1000 'eth.type == 0x1234' drop
 check ovn-nbctl acl-add lsw0 from-lport 1000 'eth.type == 0x1235 && inport == 
"lp11"' drop
 check ovn-nbctl acl-add lsw0 to-lport 1000 'eth.type == 0x1236 && outport == 
"lp33"' drop
-ovn-nbctl create Address_Set name=set1 
addresses=\"f0:00:00:00:00:11\",\"f0:00:00:00:00:21\",\"f0:00:00:00:00:31\"
+check_uuid ovn-nbctl create Address_Set name=set1 
addresses=\"f0:00:00:00:00:11\",\"f0:00:00:00:00:21\",\"f0:00:00:00:00:31\"
 check ovn-nbctl acl-add lsw0 to-lport 1000 'eth.type == 0x1237 && eth.src == 
$set1 && outport == "lp33"' drop
 
 check ovn-nbctl pg-add pg1 lp22 lp33
@@ -2876,7 +2876,7 @@ done
 check ovn-nbctl acl-add lsw0 from-lport 1000 'eth.type == 0x1234' drop
 check ovn-nbctl acl-add lsw0 from-lport 1000 'eth.type == 0x1235 && inport == 
"lp1"' drop
 check ovn-nbctl acl-add lsw0 to-lport 1000 'eth.type == 0x1236 && outport == 
"lp3"' drop
-ovn-nbctl create Address_Set name=set1 
addresses=\"f0:00:00:00:00:01\",\"f0:00:00:00:00:02\"
+check_uuid ovn-nbctl create Address_Set name=set1 
addresses=\"f0:00:00:00:00:01\",\"f0:00:00:00:00:02\"
 check ovn-nbctl acl-add lsw0 to-lport 1000 'eth.type == 0x1237 && eth.src == 
$set1 && outport == "lp3"' drop
 
 check ovn-nbctl --wait=sb sync
@@ -7293,7 +7293,7 @@ rm -f 2.expected
 
 check ovn-nbctl --all destroy dhcp-option
 
-ovn-nbctl dhcp-options-create 10.0.0.0/24
+check ovn-nbctl dhcp-options-create 10.0.0.0/24
 d3=$(ovn-nbctl --bare --columns=_uuid find dhcp_options cidr="10.0.0.0/24")
 check ovn-nbctl dhcp-options-set-options $d3 \
    server_id=10.0.0.1 server_mac=ff:10:00:00:00:01 \
@@ -7764,8 +7764,8 @@ ovs-vsctl -- add-port br-int hv2-vif1 -- \
 # for ARP resolution).
 OVN_POPULATE_ARP
 
-ovn-nbctl create Logical_Router name=R1
-ovn-nbctl create Logical_Router name=R2 options:chassis="hv2"
+check_uuid ovn-nbctl create Logical_Router name=R1
+check_uuid ovn-nbctl create Logical_Router name=R2 options:chassis="hv2"
 
 check ovn-nbctl ls-add foo
 check ovn-nbctl ls-add alice
@@ -7793,11 +7793,11 @@ check ovn-nbctl lsp-add join r2-join -- set 
Logical_Switch_Port r2-join \
 
 
 #install static routes
-ovn-nbctl -- --id=@lrt create Logical_Router_Static_Route \
+check_uuid ovn-nbctl -- --id=@lrt create Logical_Router_Static_Route \
 ip_prefix=172.16.1.0/24 nexthop=20.0.0.2 -- add Logical_Router \
 R1 static_routes @lrt
 
-ovn-nbctl -- --id=@lrt create Logical_Router_Static_Route \
+check_uuid ovn-nbctl -- --id=@lrt create Logical_Router_Static_Route \
 ip_prefix=192.168.1.0/24 nexthop=20.0.0.1 -- add Logical_Router \
 R2 static_routes @lrt
 
@@ -7871,13 +7871,13 @@ CHECK_FLOWS_AFTER_RECOMPUTE([hv1], [hv1])
 
 # Delete the router and re-create it. Things should work as before.
 check ovn-nbctl  lr-del R2
-ovn-nbctl create Logical_Router name=R2 options:chassis="hv2"
+check_uuid ovn-nbctl create Logical_Router name=R2 options:chassis="hv2"
 # Connect alice to R2
 check ovn-nbctl lrp-add R2 R2-alice 00:00:02:01:02:03 172.16.1.1/24
 # Connect R2 to join
 check ovn-nbctl lrp-add R2 R2_join 00:00:04:01:02:04 20.0.0.2/24
 
-ovn-nbctl -- --id=@lrt create Logical_Router_Static_Route \
+check_uuid ovn-nbctl -- --id=@lrt create Logical_Router_Static_Route \
 ip_prefix=192.168.1.0/24 nexthop=20.0.0.1 -- add Logical_Router \
 R2 static_routes @lrt
 
@@ -8626,8 +8626,8 @@ check ovn-nbctl --wait=sb lsp-add sw0 p20 -- 
lsp-set-addresses p20 dynamic
 check_dynamic_addresses p20 "0a:00:00:a8:01:18 192.168.1.13"
 
 # Test for logical router port address management.
-ovn-nbctl create Logical_Router name=R1
-ovn-nbctl -- --id=@lrp create Logical_Router_port name=sw0 \
+check_uuid ovn-nbctl create Logical_Router name=R1
+check_uuid ovn-nbctl -- --id=@lrp create Logical_Router_port name=sw0 \
 network="192.168.1.1/24" mac=\"0a:00:00:a8:01:19\" \
 -- add Logical_Router R1 ports @lrp -- lsp-add sw0 rp-sw0 \
 -- set Logical_Switch_Port rp-sw0 type=router options:router-port=sw0
@@ -8654,11 +8654,11 @@ check ovn-nbctl --wait=sb lsp-add sw2 p28 -- 
lsp-set-addresses p28 dynamic
 check_dynamic_addresses p28 "0a:00:00:00:00:01"
 
 # Test that address management does not add duplicate MAC for lsp/lrp peers.
-ovn-nbctl create Logical_Router name=R2
+check_uuid ovn-nbctl create Logical_Router name=R2
 check ovn-nbctl ls-add sw3
 check ovn-nbctl lsp-add sw3 p29 -- lsp-set-addresses p29 \
 "0a:00:00:a8:01:18"
-ovn-nbctl -- --id=@lrp create Logical_Router_port name=sw3 \
+check_uuid ovn-nbctl -- --id=@lrp create Logical_Router_port name=sw3 \
 network="192.168.2.1/24" mac=\"0a:00:00:a8:01:18\" \
 -- add Logical_Router R2 ports @lrp -- lsp-add sw3 rp-sw3 \
 -- set Logical_Switch_Port rp-sw3 type=router options:router-port=sw3
@@ -9131,7 +9131,7 @@ check ovn-nbctl ls-add ls1
 check ovn-nbctl ls-add ls2
 
 # Create  router
-ovn-nbctl create Logical_Router name=lr0
+check_uuid ovn-nbctl create Logical_Router name=lr0
 
 # Add router ls1p1 port to gateway router
 check ovn-nbctl lrp-add lr0 lrp-ls1lp1 f0:00:00:00:00:01 192.168.0.1/24
@@ -9208,7 +9208,7 @@ ovn_start
 # Create logical switch
 check ovn-nbctl ls-add ls0
 # Create gateway router
-ovn-nbctl create Logical_Router name=lr0 options:chassis=hv1
+check_uuid ovn-nbctl create Logical_Router name=lr0 options:chassis=hv1
 # Add router port to gateway router
 check ovn-nbctl lrp-add lr0 lrp0 f0:00:00:00:00:01 192.168.0.1/24
 check ovn-nbctl lsp-add ls0 lrp0-rp -- set Logical_Switch_Port lrp0-rp \
@@ -9394,7 +9394,7 @@ ovn_start
 # Create logical switch
 check ovn-nbctl ls-add ls0
 # Create gateway router
-ovn-nbctl create Logical_Router name=lr0 options:chassis=hv1
+check_uuid ovn-nbctl create Logical_Router name=lr0 options:chassis=hv1
 # Add router port to gateway router
 check ovn-nbctl lrp-add lr0 lrp0 f0:00:00:00:00:01 192.168.0.1/24
 check ovn-nbctl lsp-add ls0 lrp0-rp -- set Logical_Switch_Port lrp0-rp \
@@ -9484,7 +9484,7 @@ ovn_start
 # Create logical switch
 check ovn-nbctl ls-add ls0
 # Create gateway router
-ovn-nbctl create Logical_Router name=lr0 options:chassis=hv1
+check_uuid ovn-nbctl create Logical_Router name=lr0 options:chassis=hv1
 # Add router port to gateway router
 check ovn-nbctl lrp-add lr0 lrp0 f0:00:00:00:00:01 fd12:3456:789a:1::1/64
 check ovn-nbctl lsp-add ls0 lrp0-rp -- set Logical_Switch_Port lrp0-rp \
@@ -9562,8 +9562,8 @@ check ovn-nbctl lr-add lr0
 check ovn-nbctl lrp-add lr0 lrp0 f0:00:00:00:00:01 192.168.0.1/24
 check ovn-nbctl lrp-add lr0 lrp1 f0:00:00:00:00:02 192.168.1.1/24
 dp_uuid=$(fetch_column Datapath_Binding _uuid)
-ovn-sbctl create MAC_Binding ip=10.0.0.1 datapath=$dp_uuid logical_port=lrp0 
mac="00\:00\:00\:01\:00\:01"
-ovn-sbctl create MAC_Binding ip=10.0.0.1 datapath=$dp_uuid logical_port=lrp1 
mac="00\:00\:00\:01\:00\:02"
+check_uuid ovn-sbctl create MAC_Binding ip=10.0.0.1 datapath=$dp_uuid 
logical_port=lrp0 mac="00\:00\:00\:01\:00\:01"
+check_uuid ovn-sbctl create MAC_Binding ip=10.0.0.1 datapath=$dp_uuid 
logical_port=lrp1 mac="00\:00\:00\:01\:00\:02"
 ovn-sbctl find MAC_Binding
 # Delete port lrp0 and check that its MAC_Binding is deleted.
 check ovn-nbctl lrp-del lrp0
@@ -9605,7 +9605,7 @@ for i in foo1 bar1 bar2 bar3; do
         options:rxq_pcap=hv1/$i-rx.pcap
 done
 
-ovn-nbctl create Logical_Router name=R1
+check_uuid ovn-nbctl create Logical_Router name=R1
 check ovn-nbctl ls-add foo
 check ovn-nbctl ls-add bar
 
@@ -10799,9 +10799,9 @@ ovs-vsctl -- add-port br-int hv3-vif1 -- \
     ofport-request=1
 
 
-ovn-nbctl create Logical_Router name=R1
-ovn-nbctl create Logical_Router name=R2 options:chassis="hv2"
-ovn-nbctl create Logical_Router name=R3 options:chassis="hv3"
+check_uuid ovn-nbctl create Logical_Router name=R1
+check_uuid ovn-nbctl create Logical_Router name=R2 options:chassis="hv2"
+check_uuid ovn-nbctl create Logical_Router name=R3 options:chassis="hv3"
 
 check ovn-nbctl ls-add foo
 check ovn-nbctl ls-add bar
@@ -12372,7 +12372,7 @@ ovn_start
 check ovn-nbctl ls-add ls0
 check ovn-nbctl ls-add ls1
 # Create distributed router
-ovn-nbctl create Logical_Router name=lr0
+check_uuid ovn-nbctl create Logical_Router name=lr0
 # Add distributed gateway port to distributed router
 check ovn-nbctl lrp-add lr0 lrp0 f0:00:00:00:00:01 192.168.0.1/24 \
     -- lrp-set-gateway-chassis lrp0 hv2
@@ -13577,7 +13577,7 @@ done
 
 OVN_POPULATE_ARP
 
-ovn-nbctl create Logical_Router name=R1
+check_uuid ovn-nbctl create Logical_Router name=R1
 
 # Connect inside to R1
 check ovn-nbctl lrp-add R1 inside 00:00:01:01:02:03 192.168.1.1/24
@@ -13588,11 +13588,11 @@ check ovn-nbctl lsp-add inside rp-inside -- set 
Logical_Switch_Port rp-inside \
 # Connect outside to R1 as distributed router gateway port on gw1+gw2
 check ovn-nbctl lrp-add R1 outside 00:00:02:01:02:04 192.168.0.101/24
 
-ovn-nbctl --id=@gc0 create Gateway_Chassis \
-                    name=outside_gw1 chassis_name=gw1 priority=20 -- \
-          --id=@gc1 create Gateway_Chassis \
-                    name=outside_gw2 chassis_name=gw2 priority=10 -- \
-          set Logical_Router_Port outside 'gateway_chassis=[@gc0,@gc1]'
+check_uuid ovn-nbctl --id=@gc0 create Gateway_Chassis \
+                               name=outside_gw1 chassis_name=gw1 priority=20 
-- \
+                     --id=@gc1 create Gateway_Chassis \
+                               name=outside_gw2 chassis_name=gw2 priority=10 
-- \
+                     set Logical_Router_Port outside 
'gateway_chassis=[@gc0,@gc1]'
 
 check ovn-nbctl lsp-add outside rp-outside -- set Logical_Switch_Port 
rp-outside \
     type=router options:router-port=outside \
@@ -13728,11 +13728,11 @@ wait_column "$exp_ref_ch_list" HA_Chassis_Group 
ref_chassis
 
 # at this point, we invert the priority of the gw chassis between gw1 and gw2
 
-ovn-nbctl --id=@gc0 create Gateway_Chassis \
-                    name=outside_gw1 chassis_name=gw1 priority=10 -- \
-          --id=@gc1 create Gateway_Chassis \
-                    name=outside_gw2 chassis_name=gw2 priority=20 -- \
-          set Logical_Router_Port outside 'gateway_chassis=[@gc0,@gc1]'
+check_uuid ovn-nbctl --id=@gc0 create Gateway_Chassis \
+                               name=outside_gw1 chassis_name=gw1 priority=10 
-- \
+                     --id=@gc1 create Gateway_Chassis \
+                               name=outside_gw2 chassis_name=gw2 priority=20 
-- \
+                     set Logical_Router_Port outside 
'gateway_chassis=[@gc0,@gc1]'
 
 
 wait_for_ports_up
@@ -14036,14 +14036,14 @@ AT_SETUP([send gratuitous ARP for NAT rules on HA 
distributed router])
 ovn_start
 check ovn-nbctl ls-add ls0
 check ovn-nbctl ls-add ls1
-ovn-nbctl create Logical_Router name=lr0
+check_uuid ovn-nbctl create Logical_Router name=lr0
 check ovn-nbctl lrp-add lr0 lrp0 f0:00:00:00:00:01 192.168.0.100/24
 
-ovn-nbctl --id=@gc0 create Gateway_Chassis \
-                    name=outside_gw1 chassis_name=hv2 priority=10 -- \
-          --id=@gc1 create Gateway_Chassis \
-                    name=outside_gw2 chassis_name=hv3 priority=1 -- \
-          set Logical_Router_Port lrp0 'gateway_chassis=[@gc0,@gc1]'
+check_uuid ovn-nbctl --id=@gc0 create Gateway_Chassis \
+                               name=outside_gw1 chassis_name=hv2 priority=10 
-- \
+                     --id=@gc1 create Gateway_Chassis \
+                               name=outside_gw2 chassis_name=hv3 priority=1 -- 
\
+                     set Logical_Router_Port lrp0 'gateway_chassis=[@gc0,@gc1]'
 
 check ovn-nbctl lsp-add ls0 lrp0-rp -- set Logical_Switch_Port lrp0-rp \
     type=router options:router-port=lrp0 addresses="router"
@@ -14112,12 +14112,12 @@ AT_CHECK([grep $garp hv3_br_phys_tx | sort], [0], [])
 
 # at this point, we invert the priority of the gw chassis between hv2 and hv3
 
-ovn-nbctl --wait=hv \
-          --id=@gc0 create Gateway_Chassis \
-                    name=outside_gw1 chassis_name=hv2 priority=1 -- \
-          --id=@gc1 create Gateway_Chassis \
-                    name=outside_gw2 chassis_name=hv3 priority=10 -- \
-          set Logical_Router_Port lrp0 'gateway_chassis=[@gc0,@gc1]'
+check_uuid ovn-nbctl --wait=hv \
+                     --id=@gc0 create Gateway_Chassis \
+                               name=outside_gw1 chassis_name=hv2 priority=1 -- 
\
+                     --id=@gc1 create Gateway_Chassis \
+                               name=outside_gw2 chassis_name=hv3 priority=10 
-- \
+                     set Logical_Router_Port lrp0 'gateway_chassis=[@gc0,@gc1]'
 
 # We expect not to receive garp on hv2 after inverting the priority.
 # Hence  reset hv2 after inverting priority as otherwise a garp might
@@ -14213,7 +14213,7 @@ check ovn-nbctl lsp-add inside inside1 \
 
 OVN_POPULATE_ARP
 
-ovn-nbctl create Logical_Router name=R1
+check_uuid ovn-nbctl create Logical_Router name=R1
 
 # Connect inside to R1
 check ovn-nbctl lrp-add R1 inside 00:00:01:01:02:03 192.168.1.1/24
@@ -14224,11 +14224,11 @@ check ovn-nbctl lsp-add inside rp-inside -- set 
Logical_Switch_Port rp-inside \
 # Connect outside to R1 as distributed router gateway port on gw1+gw2
 check ovn-nbctl lrp-add R1 outside 00:00:02:01:02:04 192.168.0.101/24
 
-ovn-nbctl --id=@gc0 create Gateway_Chassis \
-                    name=outside_gw1 chassis_name=gw1 priority=20 -- \
-          --id=@gc1 create Gateway_Chassis \
-                    name=outside_gw2 chassis_name=gw2 priority=10 -- \
-          set Logical_Router_Port outside 'gateway_chassis=[@gc0,@gc1]'
+check_uuid ovn-nbctl --id=@gc0 create Gateway_Chassis \
+                               name=outside_gw1 chassis_name=gw1 priority=20 
-- \
+                     --id=@gc1 create Gateway_Chassis \
+                               name=outside_gw2 chassis_name=gw2 priority=10 
-- \
+                     set Logical_Router_Port outside 
'gateway_chassis=[@gc0,@gc1]'
 
 check ovn-nbctl lsp-add outside rp-outside -- set Logical_Switch_Port 
rp-outside \
     type=router options:router-port=outside \
@@ -14434,7 +14434,7 @@ check ovn-nbctl lrp-add lr0_ip6 ip6_public 
00:00:02:01:02:04 \
 -- lrp-set-gateway-chassis ip6_public hv1
 
 # Install default static route.
-ovn-nbctl -- --id=@lrt create Logical_Router_Static_Route \
+check_uuid ovn-nbctl -- --id=@lrt create Logical_Router_Static_Route \
 ip_prefix="\:\:/0" nexthop="2001\:db8\:1\:0\:200\:02ff\:fe01\:1305" \
 -- add Logical_Router lr0_ip6 static_routes @lrt
 
@@ -14462,7 +14462,7 @@ check ovn-nbctl lrp-add lr1_ip6 ip6_public_1 
00:01:02:01:02:04 \
 -- lrp-set-gateway-chassis ip6_public_1 hv2
 
 # Install default static route.
-ovn-nbctl -- --id=@lrt create Logical_Router_Static_Route \
+check_uuid ovn-nbctl -- --id=@lrt create Logical_Router_Static_Route \
 ip_prefix="\:\:/0" nexthop="2002\:db8\:1\:0\:200\:02ff\:fe01\:1305" \
 -- add Logical_Router lr1_ip6 static_routes @lrt
 
@@ -17944,8 +17944,8 @@ for i in 1 2 3; do
     done
 done
 
-ovn-nbctl create Port_Group name=pg1 ports="$pg1_ports"
-ovn-nbctl create Port_Group name=pg2 ports="$pg2_ports"
+check_uuid ovn-nbctl create Port_Group name=pg1 ports="$pg1_ports"
+check_uuid ovn-nbctl create Port_Group name=pg2 ports="$pg2_ports"
 
 # create ACLs on ls1 and ls2 (where ports of pg1 reside) to drop all traffic
 # from pg2 to pg1
@@ -18164,8 +18164,8 @@ for i in 1 2 3; do
     done
 done
 
-ovn-nbctl create Port_Group name=pg1 ports="$pg1_ports"
-ovn-nbctl create Port_Group name=pg2 ports="$pg2_ports"
+check_uuid ovn-nbctl create Port_Group name=pg1 ports="$pg1_ports"
+check_uuid ovn-nbctl create Port_Group name=pg2 ports="$pg2_ports"
 
 # create ACLs on pg1 to drop traffic from pg2 to pg1
 check ovn-nbctl acl-add pg1 to-lport 1001 'outport == @pg1' drop
@@ -18391,8 +18391,8 @@ check ovn-nbctl lsp-set-addresses lp1 
"02:00:00:00:00:01 10.0.0.1 2001:db8::1"
 check ovn-nbctl lsp-set-addresses lp2 "02:00:00:00:00:02 10.0.0.2 2001:db8::2"
 check ovn-nbctl lsp-set-addresses lp3 "02:00:00:00:00:03 10.0.0.3 2001:db8::3"
 
-ovn-nbctl create Port_Group name=pg1
-ovn-nbctl create Port_Group name=pg2
+check_uuid ovn-nbctl create Port_Group name=pg1
+check_uuid ovn-nbctl create Port_Group name=pg2
 
 ovn-nbctl --id=@p get Logical_Switch_Port lp1 -- add Port_Group pg1 ports @p
 ovn-nbctl --id=@p get Logical_Switch_Port lp2 -- add Port_Group pg1 ports @p
@@ -18442,8 +18442,8 @@ check ovn-nbctl lsp-set-addresses lp1 
"02:00:00:00:00:01 dynamic"
 check ovn-nbctl lsp-set-addresses lp2 "02:00:00:00:00:02 dynamic"
 check ovn-nbctl lsp-set-addresses lp3 "02:00:00:00:00:03 dynamic"
 
-ovn-nbctl create Port_Group name=pg1
-ovn-nbctl create Port_Group name=pg2
+check_uuid ovn-nbctl create Port_Group name=pg1
+check_uuid ovn-nbctl create Port_Group name=pg2
 
 ovn-nbctl --id=@p get Logical_Switch_Port lp1 -- add Port_Group pg1 ports @p
 ovn-nbctl --id=@p get Logical_Switch_Port lp2 -- add Port_Group pg1 ports @p
@@ -18517,9 +18517,9 @@ ovs-vsctl -- add-port br-int hv1-vif2 -- \
     options:rxq_pcap=hv1/vif2-rx.pcap \
     ofport-request=2
 
-ovn-nbctl create Address_Set name=set1 \
+check_uuid ovn-nbctl create Address_Set name=set1 \
 addresses=\"10.0.0.4\",\"10.0.0.5\",\"10.0.0.6\"
-ovn-nbctl create Address_Set name=set2 \
+check_uuid ovn-nbctl create Address_Set name=set2 \
 addresses=\"10.0.0.7\",\"10.0.0.8\",\"10.0.0.9\"
 check ovn-nbctl acl-add ls1 to-lport 1001 \
 'ip4 && ip4.src == $set1 && ip4.dst == $set1' allow
@@ -19090,8 +19090,8 @@ check ovs-vsctl -- add-port br-int hv1-vif2 -- \
     options:rxq_pcap=hv1/vif2-rx.pcap \
     ofport-request=2
 
-ovn-nbctl create address_set name=as1 addresses="10.0.0.1"
-ovn-nbctl create address_set name=as2 addresses="10.0.0.11,10.0.0.12"
+check_uuid ovn-nbctl create address_set name=as1 addresses="10.0.0.1"
+check_uuid ovn-nbctl create address_set name=as2 
addresses="10.0.0.11,10.0.0.12"
 check ovn-nbctl pg-add pg1 ls1-lp1 ls1-lp2
 
 # The 1st ACL potentially can generate 2 conjunctions, but as1 has only 1 
address,
@@ -19163,8 +19163,8 @@ get_lsp_uuid () {
 }
 
 # Create Port Group and corresponding Address set.
-ovn-nbctl create Port_Group name=pg1 ports=`get_lsp_uuid lp11`,`get_lsp_uuid 
lp21`
-ovn-nbctl create Address_Set name=set1 
addresses=\"f0:00:00:00:00:11\",\"f0:00:00:00:00:21\"
+check_uuid ovn-nbctl create Port_Group name=pg1 ports=`get_lsp_uuid 
lp11`,`get_lsp_uuid lp21`
+check_uuid ovn-nbctl create Address_Set name=set1 
addresses=\"f0:00:00:00:00:11\",\"f0:00:00:00:00:21\"
 
 # Pre-populate the hypervisors' ARP tables so that we don't lose any
 # packets for ARP resolution (native tunneling doesn't queue packets
@@ -21007,7 +21007,7 @@ AT_CHECK([as hv1 ovs-ofctl dump-flows br-int  \
 ]])
 dp_uuid=$(ovn-sbctl find datapath_binding | grep sw0 -B2 | grep _uuid | \
 awk '{print $3}')
-ovn-sbctl create MAC_Binding ip=172.168.0.3 datapath=$dp_uuid \
+check_uuid ovn-sbctl create MAC_Binding ip=172.168.0.3 datapath=$dp_uuid \
 logical_port=lr0-public mac="00\:00\:00\:12\:af\:11"
 
 # Try different gateway mtus and send a 142-byte packet (corresponding
@@ -21058,7 +21058,7 @@ test_ip6_packet_larger_ext 2 f00000010204 
20000000000000000000000000000002 100 c
 check ovn-nbctl lsp-del sw0-lr0
 
 check ovn-nbctl lr-del lr0
-ovn-nbctl create Logical_Router name=lr1 options:chassis="hv1"
+check_uuid ovn-nbctl create Logical_Router name=lr1 options:chassis="hv1"
 check ovn-nbctl lrp-add lr1 lr1-sw0 00:00:00:00:ff:01 10.0.0.1/24 1000::1/64
 check ovn-nbctl lsp-add sw0 sw0-lr1
 check ovn-nbctl lsp-set-type sw0-lr1 router
@@ -21078,7 +21078,7 @@ check ovn-nbctl --wait=sb sync
 
 dp_uuid=$(ovn-sbctl find datapath_binding | grep sw0 -B2 | grep _uuid | \
 awk '{print $3}')
-ovn-sbctl create MAC_Binding ip=172.168.0.3 datapath=$dp_uuid \
+check_uuid ovn-sbctl create MAC_Binding ip=172.168.0.3 datapath=$dp_uuid \
 logical_port=lr1-public mac="00\:00\:00\:12\:af\:11"
 
 # Try different gateway mtus and send a 142-byte packet (corresponding
@@ -21213,7 +21213,7 @@ ovs-vsctl -- add-port br-int hv2-vif2 -- \
     options:rxq_pcap=hv2/vif2-rx.pcap \
     ofport-request=3
 
-ovn-nbctl create Logical_Router name=lr0
+check_uuid ovn-nbctl create Logical_Router name=lr0
 check ovn-nbctl ls-add sw0
 check ovn-nbctl ls-add sw1
 
@@ -21347,10 +21347,8 @@ check ovn-nbctl lsp-set-addresses ln-pub unknown
 check ovn-nbctl lsp-set-options ln-pub network_name=phys
 
 # Create logical routers and connect them to public switch
-AT_CHECK([(ovn-nbctl create Logical_Router name=lr0;
-           ovn-nbctl create Logical_Router name=lr1) | uuidfilt], [0], [<0>
-<1>
-])
+check_uuid ovn-nbctl create Logical_Router name=lr0
+check_uuid ovn-nbctl create Logical_Router name=lr1
 
 check ovn-nbctl lrp-add lr0 lr0-pub f0:00:00:00:00:01 172.24.4.220/24
 check ovn-nbctl lsp-add pub pub-lr0 -- set Logical_Switch_Port pub-lr0 \
@@ -21436,7 +21434,7 @@ check ovn-sbctl --all destroy mac_binding
 # Create a mac_binding entry on lr0-pub for 172.24.4.200 with a
 # wrong mac, expecting it to be updated with the real mac.
 lr0_dp=$(fetch_column Datapath_Binding _uuid external_ids:name=lr0)
-ovn-sbctl create mac_binding datapath=$lr0_dp logical_port=lr0-pub \
+check_uuid ovn-sbctl create mac_binding datapath=$lr0_dp logical_port=lr0-pub \
     ip=172.24.4.200 mac=\"aa:aa:aa:aa:aa:aa\"
 
 check ovn-nbctl lr-nat-add lr0 dnat_and_snat 172.24.4.100 10.0.0.10
@@ -22472,7 +22470,7 @@ ovn_start
 
 net_add n1
 
-ovn-nbctl create Logical_Router name=lr0 options:chassis=hv1
+check_uuid ovn-nbctl create Logical_Router name=lr0 options:chassis=hv1
 for i in 0 1; do
     idx=$((i+1))
     ovn-nbctl ls-add sw$i
@@ -23182,7 +23180,7 @@ wait_row_count Chassis 1 name=hv3 
other_config:ovn-monitor-all='"true"'
 # Inject a fake IGMP_Group entry.
 dp=$(fetch_column Datapath_Binding _uuid external_ids:name=sw2)
 ch=$(fetch_column Chassis _uuid name=hv3)
-ovn-sbctl create IGMP_Group address=239.0.1.42 datapath=$dp chassis=$ch 
chassis_name=hv3
+check_uuid ovn-sbctl create IGMP_Group address=239.0.1.42 datapath=$dp 
chassis=$ch chassis_name=hv3
 
 check ovn-nbctl --wait=hv sync
 wait_row_count IGMP_Group 2 address=239.0.1.68
@@ -25859,7 +25857,7 @@ check ovn-nbctl lb-add lb1 10.0.0.10:80 
10.0.0.3:80,20.0.0.3:80 sctp
 check ovn-nbctl --wait=sb set load_balancer . 
ip_port_mappings:10.0.0.3=sw0-p1:10.0.0.2
 check ovn-nbctl --wait=sb set load_balancer . 
ip_port_mappings:20.0.0.3=sw1-p1:10.0.0.2
 
-ovn-nbctl --wait=sb -- --id=@hc create \
+check_uuid ovn-nbctl --wait=sb -- --id=@hc create \
 Load_Balancer_Health_Check vip="10.0.0.10\:80" -- add Load_Balancer . \
 health_check @hc
 
@@ -27894,7 +27892,7 @@ check ovn-nbctl ls-add ls1
 check ovn-nbctl --wait=sb lsp-add ls1 lsp1
 
 # Simulate the fact that lsp1 had been previously bound on hv1.
-ovn-sbctl --id=@e1 create encap chassis_name=hv1 ip="192.168.0.1" 
type="geneve" \
+check_uuid ovn-sbctl --id=@e1 create encap chassis_name=hv1 ip="192.168.0.1" 
type="geneve" \
     -- --id=@e2 create encap chassis_name=hv1 ip="192.168.0.1" type="vxlan" \
     -- --id=@c create chassis hostname=hv1 name=hv1 encaps=@e1,@e2 \
     -- set Port_Binding lsp1 chassis=@c
@@ -27922,10 +27920,10 @@ check ovn-nbctl ls-add ls1
 check ovn-nbctl --wait=sb lsp-add ls1 lsp1
 
 # Simulate the fact that lsp1 had been previously bound on hv1.
-ovn-sbctl --id=@e1 create encap chassis_name=hv1 ip="192.168.0.1" 
type="geneve" \
-    -- --id=@e2 create encap chassis_name=hv1 ip="192.168.0.1" type="vxlan" \
-    -- --id=@c create chassis hostname=hv1 name=hv1 encaps=@e1,@e2 \
-    -- set Port_Binding lsp1 chassis=@c
+check_uuid ovn-sbctl --id=@e1 create encap chassis_name=hv1 ip="192.168.0.1" 
type="geneve" \
+               -- --id=@e2 create encap chassis_name=hv1 ip="192.168.0.1" 
type="vxlan" \
+               -- --id=@c create chassis hostname=hv1 name=hv1 encaps=@e1,@e2 \
+               -- set Port_Binding lsp1 chassis=@c
 
 as hv1
 ovs-vsctl add-br br-phys
@@ -28000,29 +27998,19 @@ wait_for_ports_up
 wait_row_count datapath_binding 1 external-ids:name=lr0
 lr0_dp_uuid=$(ovn-sbctl --bare --columns _uuid list datapath_binding lr0)
 
-AT_CHECK(
-  [ovn-sbctl create mac_binding datapath=$lr0_dp_uuid ip=172.168.0.120 \
+check_uuid ovn-sbctl create mac_binding datapath=$lr0_dp_uuid ip=172.168.0.120 
\
        logical_port=lr0-public mac="10\:54\:00\:00\:00\:03"
-   ovn-sbctl create mac_binding datapath=$lr0_dp_uuid ip=172.168.0.200 \
+check_uuid ovn-sbctl create mac_binding datapath=$lr0_dp_uuid ip=172.168.0.200 
\
        logical_port=lr0-public mac="10\:54\:00\:00\:00\:04"
-   ovn-sbctl create mac_binding datapath=$lr0_dp_uuid ip="bef0\:\:4" \
+check_uuid ovn-sbctl create mac_binding datapath=$lr0_dp_uuid ip="bef0\:\:4" \
        logical_port=lr0-public mac="10\:54\:00\:00\:00\:05"
-   ovn-sbctl create mac_binding datapath=$lr0_dp_uuid ip="bef0\:\:5" \
+check_uuid ovn-sbctl create mac_binding datapath=$lr0_dp_uuid ip="bef0\:\:5" \
        logical_port=lr0-public mac="10\:54\:00\:00\:00\:06"
-   ovn-sbctl create mac_binding datapath=$lr0_dp_uuid ip="bef0\:\:6" \
+check_uuid ovn-sbctl create mac_binding datapath=$lr0_dp_uuid ip="bef0\:\:6" \
        logical_port=lr0-public mac="10\:54\:00\:00\:00\:07"
-   ovn-nbctl -- --id=@lrt create Logical_Router_Static_Route \
+check_uuid ovn-nbctl -- --id=@lrt create Logical_Router_Static_Route \
        ip_prefix="\:\:/64" nexthop="bef0\:\:4" -- add Logical_Router lr0 \
-       static_routes @lrt],
-  [0], [stdout])
-AT_CHECK([uuidfilt stdout], [0],
-  [<0>
-<1>
-<2>
-<3>
-<4>
-<5>
-])
+       static_routes @lrt
 
 check ovn-nbctl --wait=hv sync
 
@@ -28799,7 +28787,7 @@ ovn_attach n1 br-phys 192.168.0.2
 #  would likely have a localnet port, but for the purposes of this test
 #  it is unnecessary.
 
-ovn-nbctl create Logical_Router name=DR
+check_uuid ovn-nbctl create Logical_Router name=DR
 gw_uuid=$(ovn-nbctl create Logical_Router name=GW)
 
 check ovn-nbctl ls-add ls1
@@ -28929,7 +28917,7 @@ ovn_attach n1 br-phys 192.168.0.2
 #  would likely have a localnet port, but for the purposes of this test
 #  it is unnecessary.
 
-ovn-nbctl create Logical_Router name=DR
+check_uuid ovn-nbctl create Logical_Router name=DR
 gw_uuid=$(ovn-nbctl create Logical_Router name=GW)
 
 check ovn-nbctl ls-add ls1
@@ -29158,7 +29146,7 @@ ovs-vsctl -- add-port br-int hv1-vif1 \
     -- add-port br-int hv1-vif2 \
     -- set interface hv1-vif2 external-ids:iface-id=lsp2
 
-ovn-nbctl ls-add ls1 \
+check_uuid ovn-nbctl ls-add ls1 \
     -- lsp-add ls1 lsp1 \
     -- lsp-add ls1 lsp2 \
     -- pg-add pg1 lsp1 lsp2 \
@@ -30090,7 +30078,7 @@ ${dst_ip}0035111100080000
 }
 
 # Create an address set
-ovn-nbctl create Address_Set name=as1 \
+check_uuid ovn-nbctl create Address_Set name=as1 \
 addresses=\"10.0.0.2\",\"10.0.0.3\"
 
 # Create overlapping ACLs resulting in conflict desired OVS flows
@@ -31335,7 +31323,7 @@ check ovn-nbctl lsp-add sw0 sw0-port5
 check ovn-nbctl lsp-add sw0 sw0-port6
 check ovn-nbctl lsp-add sw0 sw0-port7
 
-ovn-nbctl create address_set name=as1
+check_uuid ovn-nbctl create address_set name=as1
 check ovn-nbctl set address_set . addresses="10.0.0.10,10.0.0.11,10.0.0.12"
 
 check ovn-nbctl pg-add pg1 sw0-port1 sw0-port2 sw0-port3
@@ -31869,7 +31857,7 @@ AS_BOX([Test routing])
 
 lr0_dp_uuid=$(fetch_column datapath_binding _uuid external_ids:name=lr0)
 
-ovn-sbctl create mac_binding ip=10.0.0.14 logical_port=lr0-sw0 \
+check_uuid ovn-sbctl create mac_binding ip=10.0.0.14 logical_port=lr0-sw0 \
 mac="50\:54\:00\:00\:00\:14" datapath=$lr0_dp_uuid
 
 # Wait till the mac_binding flows appear in hv1
@@ -34191,7 +34179,7 @@ test_mac_binding_flows() {
 # Create SB MAC_Binding entry on external gateway port
 lr0_dp_uuid=$(fetch_column datapath_binding _uuid external_ids:name=lr0)
 
-ovn-sbctl create mac_binding ip=172.16.1.1 logical_port=lr0-ext-ls0 
mac="00\:00\:11\:22\:33\:44" datapath=$lr0_dp_uuid
+check_uuid ovn-sbctl create mac_binding ip=172.16.1.1 logical_port=lr0-ext-ls0 
mac="00\:00\:11\:22\:33\:44" datapath=$lr0_dp_uuid
 test_mac_binding_flows 100 00:00:11:22:33:44 1
 
 # Create Static_MAC_Binding entry on external gateway port. This should have
@@ -34289,7 +34277,7 @@ test_mac_binding_flows() {
 
 # Create SB MAC_Binding entry on external gateway port
 gw_dp_uuid=$(fetch_column datapath_binding _uuid external_ids:name=gw)
-ovn-sbctl create mac_binding ip=192.168.10.10 logical_port=gw-public 
mac="00\:00\:00\:00\:10\:10" datapath=$gw_dp_uuid
+check_uuid ovn-sbctl create mac_binding ip=192.168.10.10 
logical_port=gw-public mac="00\:00\:00\:00\:10\:10" datapath=$gw_dp_uuid
 
 test_mac_binding_flows hv1 00\:00\:00\:00\:10\:10 1
 test_mac_binding_flows hv2 00\:00\:00\:00\:10\:10 0
@@ -35304,7 +35292,7 @@ ovs-vsctl -- add-port br-int hv2-vif2 -- \
     options:tx_pcap=hv2/vif2-tx.pcap \
     options:rxq_pcap=hv2/vif2-rx.pcap
 
-ovn-nbctl create Logical_Router name=lr0
+check_uuid ovn-nbctl create Logical_Router name=lr0
 check ovn-nbctl ls-add sw0
 check ovn-nbctl ls-add sw1
 
@@ -38175,7 +38163,7 @@ check ovn-nbctl --wait=hv ls-add ls \
           -- lrp-set-gateway-chassis lr-ls hv1
 
 dp_uuid=$(fetch_column datapath _uuid external_ids:name=lr)
-ovn-sbctl create MAC_Binding ip=192.168.1.10 datapath=$dp_uuid 
logical_port=lr-ls mac='"00:00:00:00:00:01"'
+check_uuid ovn-sbctl create MAC_Binding ip=192.168.1.10 datapath=$dp_uuid 
logical_port=lr-ls mac='"00:00:00:00:00:01"'
 
 OVN_POPULATE_ARP
 wait_for_ports_up
@@ -38185,7 +38173,7 @@ create_fdb() {
     ls_key=$(fetch_column datapath tunnel_key external_ids:name=ls)
     lsp_key=$(fetch_column port_binding tunnel_key logical_port=lsp1)
 
-    ovn-sbctl create FDB mac='"00:00:00:00:00:01"' dp_key=$ls_key 
port_key=$lsp_key
+    check_uuid ovn-sbctl create FDB mac='"00:00:00:00:00:01"' dp_key=$ls_key 
port_key=$lsp_key
 }
 
 AS_BOX([Logical switch tunnel_key change])
diff --git a/tests/system-common-macros.at b/tests/system-common-macros.at
index c59556173..c4ce2f9e4 100644
--- a/tests/system-common-macros.at
+++ b/tests/system-common-macros.at
@@ -398,7 +398,7 @@ ADD_VETH(s1, server, br-ext, "2001:1db8:3333::2/64", 
"f0:00:00:01:02:05", \
          "2001:1db8:3333::1", "nodad")
 
 if test X"$1" = X"GR"; then
-   ovn-nbctl create Logical_Router name=R1 options:chassis=hv1
+   check_uuid ovn-nbctl create Logical_Router name=R1 options:chassis=hv1
 else
    ovn-nbctl lr-add R1
 fi
diff --git a/tests/system-ovn-kmod.at b/tests/system-ovn-kmod.at
index 18d7ceca2..170024a61 100644
--- a/tests/system-ovn-kmod.at
+++ b/tests/system-ovn-kmod.at
@@ -31,8 +31,8 @@ start_daemon ovn-controller
 #           |
 #    bar ----
 
-ovn-nbctl create Logical_Router name=R1
-ovn-nbctl create Logical_Router name=R2 options:chassis=hv1
+check_uuid ovn-nbctl create Logical_Router name=R1
+check_uuid ovn-nbctl create Logical_Router name=R2 options:chassis=hv1
 
 check ovn-nbctl ls-add foo
 check ovn-nbctl ls-add bar
@@ -332,8 +332,8 @@ start_daemon ovn-controller
 #           |
 #    bar ----
 
-ovn-nbctl create Logical_Router name=R1
-ovn-nbctl create Logical_Router name=R2 options:chassis=hv1
+check_uuid ovn-nbctl create Logical_Router name=R1
+check_uuid ovn-nbctl create Logical_Router name=R2 options:chassis=hv1
 
 check ovn-nbctl ls-add foo
 check ovn-nbctl ls-add bar
@@ -880,7 +880,7 @@ for type in icmp udp tcp; do
     AS_BOX([Testing $type])
     # First time, when the packet needs to pass through pinctrl buffering
     check ovs-appctl dpctl/flush-conntrack
-    ovn-sbctl --all destroy mac_binding
+    check ovn-sbctl --all destroy mac_binding
     wait_row_count mac_binding 0
     test_$type
 
diff --git a/tests/system-ovn.at b/tests/system-ovn.at
index 19ec1eb8d..0137f7c2e 100644
--- a/tests/system-ovn.at
+++ b/tests/system-ovn.at
@@ -31,8 +31,8 @@ start_daemon ovn-controller
 #           |
 #    bar ----
 
-ovn-nbctl create Logical_Router name=R1
-ovn-nbctl create Logical_Router name=R2 options:chassis=hv1
+check_uuid ovn-nbctl create Logical_Router name=R1
+check_uuid ovn-nbctl create Logical_Router name=R2 options:chassis=hv1
 
 check ovn-nbctl ls-add foo
 check ovn-nbctl ls-add bar
@@ -90,11 +90,11 @@ check ovn-nbctl lsp-add bar bar1 \
 -- lsp-set-addresses bar1 "f0:00:00:01:02:05 192.168.2.2"
 
 # Add a DNAT rule.
-ovn-nbctl -- --id=@nat create nat type="dnat" logical_ip=192.168.1.2 \
+check_uuid ovn-nbctl -- --id=@nat create nat type="dnat" 
logical_ip=192.168.1.2 \
     external_ip=30.0.0.2 -- add logical_router R2 nat @nat
 
 # Add a SNAT rule
-ovn-nbctl -- --id=@nat create nat type="snat" logical_ip=192.168.2.2 \
+check_uuid ovn-nbctl -- --id=@nat create nat type="snat" 
logical_ip=192.168.2.2 \
     external_ip=30.0.0.1 -- add logical_router R2 nat @nat
 
 # wait for ovn-controller to catch up.
@@ -210,8 +210,8 @@ start_daemon ovn-controller
 #           |
 #    bar ----
 
-ovn-nbctl create Logical_Router name=R1
-ovn-nbctl create Logical_Router name=R2 options:chassis=hv1
+check_uuid ovn-nbctl create Logical_Router name=R1
+check_uuid ovn-nbctl create Logical_Router name=R2 options:chassis=hv1
 
 check ovn-nbctl ls-add foo
 check ovn-nbctl ls-add bar
@@ -270,11 +270,11 @@ check ovn-nbctl lsp-add bar bar1 \
 -- lsp-set-addresses bar1 "f0:00:00:01:02:05 fd12::2"
 
 # Add a DNAT rule.
-ovn-nbctl -- --id=@nat create nat type="dnat" logical_ip=\"fd11::2\" \
+check_uuid ovn-nbctl -- --id=@nat create nat type="dnat" 
logical_ip=\"fd11::2\" \
     external_ip=\"fd30::2\" -- add logical_router R2 nat @nat
 
 # Add a SNAT rule
-ovn-nbctl -- --id=@nat create nat type="snat" logical_ip=\"fd12::2\" \
+check_uuid ovn-nbctl -- --id=@nat create nat type="snat" 
logical_ip=\"fd12::2\" \
     external_ip=\"fd30::1\" -- add logical_router R2 nat @nat
 
 # wait for ovn-controller to catch up.
@@ -435,7 +435,7 @@ check ovn-nbctl lsp-add alice alice1 \
 -- lsp-set-addresses alice1 "f0:00:00:01:02:04 172.16.1.2"
 
 # Add a SNAT rule
-ovn-nbctl -- --id=@nat create nat type="snat" logical_ip=192.168.1.2 \
+check_uuid ovn-nbctl -- --id=@nat create nat type="snat" 
logical_ip=192.168.1.2 \
     external_ip=172.16.1.1 -- add logical_router R2 nat @nat
 
 check ovn-nbctl --wait=hv sync
@@ -547,7 +547,7 @@ check ovn-nbctl lsp-add alice alice1 \
 -- lsp-set-addresses alice1 "f0:00:00:01:02:04 fd30::2"
 
 # Add a SNAT rule
-ovn-nbctl -- --id=@nat create nat type="snat" logical_ip=\"fd10::2\" \
+check_uuid ovn-nbctl -- --id=@nat create nat type="snat" 
logical_ip=\"fd10::2\" \
     external_ip=\"fd30::1\" -- add logical_router R2 nat @nat
 
 check ovn-nbctl --wait=hv sync
@@ -618,9 +618,9 @@ start_daemon ovn-controller
 #           |          |
 #    bar ----          - R3 --- bob
 
-ovn-nbctl create Logical_Router name=R1
-ovn-nbctl create Logical_Router name=R2 options:chassis=hv1
-ovn-nbctl create Logical_Router name=R3 options:chassis=hv1
+check_uuid ovn-nbctl create Logical_Router name=R1
+check_uuid ovn-nbctl create Logical_Router name=R2 options:chassis=hv1
+check_uuid ovn-nbctl create Logical_Router name=R3 options:chassis=hv1
 
 check ovn-nbctl ls-add foo
 check ovn-nbctl ls-add bar
@@ -706,20 +706,20 @@ check ovn-nbctl lsp-add bob bob1 \
 
 # Router R2
 # Add a DNAT rule.
-ovn-nbctl -- --id=@nat create nat type="dnat" logical_ip=192.168.1.2 \
+check_uuid ovn-nbctl -- --id=@nat create nat type="dnat" 
logical_ip=192.168.1.2 \
     external_ip=30.0.0.2 -- add logical_router R2 nat @nat
 
 # Add a SNAT rule
-ovn-nbctl -- --id=@nat create nat type="snat" logical_ip=192.168.1.2 \
+check_uuid ovn-nbctl -- --id=@nat create nat type="snat" 
logical_ip=192.168.1.2 \
     external_ip=30.0.0.1 -- add logical_router R2 nat @nat
 
 # Router R3
 # Add a DNAT rule.
-ovn-nbctl -- --id=@nat create nat type="dnat" logical_ip=192.168.1.2 \
+check_uuid ovn-nbctl -- --id=@nat create nat type="dnat" 
logical_ip=192.168.1.2 \
     external_ip=30.0.0.3 -- add logical_router R3 nat @nat
 
 # Add a SNAT rule
-ovn-nbctl -- --id=@nat create nat type="snat" logical_ip=192.168.2.2 \
+check_uuid ovn-nbctl -- --id=@nat create nat type="snat" 
logical_ip=192.168.2.2 \
     external_ip=30.0.0.4 -- add logical_router R3 nat @nat
 
 # wait for ovn-controller to catch up.
@@ -840,9 +840,9 @@ start_daemon ovn-controller
 #           |          |
 #    bar ----          - R3 --- bob
 
-ovn-nbctl create Logical_Router name=R1
-ovn-nbctl create Logical_Router name=R2 options:chassis=hv1
-ovn-nbctl create Logical_Router name=R3 options:chassis=hv1
+check_uuid ovn-nbctl create Logical_Router name=R1
+check_uuid ovn-nbctl create Logical_Router name=R2 options:chassis=hv1
+check_uuid ovn-nbctl create Logical_Router name=R3 options:chassis=hv1
 
 check ovn-nbctl ls-add foo
 check ovn-nbctl ls-add bar
@@ -932,20 +932,20 @@ check ovn-nbctl lsp-add bob bob1 \
 
 # Router R2
 # Add a DNAT rule.
-ovn-nbctl -- --id=@nat create nat type="dnat" logical_ip='"fd11::2"' \
+check_uuid ovn-nbctl -- --id=@nat create nat type="dnat" 
logical_ip='"fd11::2"' \
     external_ip='"fd40::2"' -- add logical_router R2 nat @nat
 
 # Add a SNAT rule
-ovn-nbctl -- --id=@nat create nat type="snat" logical_ip='"fd11::2"' \
+check_uuid ovn-nbctl -- --id=@nat create nat type="snat" 
logical_ip='"fd11::2"' \
     external_ip='"fd40::1"' -- add logical_router R2 nat @nat
 
 # Router R3
 # Add a DNAT rule.
-ovn-nbctl -- --id=@nat create nat type="dnat" logical_ip='"fd11::2"' \
+check_uuid ovn-nbctl -- --id=@nat create nat type="dnat" 
logical_ip='"fd11::2"' \
     external_ip='"fd40::3"' -- add logical_router R3 nat @nat
 
 # Add a SNAT rule
-ovn-nbctl -- --id=@nat create nat type="snat" logical_ip='"fd12::2"' \
+check_uuid ovn-nbctl -- --id=@nat create nat type="snat" 
logical_ip='"fd12::2"' \
     external_ip='"fd40::4"' -- add logical_router R3 nat @nat
 
 # wait for ovn-controller to catch up.
@@ -1067,9 +1067,9 @@ start_daemon ovn-controller
 #           |          |
 #    bar ----          - R3 --- bob
 
-ovn-nbctl create Logical_Router name=R1
-ovn-nbctl create Logical_Router name=R2 options:chassis=hv1
-ovn-nbctl create Logical_Router name=R3 options:chassis=hv1
+check_uuid ovn-nbctl create Logical_Router name=R1
+check_uuid ovn-nbctl create Logical_Router name=R2 options:chassis=hv1
+check_uuid ovn-nbctl create Logical_Router name=R3 options:chassis=hv1
 
 check ovn-nbctl ls-add foo
 check ovn-nbctl ls-add bar
@@ -1185,28 +1185,28 @@ check ovn-nbctl lsp-add bob bob16 \
 
 # Router R2
 # Add a DNAT rule.
-ovn-nbctl -- --id=@nat create nat type="dnat" logical_ip=192.168.1.2 \
+check_uuid ovn-nbctl -- --id=@nat create nat type="dnat" 
logical_ip=192.168.1.2 \
     external_ip=30.0.0.2 -- add logical_router R2 nat @nat
-ovn-nbctl -- --id=@nat create nat type="dnat" logical_ip='"fd11::2"' \
+check_uuid ovn-nbctl -- --id=@nat create nat type="dnat" 
logical_ip='"fd11::2"' \
     external_ip='"fd40::2"' -- add logical_router R2 nat @nat
 
 # Add a SNAT rule
-ovn-nbctl -- --id=@nat create nat type="snat" logical_ip=192.168.1.2 \
+check_uuid ovn-nbctl -- --id=@nat create nat type="snat" 
logical_ip=192.168.1.2 \
     external_ip=30.0.0.1 -- add logical_router R2 nat @nat
-ovn-nbctl -- --id=@nat create nat type="snat" logical_ip='"fd11::2"' \
+check_uuid ovn-nbctl -- --id=@nat create nat type="snat" 
logical_ip='"fd11::2"' \
     external_ip='"fd40::1"' -- add logical_router R2 nat @nat
 
 # Router R3
 # Add a DNAT rule.
-ovn-nbctl -- --id=@nat create nat type="dnat" logical_ip=192.168.1.2 \
+check_uuid ovn-nbctl -- --id=@nat create nat type="dnat" 
logical_ip=192.168.1.2 \
     external_ip=30.0.0.3 -- add logical_router R3 nat @nat
-ovn-nbctl -- --id=@nat create nat type="dnat" logical_ip='"fd11::2"' \
+check_uuid ovn-nbctl -- --id=@nat create nat type="dnat" 
logical_ip='"fd11::2"' \
     external_ip='"fd40::3"' -- add logical_router R3 nat @nat
 
 # Add a SNAT rule
-ovn-nbctl -- --id=@nat create nat type="snat" logical_ip=192.168.2.2 \
+check_uuid ovn-nbctl -- --id=@nat create nat type="snat" 
logical_ip=192.168.2.2 \
     external_ip=30.0.0.4 -- add logical_router R3 nat @nat
-ovn-nbctl -- --id=@nat create nat type="snat" logical_ip='"fd12::2"' \
+check_uuid ovn-nbctl -- --id=@nat create nat type="snat" 
logical_ip='"fd12::2"' \
     external_ip='"fd40::4"' -- add logical_router R3 nat @nat
 
 # wait for ovn-controller to catch up.
@@ -1374,7 +1374,7 @@ start_daemon ovn-controller
 #
 # Loadbalancer VIPs in 30.0.0.0/24 network.
 
-ovn-nbctl create Logical_Router name=R1
+check_uuid ovn-nbctl create Logical_Router name=R1
 check ovn-nbctl ls-add foo
 check ovn-nbctl ls-add bar
 
@@ -1655,7 +1655,7 @@ start_daemon ovn-controller
 #
 # Loadbalancer VIPs in fd03::/64 network.
 
-ovn-nbctl create Logical_Router name=R1
+check_uuid ovn-nbctl create Logical_Router name=R1
 check ovn-nbctl ls-add foo
 check ovn-nbctl ls-add bar
 
@@ -1701,7 +1701,7 @@ check ovn-nbctl set logical_switch foo load_balancer=$uuid
 
 # Create another load-balancer with another VIP.
 lb2_uuid=`ovn-nbctl create load_balancer 
vips:\"fd03::3\"=\"fd02::2,fd02::3,fd02::4\"`
-ovn-nbctl add logical_switch foo load_balancer $lb2_uuid
+check ovn-nbctl add logical_switch foo load_balancer $lb2_uuid
 
 # Config OVN load-balancer with another VIP (this time with ports).
 check ovn-nbctl set load_balancer $lb2_uuid 
vips:'"[[fd03::2]]:8000"'='"@<:@fd02::2@:>@:80,@<:@fd02::3@:>@:80,@<:@fd02::4@:>@:80"'
@@ -1876,7 +1876,7 @@ start_daemon ovn-controller
 # gateway. We will test load-balancing with foo1 as a client and foo2, foo3 and
 # foo4 as servers.
 
-ovn-nbctl create Logical_Router name=R1
+check_uuid ovn-nbctl create Logical_Router name=R1
 check ovn-nbctl ls-add foo
 
 # Connect foo to R1
@@ -1984,7 +1984,7 @@ start_daemon ovn-controller
 # gateway. We will test load-balancing with foo1 as a client and foo2, foo3 and
 # foo4 as servers.
 
-ovn-nbctl create Logical_Router name=R1
+check_uuid ovn-nbctl create Logical_Router name=R1
 check ovn-nbctl ls-add foo
 
 # Connect foo to R1
@@ -2096,8 +2096,8 @@ start_daemon ovn-controller
 #           |
 #    bar ----
 
-ovn-nbctl create Logical_Router name=R1
-ovn-nbctl create Logical_Router name=R2 options:chassis=hv1
+check_uuid ovn-nbctl create Logical_Router name=R1
+check_uuid ovn-nbctl create Logical_Router name=R2 options:chassis=hv1
 
 check ovn-nbctl ls-add foo
 check ovn-nbctl ls-add bar
@@ -2162,7 +2162,7 @@ check ovn-nbctl set logical_router R2 load_balancer=$uuid
 check ovn-nbctl set load_balancer $uuid 
vips:'"30.0.0.2:8000"'='"192.168.1.2:80,192.168.2.2:80"'
 
 # Add SNAT rule to make sure that Load-balancing still works with a SNAT rule.
-ovn-nbctl -- --id=@nat create nat type="snat" logical_ip=192.168.2.2 \
+check_uuid ovn-nbctl -- --id=@nat create nat type="snat" 
logical_ip=192.168.2.2 \
     external_ip=30.0.0.2 -- add logical_router R2 nat @nat
 
 # Wait for ovn-controller to catch up.
@@ -2442,8 +2442,8 @@ start_daemon ovn-controller
 #           |
 #    bar ----
 
-ovn-nbctl create Logical_Router name=R1
-ovn-nbctl create Logical_Router name=R2 options:chassis=hv1
+check_uuid ovn-nbctl create Logical_Router name=R1
+check_uuid ovn-nbctl create Logical_Router name=R2 options:chassis=hv1
 
 check ovn-nbctl ls-add foo
 check ovn-nbctl ls-add bar
@@ -2511,7 +2511,7 @@ check ovn-nbctl set load_balancer $uuid 
vips:'"[[fd30::2]]:8000"'='"@<:@fd11::2@
 ovn-nbctl list load_balancer
 
 # Add SNAT rule to make sure that Load-balancing still works with a SNAT rule.
-ovn-nbctl -- --id=@nat create nat type="snat" logical_ip=\"fd12::2\" \
+check_uuid ovn-nbctl -- --id=@nat create nat type="snat" 
logical_ip=\"fd12::2\" \
     external_ip=\"fd30::2\" -- add logical_router R2 nat @nat
 
 
@@ -2602,9 +2602,9 @@ start_daemon ovn-controller
 #           |          |
 #    bar ----          - R3 --- bob
 
-ovn-nbctl create Logical_Router name=R1
-ovn-nbctl create Logical_Router name=R2 options:chassis=hv1
-ovn-nbctl create Logical_Router name=R3 options:chassis=hv1
+check_uuid ovn-nbctl create Logical_Router name=R1
+check_uuid ovn-nbctl create Logical_Router name=R2 options:chassis=hv1
+check_uuid ovn-nbctl create Logical_Router name=R3 options:chassis=hv1
 
 check ovn-nbctl ls-add foo
 check ovn-nbctl ls-add bar
@@ -2773,9 +2773,9 @@ start_daemon ovn-controller
 #           |          |
 #    bar ----          - R3 --- bob
 
-ovn-nbctl create Logical_Router name=R1
-ovn-nbctl create Logical_Router name=R2 options:chassis=hv1
-ovn-nbctl create Logical_Router name=R3 options:chassis=hv1
+check_uuid ovn-nbctl create Logical_Router name=R1
+check_uuid ovn-nbctl create Logical_Router name=R2 options:chassis=hv1
+check_uuid ovn-nbctl create Logical_Router name=R3 options:chassis=hv1
 
 check ovn-nbctl ls-add foo
 check ovn-nbctl ls-add bar
@@ -2947,9 +2947,9 @@ start_daemon ovn-controller
 #           |          |
 #    bar ----          - R3 --- bob
 
-ovn-nbctl create Logical_Router name=R1
-ovn-nbctl create Logical_Router name=R2 options:chassis=hv1
-ovn-nbctl create Logical_Router name=R3 options:chassis=hv1
+check_uuid ovn-nbctl create Logical_Router name=R1
+check_uuid ovn-nbctl create Logical_Router name=R2 options:chassis=hv1
+check_uuid ovn-nbctl create Logical_Router name=R3 options:chassis=hv1
 
 check ovn-nbctl ls-add foo
 check ovn-nbctl ls-add bar
@@ -4501,7 +4501,7 @@ check ovn-nbctl --reject lb-add lb1 10.0.0.10:80 
10.0.0.3:80,20.0.0.3:80
 check ovn-nbctl --wait=sb set load_balancer . 
ip_port_mappings:10.0.0.3=sw0-p1:10.0.0.2
 check ovn-nbctl --wait=sb set load_balancer . 
ip_port_mappings:20.0.0.3=sw1-p1:20.0.0.2
 
-ovn-nbctl --wait=sb -- --id=@hc create \
+check_uuid ovn-nbctl --wait=sb -- --id=@hc create \
 Load_Balancer_Health_Check vip="10.0.0.10\:80" -- add Load_Balancer . \
 health_check @hc
 
@@ -4598,7 +4598,7 @@ ovn-nbctl list load_balancer
 check ovn-nbctl --wait=sb set load_balancer $lb_udp 
ip_port_mappings:10.0.0.3=sw0-p1:10.0.0.2
 check ovn-nbctl --wait=sb set load_balancer $lb_udp 
ip_port_mappings:20.0.0.3=sw1-p1:20.0.0.2
 
-ovn-nbctl --wait=sb -- --id=@hc create \
+check_uuid ovn-nbctl --wait=sb -- --id=@hc create \
 Load_Balancer_Health_Check vip="10.0.0.10\:80" -- add Load_Balancer $lb_udp \
 health_check @hc
 
@@ -4727,7 +4727,7 @@ check ovn-nbctl --reject lb-add lb1 [[2001::a]]:80 
[[2001::3]]:80,[[2002::3]]:80
 check ovn-nbctl --wait=sb set load_balancer . 
ip_port_mappings:\"[[2001::3]]\"=\"sw0-p1:[[2001::2]]\"
 check ovn-nbctl --wait=sb set load_balancer . 
ip_port_mappings:\"[[2002::3]]\"=\"sw1-p1:[[2002::2]]\"
 
-ovn-nbctl --wait=sb -- --id=@hc create \
+check_uuid ovn-nbctl --wait=sb -- --id=@hc create \
 Load_Balancer_Health_Check vip="\[\[2001\:\:a\]\]\:80" -- add Load_Balancer . \
 health_check @hc
 
@@ -6093,9 +6093,9 @@ start_daemon ovn-controller
 # For this test, Bob sends request traffic through R2 to Alice. We want to 
ensure that
 # all response traffic from Alice is routed through R2 as well.
 
-ovn-nbctl create Logical_Router name=R1 options:chassis=hv1
-ovn-nbctl create Logical_Router name=R2
-ovn-nbctl create Logical_Router name=R3
+check_uuid ovn-nbctl create Logical_Router name=R1 options:chassis=hv1
+check_uuid ovn-nbctl create Logical_Router name=R2
+check_uuid ovn-nbctl create Logical_Router name=R3
 
 check ovn-nbctl ls-add alice
 check ovn-nbctl ls-add bob
@@ -6309,9 +6309,9 @@ start_daemon ovn-controller
 # For this test, Bob sends request traffic through R2 to Alice. We want to 
ensure that
 # all response traffic from Alice is routed through R2 as well.
 
-ovn-nbctl create Logical_Router name=R1 options:chassis=hv1
-ovn-nbctl create Logical_Router name=R2
-ovn-nbctl create Logical_Router name=R3
+check_uuid ovn-nbctl create Logical_Router name=R1 options:chassis=hv1
+check_uuid ovn-nbctl create Logical_Router name=R2
+check_uuid ovn-nbctl create Logical_Router name=R3
 
 check ovn-nbctl ls-add alice
 check ovn-nbctl ls-add bob
@@ -11430,7 +11430,7 @@ start_daemon ovn-controller
 
 ovs-ofctl add-flow br-mirror action=normal
 
-ovn-nbctl create Logical_Router name=R1 options:chassis=hv1
+check_uuid ovn-nbctl create Logical_Router name=R1 options:chassis=hv1
 
 check ovn-nbctl ls-add foo
 check ovn-nbctl ls-add bar
@@ -12022,8 +12022,8 @@ start_daemon ovn-controller
 #           |
 #    bar ----
 
-ovn-nbctl create Logical_Router name=R1
-ovn-nbctl create Logical_Router name=R2 options:chassis=hv1
+check_uuid ovn-nbctl create Logical_Router name=R1
+check_uuid ovn-nbctl create Logical_Router name=R2 options:chassis=hv1
 
 check ovn-nbctl ls-add foo
 check ovn-nbctl ls-add bar
@@ -12088,7 +12088,7 @@ check ovn-nbctl set logical_router R2 
load_balancer=$uuid
 check ovn-nbctl set load_balancer $uuid 
vips:'"30.0.0.2:8000"'='"192.168.1.2:12345,192.168.2.2:12345"'
 
 # Add SNAT rule to make sure that Load-balancing still works with a SNAT rule.
-ovn-nbctl -- --id=@nat create nat type="snat" logical_ip=192.168.2.2 \
+check_uuid ovn-nbctl -- --id=@nat create nat type="snat" 
logical_ip=192.168.2.2 \
     external_ip=30.0.0.2 -- add logical_router R2 nat @nat
 
 # Wait for ovn-controller to catch up.
@@ -12496,10 +12496,9 @@ check ovn-nbctl lsp-set-addresses ln-pub unknown
 check ovn-nbctl lsp-set-options ln-pub network_name=phys
 
 # Create logical routers and connect them to public switch
-AT_CHECK([(ovn-nbctl create Logical_Router name=lr0;
-           ovn-nbctl create Logical_Router name=lr1) | uuidfilt], [0], [<0>
-<1>
-])
+check_uuid ovn-nbctl create Logical_Router name=lr0
+check_uuid ovn-nbctl create Logical_Router name=lr1
+
 check ovn-nbctl lrp-add lr0 lr0-pub f0:00:00:00:00:01 172.24.4.220/24
 check ovn-nbctl lsp-add pub pub-lr0 -- set Logical_Switch_Port pub-lr0 \
     type=router options:router-port=lr0-pub options:nat-addresses="router" 
addresses="router"
@@ -13147,46 +13146,46 @@ collector1=$(ovn-nbctl create Sample_Collector id=1 
name=c1 probability=65535 se
 collector2=$(ovn-nbctl create Sample_Collector id=2 name=c2 probability=65535 
set_id=200)
 check_row_count nb:Sample_Collector 2
 
-ovn-nbctl create Sampling_App type="acl-new" id="42"
-ovn-nbctl create Sampling_App type="acl-est" id="43"
+check_uuid ovn-nbctl create Sampling_App type="acl-new" id="42"
+check_uuid ovn-nbctl create Sampling_App type="acl-est" id="43"
 check_row_count nb:Sampling_App 2
 
 dnl Create ACLs that match the 3 types of traffic in all 3 possible stages:
 dnl from-lport, from-lport-after-lb, to-lport.
-ovn-nbctl                                                                      
   \
+check_uuid ovn-nbctl                                                           
   \
     -- --id=@sample_in_1c_new create Sample collector="$collector1" 
metadata=1001 \
     -- --id=@sample_in_1c_est create Sample collector="$collector1" 
metadata=1002 \
     -- --sample-new=@sample_in_1c_new --sample-est=@sample_in_1c_est           
   \
        acl-add ls from-lport 1 "inport == \"vm1\" && udp.dst == 1000"          
   \
        allow-related
-ovn-nbctl                                                                      
               \
+check_uuid ovn-nbctl                                                           
               \
     -- --id=@sample_in_2c_new create Sample collector="$collector1 
$collector2" metadata=1011 \
     -- --id=@sample_in_2c_est create Sample collector="$collector1 
$collector2" metadata=1012 \
     -- --sample-new=@sample_in_2c_new --sample-est=@sample_in_2c_est           
               \
        acl-add ls from-lport 1 "inport == \"vm1\" && udp.dst == 1010"          
               \
        allow-related
 
-ovn-nbctl                                                                      
      \
+check_uuid ovn-nbctl                                                           
      \
     -- --id=@sample_in_lb_1c_new create Sample collector="$collector1" 
metadata=2001 \
     -- --id=@sample_in_lb_1c_est create Sample collector="$collector1" 
metadata=2002 \
     -- --apply-after-lb --sample-new=@sample_in_lb_1c_new                      
      \
        --sample-est=@sample_in_lb_1c_est                                       
      \
        acl-add ls from-lport 1 "inport == \"vm1\" && udp.dst == 2000"          
      \
        allow-related
-ovn-nbctl                                                                      
                  \
+check_uuid ovn-nbctl                                                           
                  \
     -- --id=@sample_in_lb_2c_new create Sample collector="$collector1 
$collector2" metadata=2011 \
     -- --id=@sample_in_lb_2c_est create Sample collector="$collector1 
$collector2" metadata=2012 \
     -- --apply-after-lb --sample-new=@sample_in_lb_2c_new 
--sample-est=@sample_in_lb_2c_est      \
        acl-add ls from-lport 1 "inport == \"vm1\" && udp.dst == 2010"          
                  \
        allow-related
 
-ovn-nbctl                                                                      
    \
+check_uuid ovn-nbctl                                                           
    \
     -- --id=@sample_out_1c_new create Sample collector="$collector1" 
metadata=3001 \
     -- --id=@sample_out_1c_est create Sample collector="$collector1" 
metadata=3002 \
     -- --sample-new=@sample_out_1c_new --sample-est=@sample_out_1c_est         
    \
        acl-add ls to-lport 1 "outport == \"vm2\" && udp.dst == 3000"           
    \
        allow-related
-ovn-nbctl                                                                      
                \
+check_uuid ovn-nbctl                                                           
                \
     -- --id=@sample_out_2c_new create Sample collector="$collector1 
$collector2" metadata=3011 \
     -- --id=@sample_out_2c_est create Sample collector="$collector1 
$collector2" metadata=3012 \
     -- --sample-new=@sample_out_2c_new --sample-est=@sample_out_2c_est         
                \
@@ -13343,19 +13342,19 @@ ADD_VETH(vm2, vm2, br-int, "42.42.42.3/24", 
"00:00:00:00:00:02", "42.42.42.1")
 collector1=$(ovn-nbctl create Sample_Collector id=1 name=c1 probability=65535 
set_id=100)
 check_row_count nb:Sample_Collector 1
 
-ovn-nbctl create Sampling_App type="acl-new" id="42"
-ovn-nbctl create Sampling_App type="acl-est" id="43"
+check_uuid ovn-nbctl create Sampling_App type="acl-new" id="42"
+check_uuid ovn-nbctl create Sampling_App type="acl-est" id="43"
 check_row_count nb:Sampling_App 2
 
 dnl Create two tiers of ACLs.
-ovn-nbctl                                                                     \
+check_uuid ovn-nbctl                                                          \
     -- --id=@sample_1_new create Sample collector="$collector1" metadata=1001 \
     -- --id=@sample_1_est create Sample collector="$collector1" metadata=1002 \
     -- --tier=0 --sample-new=@sample_1_new --sample-est=@sample_1_est         \
        acl-add ls from-lport 1 "inport == \"vm1\" && udp.dst == 1000"         \
        pass
 
-ovn-nbctl                                                                     \
+check_uuid ovn-nbctl                                                          \
     -- --id=@sample_2_new create Sample collector="$collector1" metadata=2001 \
     -- --id=@sample_2_est create Sample collector="$collector1" metadata=2002 \
     -- --tier=1 --sample-new=@sample_2_new --sample-est=@sample_2_est         \
@@ -13470,13 +13469,13 @@ ADD_VETH(vm2, vm2, br-int, "42.42.42.3/24", 
"00:00:00:00:00:02", "42.42.42.1")
 collector1=$(ovn-nbctl create Sample_Collector id=1 name=c1 probability=65535 
set_id=100)
 check_row_count nb:Sample_Collector 1
 
-ovn-nbctl create Sampling_App type="acl-new" id="42"
-ovn-nbctl create Sampling_App type="acl-est" id="43"
+check_uuid ovn-nbctl create Sampling_App type="acl-new" id="42"
+check_uuid ovn-nbctl create Sampling_App type="acl-est" id="43"
 check_row_count nb:Sampling_App 2
 
 dnl Create two tiers of ACLs.
 dnl The first ACL is an ingress "pass" ACL at tier 0.
-ovn-nbctl                                                                     \
+check_uuid ovn-nbctl                                                          \
     -- --id=@sample_1_new create Sample collector="$collector1" metadata=1001 \
     -- --id=@sample_1_est create Sample collector="$collector1" metadata=1002 \
     -- --tier=0 --sample-new=@sample_1_new --sample-est=@sample_1_est         \
@@ -13601,14 +13600,14 @@ collector1=$(ovn-nbctl create Sample_Collector id=1 
name=c1 probability=65535 se
 collector2=$(ovn-nbctl create Sample_Collector id=2 name=c2 probability=65535 
set_id=200)
 check_row_count nb:Sample_Collector 2
 
-ovn-nbctl create Sampling_App type="acl-new" id="42"
+check_uuid ovn-nbctl create Sampling_App type="acl-new" id="42"
 check_row_count nb:Sampling_App 1
 
 dnl Create three ACLs:
 dnl - one from-lport, stateful, allowing all traffic
 dnl - one to-lport, dropping all traffic to 1.1.1.1 (single collector)
 dnl - one to-lport, dropping all traffic to 1.1.1.2 (two collectors)
-ovn-nbctl                                                                      
    \
+check_uuid ovn-nbctl                                                           
    \
   -- --id=@sample1 create Sample collector="$collector1" metadata=1001         
    \
   -- --id=@sample2 create Sample collector="$collector1" metadata=1002         
    \
   -- --id=@sample3 create Sample collector="$collector1 $collector2" 
metadata=1003 \
@@ -14302,7 +14301,7 @@ ADD_NAMESPACES(server)
 ADD_VETH(s1, server, br-ext, "2001:1db8:3333::2/64", "f0:00:00:01:02:05", \
          "2001:1db8:3333::1", "nodad")
 
-ovn-nbctl create Logical_Router name=R1 options:chassis=hv1
+check_uuid ovn-nbctl create Logical_Router name=R1 options:chassis=hv1
 
 check ovn-nbctl ls-add sw0
 check ovn-nbctl ls-add public
-- 
2.47.1

_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to