Charm ovn-chassis used 'magpie' as a principal charm, but magpie
doesn't have 'noble' release. Switching to 'ubuntu' is an easy
way to unblock noble functional tests.
Signed-off-by: Martin Kalcok <martin.kalcok@canonical.com>
If the test uses bionic source image the charm has not be able
to determine ubuntu_release which it cant always do. This
causes breakage when the image is bionic because it has to apply
ussuri uca for retrofit to work.
Some projects will return specific failed code when up because of
templating in URL. In some other case, due to the nature of the test,
the service will never go up but be present in keystone. Allow the
caller to override which service returns a specific code.
Signed-off-by: Guillaume Boutry <guillaume.boutry@canonical.com>
Tempests can be used on deployments without nova-compute, testing only
control plane APIs. Fallback to a value when no nova-compute units is
found.
Signed-off-by: Guillaume Boutry <guillaume.boutry@canonical.com>
This adds basic LXD support that allows adding second NIC to
instances hosting networking charms as well as populating said
charms configuration with the second NIC MAC address.
Signed-off-by: Frode Nordahl <fnordahl@ubuntu.com>
The `[image]` section and `http_image` configuration key is
optional, only populate it if the caller has populated the
`TEST_SWIFT_IP` environment variable.
Signed-off-by: Frode Nordahl <fnordahl@ubuntu.com>
At present this value is hard coded, which may cause test failures
on deployment with different number of compute nodes.
Signed-off-by: Frode Nordahl <fnordahl@ubuntu.com>
Perform repetitive task in loop on input data rather than
repeating the same call three times in the code.
Signed-off-by: Frode Nordahl <fnordahl@ubuntu.com>
magnum-tempest-plugin since commit[0] is using ast.literal_eval() to
parse the value set in [magnum].labels, so the formatting needs to be a
Python dict.
This is an example of how the string needs to look like to make the
parser happy:
>>> import ast
>>> ast.literal_eval('{"a": "1:1"}')
{'a': '1:1'}
[0] 2fe075ae78 (diff-8e9d4d1beb73d502d61e14564c76d54acf855bf8)
Fixes the formatting of the labels configuration key, error raised with
the current formatting:
Traceback (most recent call last):
File "/mnt/git/charmed-openstack-tester/.tox/func-target/lib/python3.8/site-packages/magnum_tempest_plugin/tests/api/base.py", line 39, in setUpClass
config.Config.setUp()
File "/mnt/git/charmed-openstack-tester/.tox/func-target/lib/python3.8/site-packages/magnum_tempest_plugin/common/config.py", line 187, in setUp
cls.set_labels(config)
File "/mnt/git/charmed-openstack-tester/.tox/func-target/lib/python3.8/site-packages/magnum_tempest_plugin/common/config.py", line 162, in set_labels
cls.labels = ast.literal_eval(CONF.magnum.labels)
File "/usr/lib/python3.8/ast.py", line 59, in literal_eval
node_or_string = parse(node_or_string, mode='eval')
File "/usr/lib/python3.8/ast.py", line 47, in parse
return compile(source, filename, mode, flags,
File "<unknown>", line 1
container_infra_prefix:10.245.164.190:5000
^
SyntaxError: invalid syntax
In order to ensure that an object that contains other objects that are
called (e.g. the VolumeManager object on the Cinder client object), the
ObjectRetrierWraps class needs to more agressively wrap non builtin
classes.