* Update openstack-ansible-os_tempest from branch 'master'
to 05b8517bf83cb5fa4bbe6c660cf45d9b17eb0849
- Switch default external network name to 'physnet1'
Unify the default network naming with changes in the all-in-one
deployment and upstream neutron docs.
Change-Id: I3ceea9a1a5fab2f0ab91883f334fb924d89a5650
* Update openstack-ansible-os_tempest from branch 'master'
to 0bcb0f20d869999d2fce6f02c4a1cef8882575dd
- Add missed openstack_resources_image condition
In some jobs where we run tempest we do not have all required services
Good example of that are infra jobs where only keystone is deployed.
During conversion to usage of openstack_resources role, a condition for
glance images creation task was missed, that avoided image uploads
when glance is not present.
Change-Id: Ibcf16abab20eadf984ad1c8307ad14b43a889793
* Update openstack-ansible-os_tempest from branch 'master'
to 56d86e29bdd2e0bbc20d24345dbdc515142cd50e
- Merge "Adopt for usage openstack_resources role"
- Adopt for usage openstack_resources role
With efforts to create a resources in same, unified way,
we convert tempest role to use openstack_resources
for creating and managing openstack resources, like projects, flavors,
networks, images, etc. This should reduce maintenance costs
in case of futher collection updates and unify approach.
Depends-On: https://review.opendev.org/c/openstack/openstack-ansible-plugins/+/878794
Change-Id: I8d7609fac96935ed51e92ebf58515e8eb0c44d5c
* Update openstack-ansible-os_tempest from branch 'master'
to adcb83cff8a3c698da0b618fdd9d08246fbb6f27
- Fix condition of excludelist file removal
Due to typo in condition, we ended up in removing excludelist file right
after it being provisioned in certain circumstances.
Change-Id: I455f4e796fb8dcac29fe7947fc192baee9367187
* Update openstack-ansible-os_tempest from branch 'master'
to 843f1cabd70481618329f8de9f8b2ffb0d584aa4
- Drop deprecated project
panko was deprecated.
[0] https://review.opendev.org/c/openstack/governance/+/850005
Change-Id: I3ca2a489acac075f1b3a032163a27f42279f7733
* Update openstack-ansible-os_tempest from branch 'master'
to 00965ed13e7d5edb0946fb17f9b69e44980ce4bb
- Allow tempest_tempest_conf_overrides to be defined in many variables
Combine all variables starting with tempest_tempest_conf_overrides
to give a complete set of configuration to tempest when multiple
different test scenarios are enabled at the same time.
Change-Id: Iba5e061d1682d16c0516249f628f948a20580df8
* Update openstack-ansible-os_tempest from branch 'master'
to 8fc8f9021b89d4c6fcf81449c4c5aa4f1bdd48cb
- Fix linters
Current exmaple playbook is not named which causes linters to fail
Change-Id: I464f3ad7e43f120cbbac4e88f7f207a6739bcc69
* Update openstack-ansible-os_tempest from branch 'master'
to bd5923cf5e997ff95015e25fec993acb2aee170a
- Ensure test exclusion file is removed when there are no exclusions
If the role variable overrides are updated to remove a set of
existing tempest test exclusions, the previous exclusions file
remains on the disk even though it is not use, and not passed
to the tempest command. This is confusing and the file should
not be present unless there are active exclusions in place.
Change-Id: I5d69bf6258a00ade825cd3c746d1443dc1a35120
* Update openstack-ansible-os_tempest from branch 'master'
to 242203bafa0bac93c3824d5b716394bb163770e1
- Allow include/exclude lists to be defined in many variables
Previously the os_tempest role had a single variable for
defining the include and exclude lists in order to select the
tempest tests to run.
This works for simple scenarios, where a single service
is deployed and the tests for that service are enabled through
the necessary variables set in user_variables. This approach is
used in openstack-ansible CI / AIO.
More complicated scenarios such as magnum+barbican+octavia, would
create several user_variables files each with conflicting settings
for the test settings. It is possible in this scenario for there to
be no valid tempest tests to run and tempest to fail immediately.
This patch adds the possibility to have many variables defining
the include/exclude lists which have names using a common prefix.
Any variable names matching the prefix are gathered and combined
with the original role default to make extending the test lists
easy to do in an incremental/distibuted way in the ansible variables
instead of having to maintain a single point defining all necessary
tests.
Change-Id: Ie3a9a7be849171af042567ba8a152e5df5d2cb53
* Update openstack-ansible-os_tempest from branch 'master'
to 9ec945a0a3a8b494470f9d67930c994ba0ab2048
- Rename includelist/excludelist file path vars
These variable names collide with the best name prefix to use when
gathering many variable names into a combined include/exclude list.
Codesearch shows no use of these as overrides and the number of
cases when an override would be needed is small.
Change-Id: Ic64165e41d24ae8dc75061589de84fa57998f03d
* Update openstack-ansible-os_tempest from branch 'master'
to 47deba8c31d1a45a8719d0cb4dc1bbc39c549620
- Remove deprecated variables
More suitable replacement variables have been available for
several releases now so we can remove the deprecated vars.
Tripleo still defines these deprecated variables in several
places but seems to have made no attempt to move to the new
vars, and tripleo is itself now deprecated so we should move
ahead with removal of these vars from os_tempest.
Change-Id: I5a4a90bc963acc8b44caf7eb060b763e0f90a50f
* Update openstack-ansible-os_tempest from branch 'master'
to 687dcb30bf0a8ed60b41dcb1f9e45c16aee74af7
- Fix linters and metadata
With update of ansible-lint to version >=6.0.0 a lot of new
linters were added, that enabled by default. In order to comply
with linter rules we're applying changes to the role.
With that we also update metdata to reflect current state.
Change-Id: Ifcb6ebfa971e324e447509e50cc7294bddd6a4a0
* Update openstack-ansible-os_tempest from branch 'master'
to 6081d1daacf1c4e541d9b97402cb30fc25c625c9
- Merge "Remove tripleo CI jobs"
- Remove tripleo CI jobs
This role was shared with tripleo, but that project is now
deprecated so there is no need to carry the cross-project CI jobs
any more.
Change-Id: I73aec0f325708f42bbd0fd07d572fb833e8dfb2c
* Update openstack-ansible-os_tempest from branch 'master'
to 574f4acaf2bc41e8371e268a7880651d1c41216d
- Temporarily re-add redhat-8.yml to vars
Although tripleo deprecate master, we still use os_tempest in wallaby
and train lines, and due a design error, we rely on os_tempest master
branch instead of use the appropriate branch, and the removal of
redhat-8.yml file broken these jobs.
We will in the future, use the proper os_tempest branch on these jobs.
Change-Id: Ic2c547d730e900c883685050366e8e307869e6d1
* Update openstack-ansible-os_tempest from branch 'master'
to ec4d4a1e76716cb664fa98c914a92dba6951c371
- Merge "Build wheels only for source isntalls"
- Build wheels only for source isntalls
Ubuntu distro installation installs tempest plugins from source.
For this scenario we're ensuring that wheels won't be built as
repo container that should handle wheels build is simply absent in this
scenario.
For the rest usecases we're sticking with our new default to build
wheels.
Change-Id: Id643946edf4b4e21f8420d048ce8293fc40a61fc
* Update openstack-ansible-os_tempest from branch 'master'
to de5c8f9b264212b0f69bf22ce28ac40fe4c7062c
- Merge "Make tempest respect service_install_method"
- Make tempest respect service_install_method
For all services we do respect service_install_method vairable,
and define 'source' as the default options. At the moment tempest
attempts to follow source path even for distro deployments.
Change-Id: I5256943b5f175cbf46ae36361887dd055e0c52be
* Update openstack-ansible-os_tempest from branch 'master'
to 2441b55aacd45cdcb8bf844852b2e293db3d6340
- Clean up old rhel variable files
We don't support neither redhat 7 nor redhat 8 as of today, so we can
safely clean-up variable files for these distros.
Change-Id: I1225fd75d25c3a06353b46ddb61f989b73a757b6
* Update openstack-ansible-os_tempest from branch 'master'
to a871336aa0bfb8c80900e17a78c5770531a52f91
- Handle openstack.cloud.image from collection 1.x or 2.x
Temporary code handling both cases until support for the 2.x
collection can be merged.
Change-Id: I200bf8d09d489be1433c9a269cc6cd6a1378a6cc
* Update openstack-ansible-os_tempest from branch 'master'
to d8ddd9fcee7c1a25ceec8a8dc69369c446b21a9f
- Add support for whitebox-neutron-tempest-plugin
Signed-off-by: Chandan Kumar <chkumar@redhat.com>
Change-Id: Id7fb7f53c2b099ee6f671350cf3cc896be5bf758
* Update openstack-ansible-os_tempest from branch 'master'
to 62f7c7f89fd2b9d1a9bcd885481150fa9a6d887b
- Update master for stable/zed
Add file to the reno documentation build to show release notes for
stable/zed.
Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/zed.
Sem-Ver: feature
Change-Id: Ia808641ab5446707ec5296dab6198c260b1b4477
* Update openstack-ansible-os_tempest from branch 'master'
to c43fc6c9c8aeba25de25131a30e7c1cac617cce1
- Replace git-core with git for debian
With ansible-core 2.13 it tries to substitude package resolution in apt
module.
However git-core is used in Debian as transitional name, but ansible
tries to select it and provide version, which is not correct behaviour.
But since git-core is not really valid anyway, we just replace it
to workaround ansible's imperfectness.
Change-Id: I862e1ea4cef840d1903962181bfc8ec3c5a1e903
* Update openstack-ansible-os_tempest from branch 'master'
to 2a9d57f637c856fffe04fe52f976afc3ab3e334f
- Remove redundant vars line
This line was introduced by I0230f1a93d16243fc50df79b2d0780e744706c7b
and should already be covered by the distribution_major_version line
above.
Change-Id: Ibffaadb721796d6f657972633d19bdd36e411c52
* Update openstack-ansible-os_tempest from branch 'master'
to bb33438d517eceb4bf95da7b999475b0d7ed5681
- Fix dynamic service enablement for octavia and magnum
Dynamic service enablement wasn't fully configured for octavia and
mangum. This patch fixes it.
Change-Id: I187971f694842adc53142c575faa8d054fcd0f81
* Update openstack-ansible-os_tempest from branch 'master'
to f8c8a1ed6c59dcbf1fbe66d137d715e53af2ff51
- Merge "Use network UUID for floating_network_name"
- Use network UUID for floating_network_name
``floating_network_name`` works well with UUIDs as well.
This change doesn't make any difference when tempest creates public
network.
But when it's not, operator does not set ``tempest_public_net_name``
which leaves ``floating_network_name`` with a defeault value.
In order to fix ``floating_network_name`` behavior for both scenarios,
it should be set to the ``tempest_neutron_public_network_id``.
We do the same thing for ``public_network_id``.
Change-Id: I10e0c49b0d89b9530a523e9db79d5c7aa52359a4
* Update openstack-ansible-os_tempest from branch 'master'
to ef333a4e7eb555f0666a496e85266ff2a949c01e
- Merge "Make router creation independent from tempest_public_net_create"
- Make router creation independent from tempest_public_net_create
Currently when ``tempest_router_create`` is enabled, playbook requires
``tempest_public_net_create`` to be set.
It's an incorrect behavior. Router creation should only require public
network to exist. It does not matter if that public network was created
by tempest or operator.
Change-Id: Icaa223ed03837a68e9e84a89560cc2df10e3ed3e
* Update openstack-ansible-os_tempest from branch 'master'
to 514b0ca612a7c804dacc94b211fc11be002c7984
- Fix the behavior of defining fixed_network_name
Currently we define fixed_network_name only when
tempest_create_isolated_networks == False.
It makes things complicated because tempest_create_isolated_networks is
applicable only when dynamic credentials are used.
fixed_network_name should be also defined when dynamic credentials
are not used.
Basically the only scenario when fixed_network_name should not be
defined is using dynamic credentials together with
tempest_create_isolated_networks.
fixed_network_name should be defined in all other cases.
Change-Id: I547d70995de5afbdc84c9f4e86b2599ad4cb100b
* Update openstack-ansible-os_tempest from branch 'master'
to e1ca4b83bfe2301bcb5aedd044844ffce4850b6f
- Allow to define extra tempest plugins
Allow to define extra tempest plugins without overriding the whole
`tempest_plugins` list.
Change-Id: Ie00ffb42ceb49331c997f1a700a9423c12a32684
* Update openstack-ansible-os_tempest from branch 'master'
to 021f18905f30468c49e3652682403f12eeb04a6e
- Make _tempest_plugins a list of dicts.
For some reason we define a list inside a _tempest_plugins dict.
It should be simplified to the list of dicts.
Change-Id: I891f77e3e22c962615697504d0870e25017511d7
* Update openstack-ansible-os_tempest from branch 'master'
to 56c07080a78948c9790532c14c16957d98dee2fb
- Check return value for router create
The newest openstacksdk is set to rename some of the field names of
return values. This also affects the openstack.cloud collection. This
patch checks for both field names to make sure the os_tempest role
doesn't break when the collections release.
Change-Id: I4b30650a6c78e76982e22746933be7c132490a43
* Update openstack-ansible-os_tempest from branch 'master'
to 18f2c885da785dd00380ebfb8407702c942c6731
- Switch sphinx language to en
With sphinx release of 5.0.0, they changed default for language variable
to 'en' from None. With that current None valuable is not valid and should
not be used.
Change-Id: If3d84c85f5b439989c2fc7dec0b51068c6fe505a
* Update openstack-ansible-os_tempest from branch 'master'
to 3404d6cef9d7ef12abac4cad66bc9479e6820dc0
- Update default endpoint type to "internal"
internalURL is not a valid value for heat plugin, which makes workspace
creation to silenly fail. To avoid that we change default to just
`internal`, that should be supported by all plugins.
Change-Id: I86eef4f4a5cbcd7825488293bb8eaa9c7b9be5f1
* Update openstack-ansible-os_tempest from branch 'master'
to b39b6ba98727909a865ca25898c481a6c415edf9
- Merge "Improve domain support"
- Improve domain support
Allow to set domain for admin authentication and dynamically provisioned
accounts.
Currently tempest admin user has to reside in the same domain as
dynamically provisioned accounts.
Change-Id: I1d5aa1f32bae42e2eeeed37588f6ca564563e57a
* Update openstack-ansible-os_tempest from branch 'master'
to c3a2a979744a617b04e384846a6a2b016784e19d
- Merge "Fix hardcoded instance_type in [heat_plugin] section"
- Fix hardcoded instance_type in [heat_plugin] section
This variable should not be hardcoded.
Setting it to tempest_nova_flavor_id_1 should be a reasonable default.
Change-Id: I11242e55a6925781249afe30f395d16dbeff1c9d
* Update openstack-ansible-os_tempest from branch 'master'
to 1907e17a164aec89915cb3a7f5901aff09f2b7ec
- Merge "Do not store unnecessary sections in tempest.conf"
- Do not store unnecessary sections in tempest.conf
tempest.conf should store configuration only for services installed
in the current environment.
Additionally, I removed empty sections and improved their ordering.
Now service sections are placed at the end of the file.
Change-Id: I43c97758b6db2e5e134d8f54e0911ade3ced8fdf
* Update openstack-ansible-os_tempest from branch 'master'
to 42cea5e6b4c386cba71aa30b1610ba60657c83c7
- Merge "Remove unused variables"
- Remove unused variables
Few variables defined in defaults/main.yml are not used anywhere.
We should remove them.
Change-Id: I969ba3f83c053ec22ec02ed58a97b71a3f9686b3
* Update openstack-ansible-os_tempest from branch 'master'
to 9e49925f3d5ce449fbaad5125d44d6141df8180c
- Merge "Add support for both Credential Provider Mechanisms"
- Add support for both Credential Provider Mechanisms
Tempest currently has two different internal methods for providing
authentication to tests: dynamic credentials and pre-provisioned credentials.
Depending on which one is in use the configuration of Tempest is slightly
different.
We should provide a support for both of them.
https: //docs.openstack.org/tempest/latest/configuration.html#credential-provider-mechanisms
Change-Id: I26d69caa3f96a530bc0a4a21365404b1a84e489a
* Update openstack-ansible-os_tempest from branch 'master'
to 88c56967e9ed94685051c14ed30c64d4d8bb4e4e
- Merge "Fix hardcoded flavor_ref and flavor_ref_alt"
- Fix hardcoded flavor_ref and flavor_ref_alt
Values for flavor_ref and flavor_ref_alt should be taken from tempest_flavors
Depends-On: https://review.opendev.org/c/openstack/openstack-ansible-os_tempest/+/803477
Change-Id: I96639f606a6469e4bb0658419546f1ebc6576983
* Update openstack-ansible-os_tempest from branch 'master'
to 601db553f8112f6b52cf83e05f1fa935aa6491f6
- Merge "Allow to create only specific tempest resources."
- Allow to create only specific tempest resources.
In most cases, many of tempest resources are not needed.
From the other hand, some of our contributors still need them so we
can't just drop this functionality from this role.
The best solution I see is to add more flexibility and let users
choose which resources should be created by tempest role.
- public network:
new variable: bool tempest_public_net_create (default: true)
if false: require tempest_neutron_public_network_id to be set
if true: require all other tempest_public_net_* variables to be set
explanation: it'd be useful to choose if user wants to use already
existing public net or create a new one/
- private network:
new variable: bool tempest_private_net_create (default: false)
if true: require all tempest_private_* variables to be set
explanation: by default tempest has use_dynamic_credentials &
create_isolated_networks enabled, so it spawns an usable network,
subnet, and router when needed for each project it creates, so in
most cases it doesn't make sense to create special 'private' net.
- router:
new variable: bool tempest_router_create (default: false)
if true: both tempest_public_net_create and
tempest_private_net_create should be enabled
explanation: same case as for private network
- image:
new variable: bool tempest_images_create (default: true)
if false: require tempest_glance_image_id_1,
tempest_glance_image_id_2 to be set
explanation: tempest needs public images, so it'd be useful to just
use already existing ones
- flavor:
new variable: bool tempest_flavors_create (default: true)
if false: require tempest_nova_flavor_id_1, tempest_nova_flavor_id_2
to be set
explanation: tempest needs public flavors, so it'd be useful to just
use already existing ones
- projects:
new variable: bool tempest_projects_create (default:
"{{ tempest_public_net_create or tempest_private_net_create or
tempest_public_router_create }}")
explanation: by default tempest has use_dynamic_credentials &
create_isolated_networks enabled, so we don't need to create any
'static' projects, but network resources spawned by tempest
playbook belong to this project, so it should exist if any of
these resources are going to be created
I don't see any reason why users and tempest role should be created
so i dropped this functionality.
Depends-On: https://review.opendev.org/c/openstack/openstack-ansible/+/825166
Change-Id: Icb46f5cb9e2dda6511cc49e30587f541aa7e399f
* Update openstack-ansible-os_tempest from branch 'master'
to 4ae36d5828fd9071ece42072c90bd6424a1a1d4e
- Merge "do not include [*-feature-enabled] sections in tempest.conf"
- do not include [*-feature-enabled] sections in tempest.conf
We should not include [*-feature-enabled] sections in tempest.conf and use
``tempest_tempest_conf_overrides`` for these customizations instead.
There is no way we can keep feature list updated all the time and cover all
possible features in defaults/main.yml.
That's why I think we shouldn't cover them here at all.
If we need these customizations for testing purposed(tested it and I think we
don't), we should define them using ``tempest_tempest_conf_overrides`` only for
these tests.
Change-Id: If7d7ca5ae76cb3cb24f95fb9608ce3e1182d5e5a
Depends-On: https://review.opendev.org/c/openstack/openstack-ansible/+/825166
* Update openstack-ansible-os_tempest from branch 'master'
to 38cdf8b2cc3a018539621a49fa89f322071096f6
- Merge "Remove tripleo-ci-centos-7-standalone-os-tempest-train"
- Remove tripleo-ci-centos-7-standalone-os-tempest-train
This job is no longer used in tripleo CI.
Signed-off-by: Amol Kahat <amolkahat@gmail.com>
Change-Id: Id812446cdbb95c3bd3cfcadc7e7deec12386f096
* Update openstack-ansible-os_tempest from branch 'master'
to fd2e6523678c175e0ad28e4ba3387a8335e95538
- Merge "Rename [orchestration] section to [heat_plugin] in tempest.conf"
- Rename [orchestration] section to [heat_plugin] in tempest.conf
heat-tempest-plugin uses the [heat_plugin] section in tempest.conf
https: //opendev.org/openstack/heat-tempest-plugin
Change-Id: I3f50443b94a5c0e1ebcc566cd268af58561c5e03
* Update openstack-ansible-os_tempest from branch 'master'
to 169e8c1452c679144b05c37932e39c68683118db
- Merge "Implement variable: tempest_endpoint_type"
- Implement variable: tempest_endpoint_type
``tempest_endpoint_type`` variable has been implemented to avoid having endpoint type hardcoded in tempest.conf
Change-Id: Id218dcdfa788c184074d15519ac170d938290bd4
* Update openstack-ansible-os_tempest from branch 'master'
to fb1deb0e085fd88ec43041022c9a85fad2b56148
- Merge "Do not redefine variables with their default values in tempest.conf"
- Do not redefine variables with their default values in tempest.conf
We should keep tempest.conf as simple as it is possible.
These variables do not need to be defined as we point to tempest's default values anyway.
https: //docs.openstack.org/tempest/latest/_static/tempest.conf.sample
Change-Id: Id83775ff91e53dac134eecc789002431659e7d66
* Update openstack-ansible-os_tempest from branch 'master'
to 395d70f0867a78b67e51a7a8f3b3adb59dbed354
- Revert "cleanup setup.py config"
This reverts commit 6c976e61a963f1dbf2f4f273eab92e4c107a9da1.
Reason for revert:
Removal of setup.py caused problems with installation in tripleo-quickstart:
2022-03-31 16:20:19.128604 | primary | ERROR: openstack-ansible-os_tempest from file:///home/zuul/src/opendev.org//openstack/openstack-ansible-os_tempest/#egg=openstack-ansible-os_tempest (from -r quickstart-extras-requirements.txt (line 5)) does not appear to be a Python project: neither 'setup.py' nor 'pyproject.toml' found.
Disable setuptools auto discovery
Jobs are broken due to a release of setuptools 61.0 introducing
non-backwards compatible breaking changes [1]
Setting py_modules to an empty string here will disable autodiscovery
and should permit jobs to run as before.
[1] https://github.com/pypa/setuptools/issues/3197
Signed-off-by: Neil Hanlon <neil@shrug.pw>
Change-Id: I8ee5fa36a6b0cbce2d1811d9f40202fd083e4767
* Update openstack-ansible-os_tempest from branch 'master'
to 2402146bf778cbd7e140958294e91348c94b5ec3
- Merge "Deprecate unnecessary variables"
- Deprecate unnecessary variables
It is really unlikely to change these variables:
``tempest_network_tenant_network_cidr``, ``tempest_network_tenant_network_mask_bits``
and ``tempest_fatal_deprecations``
To keep tempest role as simple as it is possible, we should deprecate them.
They still can be changed using ``tempest_tempest_conf_overrides``.
Change-Id: Ia95f10c3548a5773c286e7d7075b71861fcef28b
* Update openstack-ansible-os_tempest from branch 'master'
to c94c802b2d1d33681efa3a7305632f26d58b2f72
- Add the glance-tempest-plugin
Adding the glance-tempest-plugin to be used to test in os_glance
role.
Change-Id: Icdb9b34e8b85712824bb53466c536aba6d5ccd86