Files
openstack-ansible-os_tempest/defaults/main.yml
Dmitriy Rabotyagov 1900f0ff6b Deprecate congress and lxd tempest plugins
Congress is no longer maintained and no reason to carry on it's
tempest testing.

LXD driver is also not supported by nova and project has been deprecated
back in Train.

Tempest tests for neutron vpnaas and bgpvpn were moved to neutron tempest
plugin with [1] and [2]

[1] 4077093c10
[2] 44866dadba

Change-Id: I161167b995a4cd3ee532719fa5fcf1f1a6cacb73
2022-01-24 16:08:46 +00:00

349 lines
16 KiB
YAML

---
# Copyright 2014, Rackspace US, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
## Verbosity Options
debug: False
stestr_executable: "{{ _stestr_executable | default('stestr') }}"
# Install openstack tempest
# set the tempest_install_method to source or distro
# on choosing source it will install from git or venv
# on choosing distro it will install based on distribution
tempest_install_method: "source"
tempest_venv_python_executable: "{{ openstack_venv_python_executable | default(_tempest_venv_python_executable) | default('python3') }}"
tempest_install_pip_executable: "{{ (tempest_venv_python_executable == 'python2') | ternary('pip', 'pip3') }}"
# Set the package install state for distribution and pip packages
# # Options are 'present' and 'latest'
tempest_package_state: "latest"
tempest_pip_package_state: "latest"
# Set the host which will execute the shade modules
# for the service setup. The host must already have
# clouds.yaml properly configured.
tempest_service_setup_host: "{{ openstack_service_setup_host | default('localhost') }}"
tempest_service_setup_host_python_interpreter: "{{ openstack_service_setup_host_python_interpreter | default((tempest_service_setup_host == 'localhost') | ternary(ansible_playbook_python, ansible_facts['python']['executable'])) }}"
# Toggle whether tempest actually executes
tempest_run: no
# Toggle whether tempest cleanup executes prior and after regular tempest run
tempest_cleanup: no
# if tempest_cleanup_dry_run is set to true, tempest cleanup will log all found
# leftover resources to a dry_run.json file, none resources will be deleted
#tempest_cleanup_dry_run: no
# Toggle whether default resources are implemented
tempest_default_role_resources: yes
# Define 0 (serial) or more to use a non default concurrency
#tempest_run_concurrency:
# Define the worker file to be used by tempest
# This worker file is parsed to stestr to manually schedule tempest tests
# tempest_test_worker_file_path:
# We comment `tempest_git_repo` so that we do not attempt to build the wheel from this repo/branch.
# Instead, we want tempest to get built from the stable release defined in global requirements.
#tempest_git_repo: https://opendev.org/openstack/tempest
tempest_git_install_branch: master
tempest_upper_constraints_url: "{{ requirements_git_url | default('https://releases.openstack.org/constraints/upper/' ~ requirements_git_install_branch | default('master')) }}"
tempest_git_constraints:
- "--constraint {{ tempest_upper_constraints_url }}"
tempest_pip_install_args: "{{ pip_install_options | default('') }}"
# Name of the virtual env to deploy into
tempest_venv_tag: "{{ venv_tag | default('untagged') }}"
tempest_venv_bin: "/openstack/venvs/tempest-{{ tempest_venv_tag }}/bin"
# The location where the tempest logs will be placed
tempest_log_dir: "/var/log/tempest"
## Tempest Plugins
# By default, the following tempest plugins are installed.
# Override ``tempest_plugins`` variable with your own plugins, depending
# on your installation.
# The structure of each item of the list is the following:
# - name: designate-tempest-plugin #name of the plugin
# repo: https://opendev.org/openstack/designate-tempest-plugin #for installing the plugin from sources
# branch: master #for installing the plugin from sources
# - name: ironic-tempest-plugin
# package: ironic #for installing the plugin from packages
tempest_plugins: "{{ _tempest_plugins.values() | sum(start=[]) | selectattr('install', 'equalto', true) | list }}"
# tempest_workspace where tempest can be runned
tempest_workspace: "{{ ansible_facts['env']['HOME'] }}/workspace"
# The location where the test include/exclude lists will be placed
tempest_test_includelist_file_path: "{{ tempest_workspace }}/etc/tempest_includelist.txt"
tempest_test_excludelist_file_path: "{{ tempest_workspace }}/etc/tempest_excludelist.txt"
# Tests to execute:
# This sets up a list of tests to execute based on what's deployed in the environment.
# The list gets added to the includelist which tempest executes.
# Defaults to tempest_test_whitelist for backwards compatibility and migration purposes.
tempest_test_includelist: "{{ tempest_test_whitelist | default(tempest_test_default_includelist) }}"
tempest_test_default_includelist:
- "smoke"
- "{{ (tempest_service_available_ceilometer | bool) | ternary('tempest.api.telemetry', '') }}"
- "{{ (tempest_service_available_heat | bool) | ternary('tempest.api.orchestration.stacks.test_non_empty_stack', '') }}"
# TODO(arxcruz) Right now, we have the tempest_test_whitelist parsed as -e
# argument in ansible in several of our jobs, so it is right now hard to get
# rid of all of it in all the places. Once we implement the include list in the
# openstack-tempest-skiplist side, we can remove it
# Extra test to be executed
tempest_test_extra_test: []
# Tests being skipped by os_tempest
# Example:
# tempest_test_excludelist:
# - test: tempest.scenario.test.minimum_basic
# reason: This test is failing
# lp: 'https://bugs.launchpad.net/openstack-ansible/+bug/123456'
# bz: 'https://bugzilla.redhat.com/show_bug.cgi?id=123456'
# OR
# tempest_test_excludelist:
# - 'tempest.scenario.test.minimum_basic'
# Defaults to tempest_test_blacklist for backwards compatibility and migration purposes.
tempest_test_excludelist: "{{ tempest_test_blacklist | default([]) }}"
# Toggle fatal deprecations
tempest_fatal_deprecations: False
# Private network configuration
# Currently supports 2 types
# vlan - will need to make sure your seg id and subnet cidr are correct
# vxlan - default, can change subnet cidr and seg id
# This needs to coincide with tempest_network_tenant_network_cidr and
# tempest_network_tenant_network_mask_bits below
tempest_private_net_name: "private"
tempest_private_subnet_name: "private-subnet"
tempest_private_subnet_cidr: "192.168.74.0/28"
tempest_private_net_provider_type: "vxlan"
tempest_private_net_seg_id:
# If you choose vlan as private network provider type, you must set a physical
# name for it
# tempest_private_net_physical_name: "private"
# Public network configuration
# Currently supports 2 types
# Flat - default
# Vlan - make sure you override seg id, cidr, provider and physical
tempest_public_net_name: "public"
tempest_public_subnet_name: "public-subnet"
tempest_public_subnet_cidr: "10.1.13.0/24"
# Neutron default gateway to first ip of subnet, usually .1
# tempest_public_subnet_gateway_ip:
tempest_public_net_provider_type: "flat"
# TODO(chkumar246):
# The use of _type is to provide backwards compatibility for
# overrides in S and can be removed in T.
tempest_public_net_physical_name: "{{ tempest_public_net_physical_type | default('flat') }}"
tempest_public_net_seg_id: ""
tempest_public_router_external: "True"
# Example allocation range:
# tempest_public_subnet_allocation_pools: "10.1.13.150-10.1.13.200"
tempest_public_subnet_allocation_pools: ""
tempest_compute_ssh_user: cirros
tempest_compute_image_ssh_user: cirros
tempest_compute_run_ssh: True
tempest_compute_console_output_enabled: True
tempest_compute_resize_enabled: True
tempest_compute_snapshot_enabled: True
tempest_compute_change_password: False
tempest_network_tenant_network_cidr: "192.168.74.0/24"
tempest_network_tenant_network_mask_bits: 28
tempest_network_ping_gateway: False
tempest_dashboard_url: "https://{{ external_lb_vip_address | default('127.0.0.1') }}/"
# var for setting tempest_service_available_{sevice_name} vars
# Example:
# tempest_services:
# - cinder
# - aodh
# It will set tempest_service_available_aodh and
# tempest_service_available_cinder to true.
tempest_services: []
tempest_service_available_aodh: "{{ groups['aodh_all'] is defined and groups['aodh_all'] | length > 0 }}"
tempest_service_available_barbican: "{{ groups['barbican_all'] is defined and groups['barbican_all'] | length > 0 }}"
tempest_service_available_ceilometer: "{{ groups['ceilometer_all'] is defined and groups['ceilometer_all'] | length > 0 }}"
tempest_service_available_cinder: "{{ groups['cinder_all'] is defined and groups['cinder_all'] | length > 0 }}"
tempest_service_available_cloudkitty: "{{ groups['cloudkitty_all'] is defined and groups['cloudkitty_all'] | length > 0 }}"
tempest_service_available_designate: "{{ groups['designate_all'] is defined and groups['designate_all'] | length > 0 }}"
tempest_service_available_glance: "{{ groups['glance_all'] is defined and groups['glance_all'] | length > 0 }}"
tempest_service_available_gnocchi: "{{ groups['gnocchi_all'] is defined and groups['gnocchi_all'] | length > 0 }}"
tempest_service_available_heat: "{{ groups['heat_all'] is defined and groups['heat_all'] | length > 0 }}"
tempest_service_available_horizon: "{{ groups['horizon_all'] is defined and groups['horizon_all'] | length > 0 }}"
tempest_service_available_ironic: "{{ groups['ironic_all'] is defined and groups['ironic_all'] | length > 0 }}"
tempest_service_available_magnum: "{{ groups['magnum_all'] is defined and groups['magnum_all'] | length > 0 }}"
tempest_service_available_manila: "{{ groups['manila_all'] is defined and groups['manila_all'] | length > 0 }}"
tempest_service_available_mistral: "{{ groups['mistral_all'] is defined and groups['mistral_all'] | length > 0 }}"
tempest_service_available_murano: "{{ groups['murano_all'] is defined and groups['murano_all'] | length > 0 }}"
tempest_service_available_neutron: "{{ groups['neutron_all'] is defined and groups['neutron_all'] | length > 0 }}"
tempest_service_available_neutron_bgpvpn: "{{ (groups['neutron_all'] is defined) and (groups['neutron_all'] | length > 0) and ('bgpvpn' in neutron_plugin_base | default([])) }}"
tempest_service_available_neutron_vpnaas: "{{ (groups['neutron_all'] is defined) and (groups['neutron_all'] | length > 0) and ('vpnaas' in neutron_plugin_base | default([])) }}"
tempest_service_available_nova: "{{ groups['nova_all'] is defined and groups['nova_all'] | length > 0 }}"
tempest_service_available_novajoin: False
tempest_service_available_octavia: "{{ groups['octavia_all'] is defined and groups['octavia_all'] | length > 0 }}"
tempest_service_available_panko: "{{ groups['panko_all'] is defined and groups['panko_all'] | length > 0 }}"
tempest_service_available_sahara: "{{ groups['sahara_all'] is defined and groups['sahara_all'] | length > 0 }}"
tempest_service_available_senlin: "{{ groups['senlin_all'] is defined and groups['senlin_all'] | length > 0 }}"
tempest_service_available_swift: "{{ (groups['swift_all'] is defined and groups['swift_all'] | length > 0) or (groups['ceph-rgw'] is defined and groups['ceph-rgw'] | length > 0) or (ceph_rgws is defined and ceph_rgws | length > 0) }}"
tempest_service_available_trove: "{{ groups['trove_all'] is defined and groups['trove_all'] | length > 0 }}"
tempest_service_available_whitebox: False
tempest_service_available_zaqar: "{{ groups['zaqar_all'] is defined and groups['zaqar_all'] | length > 0 }}"
tempest_service_available_zun: "{{ groups['zun_all'] is defined and groups['zun_all'] | length > 0 }}"
tempest_image_api_v1_enabled: False
tempest_image_api_v2_enabled: True
tempest_swift_enabled: True
tempest_swift_container_sync: True
tempest_swift_object_versioning: True
tempest_swift_discoverable_apis:
- bulk
- object
- container_quotas
- container_sync
- slo
- tempurl
tempest_volume_backend_names: [ backend1, backend2 ]
tempest_volume_backup_enabled: False
tempest_volume_multi_backend_enabled: False
# Var for setting ssl verification
tempest_keystone_interface_insecure: "{{ (keystone_service_internaluri_insecure | default(false)) | bool }}"
tempest_main_group: tempest_all
tempest_pip_packages:
- "{{ (tempest_git_repo is defined) | ternary('git+' ~ (tempest_git_repo | default('https://opendev.org/openstack/tempest.git')) ~ '@' ~ tempest_git_install_branch ~ '#egg=tempest', 'tempest') }}"
- cmd2
- ddt
- junitxml
- lxml
- nose
- python-cinderclient
- python-glanceclient
- python-heatclient
- python-keystoneclient
- python-manilaclient
- python-memcached
- python-neutronclient
- python-novaclient
- python-openstackclient
- python-senlinclient
- python-saharaclient
- python-subunit
- python-swiftclient
- python-troveclient
- testscenarios
- os-testr
# The list of images for tempest to download for the current architecture, as defined
# in this role vars/main.yml file
# To override this list, use a list of the form
# tempest_images:
# - url: ... where to download from (required)
# checksum: ... checksum to validate downloaded file, format: <algorithm>:<checksum> (optional)
# format: ... format to use when uploading to glance (required)
# name: ... name to use when uploading to glance (optional)
# properties: a dict of custom properties to attach to the image in glance (optional)
# <property>: <value>
tempest_images: "{{ tempest_images_map[ansible_facts['architecture']] }}"
# The location where images are downloaded to
tempest_image_dir: "{{ lookup('env', 'HOME') }}/tempest-images"
tempest_enable_instance_password: True
tempest_flavors:
- name: tempest1
id: 201
ram: 256
disk: 1
vcpus: 1
- name: tempest2
id: 202
ram: 512
disk: 1
vcpus: 1
# The projects for tempest to use
tempest_projects:
- "demo"
- "alt_demo"
# The users for tempest to use
tempest_users:
- name: "demo"
- name: "alt_demo"
# The keystone roles for tempest to use
tempest_roles: []
## Tunable overrides
tempest_tempest_conf_overrides: {}
## The name of cloud from clouds.yaml
tempest_cloud_name: "default"
## The name of domain from clouds.yaml
tempest_domain_name: "default"
## The name of interface from clouds.yaml
tempest_interface_name: "internal"
# python-tempestconf variables
# The tempest_use_tempestconf by default is set to false, set to true if you
# want to generate the tempest.conf file with this tool, instead of
# tempest.conf from the template
tempest_use_tempestconf: false
tempest_tempestconf_venv_tag: "{{ venv_tag | default('untagged') }}"
tempest_tempestconf_venv_bin: "/openstack/venvs/tempestconf-{{ tempest_tempestconf_venv_tag }}/bin"
# We comment out `tempest_tempestconf_git_repo` so that the repo_build role does not attempt to
# build the wheel from this repo/branch. Instead, we want python-tempestconf to get built
# from the stable release defined in global requirements.
# tempest_tempestconf_git_repo: https://opendev.org/openinfra/python-tempestconf
tempest_tempestconf_git_install_branch: master
tempest_tempestconf_git_constraints:
- "--constraint {{ tempest_upper_constraints_url }}"
tempest_tempestconf_pip_packages:
- "{{ (tempest_tempestconf_git_repo is defined) | ternary('git+' ~ (tempest_tempestconf_git_repo | default('https://opendev.org/openinfra/python-tempestconf')) ~ '@' ~ tempest_tempestconf_git_install_branch ~ '#egg=python_tempestconf', 'python_tempestconf') }}"
tempest_tempestconf_profile:
debug: true
create: true
os-cloud: "{{ tempest_cloud_name }}"
out: "{{ tempest_workspace }}/etc/tempest.conf"
network-id: "{{ tempest_neutron_public_network_id }}"
overrides: "{{ tempest_tempestconf_profile_overrides }}"
tempest_tempestconf_profile_extras: {}
tempest_tempestconf_profile_overrides: "{{ tempest_tempest_conf_overrides }}"
# Stackviz tarball url
stackviz_pip_install_args: "{{ pip_install_options | default('--isolated') }}"
stackviz_tarball: "https://tarballs.opendev.org/openstack/stackviz/dist/stackviz-latest.tar.gz"
stackviz_venv_tag: "{{ venv_tag | default('untagged') }}"
stackviz_venv_bin: "/openstack/venvs/stackviz-{{ stackviz_venv_tag }}/bin"
tempest_run_stackviz: true