Change the default image in the NDR tests

This patch changes the default reporitory (hub.docker.com) to quay.io,
in order to avoid the limitations implemented in the website, reducing
the download request.

This patch is also changing the default image used (Ubuntu 22.04) to
Ubuntu 20.04 because the package "quagga-bgpd" is present only in the
older version.

NOTE: it will be needed to upgrade these tests in order to use a newer
OS release; it will be probably needed to use FRR instead of Quagga.

This patch has the same approach as [1]

[1]https://review.opendev.org/c/openstack/neutron-tempest-plugin/+/935743

Related-Bug: #2089140
Change-Id: I3b314fc818606d60e2acd00d0e8284f740a687e0
diff --git a/neutron_tempest_plugin/neutron_dynamic_routing/scenario/base.py b/neutron_tempest_plugin/neutron_dynamic_routing/scenario/base.py
index c7023af..25b99d6 100644
--- a/neutron_tempest_plugin/neutron_dynamic_routing/scenario/base.py
+++ b/neutron_tempest_plugin/neutron_dynamic_routing/scenario/base.py
@@ -40,6 +40,7 @@
 CHECKTIME_INFO = 60
 CHECKTIME_INT = 1
 BRIDGE_TYPE = ctn_base.BRIDGE_TYPE_DOCKER
+BASE_NDR_IMAGE = 'quay.io/nf-core/ubuntu:20.04'
 
 
 def _setup_client_args(auth_provider):
diff --git a/neutron_tempest_plugin/neutron_dynamic_routing/scenario/basic/base.py b/neutron_tempest_plugin/neutron_dynamic_routing/scenario/basic/base.py
index dd170e7..cf1a58e 100644
--- a/neutron_tempest_plugin/neutron_dynamic_routing/scenario/basic/base.py
+++ b/neutron_tempest_plugin/neutron_dynamic_routing/scenario/basic/base.py
@@ -84,7 +84,7 @@
                                        router_id=cls.L_AS.router_id)
         cls.dr.set_addr_info(bridge='br-docker-basic', ipv4=cls.public_gw)
         # quagga container
-        cls.dockerimg = ctn_base.DockerImage()
+        cls.dockerimg = ctn_base.DockerImage(baseimage=base.BASE_NDR_IMAGE)
         cls.q_img = cls.dockerimg.create_quagga(check_exist=True)
         cls.images.append(cls.q_img)
         for i in range(cls.RAS_MAX):
diff --git a/neutron_tempest_plugin/neutron_dynamic_routing/scenario/basic/test_4byte_asn.py b/neutron_tempest_plugin/neutron_dynamic_routing/scenario/basic/test_4byte_asn.py
index f492ede..7ac17d0 100644
--- a/neutron_tempest_plugin/neutron_dynamic_routing/scenario/basic/test_4byte_asn.py
+++ b/neutron_tempest_plugin/neutron_dynamic_routing/scenario/basic/test_4byte_asn.py
@@ -91,7 +91,7 @@
                                        router_id=cls.L_AS.router_id)
         cls.dr.set_addr_info(bridge='br-docker-4byte-asn', ipv4=cls.public_gw)
         # quagga container
-        cls.dockerimg = ctn_base.DockerImage()
+        cls.dockerimg = ctn_base.DockerImage(baseimage=base.BASE_NDR_IMAGE)
         cls.q_img = cls.dockerimg.create_quagga(check_exist=True)
         cls.images.append(cls.q_img)
         for i in range(cls.RAS_MAX):
diff --git a/neutron_tempest_plugin/neutron_dynamic_routing/scenario/ipv4/test_ipv4.py b/neutron_tempest_plugin/neutron_dynamic_routing/scenario/ipv4/test_ipv4.py
index 158b7ad..ead3a84 100644
--- a/neutron_tempest_plugin/neutron_dynamic_routing/scenario/ipv4/test_ipv4.py
+++ b/neutron_tempest_plugin/neutron_dynamic_routing/scenario/ipv4/test_ipv4.py
@@ -91,7 +91,7 @@
                                        router_id=cls.L_AS.router_id)
         cls.dr.set_addr_info(bridge='br-docker-ipv4', ipv4=cls.public_gw)
         # quagga container
-        cls.dockerimg = ctn_base.DockerImage()
+        cls.dockerimg = ctn_base.DockerImage(baseimage=base.BASE_NDR_IMAGE)
         cls.q_img = cls.dockerimg.create_quagga(check_exist=True)
         cls.images.append(cls.q_img)
         for i in range(cls.RAS_MAX):
diff --git a/neutron_tempest_plugin/neutron_dynamic_routing/scenario/ipv6/test_ipv6.py b/neutron_tempest_plugin/neutron_dynamic_routing/scenario/ipv6/test_ipv6.py
index 937b38d..29ac079 100644
--- a/neutron_tempest_plugin/neutron_dynamic_routing/scenario/ipv6/test_ipv6.py
+++ b/neutron_tempest_plugin/neutron_dynamic_routing/scenario/ipv6/test_ipv6.py
@@ -91,7 +91,7 @@
                                        router_id=cls.L_AS.router_id)
         cls.dr.set_addr_info(bridge='br-docker-ipv6', ipv6=cls.public_gw)
         # quagga container
-        cls.dockerimg = ctn_base.DockerImage()
+        cls.dockerimg = ctn_base.DockerImage(baseimage=base.BASE_NDR_IMAGE)
         cls.q_img = cls.dockerimg.create_quagga(check_exist=True)
         cls.images.append(cls.q_img)
         for i in range(cls.RAS_MAX):