Octavia Tempest Plugin Configuration Options

Note

Not all of these options are used by the Octavia tempest tests.

DEFAULT

pause_teardown
Type:

boolean

Default:

False

Whether to pause a test in global teardown.

The best use case is investigating used resources of one test. A test can be run as follows:

$ stestr run –pdb TEST_ID

or

$ python -m testtools.run TEST_ID

resource_name_prefix
Type:

string

Default:

tempest

Define the prefix name for the resources created by tempest. Tempest cleanup CLI will use this config option to cleanup only the resources that match the prefix. Make sure this prefix does not match with the resource name you do not want Tempest cleanup CLI to delete.

auth

test_accounts_file
Type:

string

Default:

<None>

Path to the yaml file that contains the list of credentials to use for running tests. If used when running in parallel you have to make sure sufficient credentials are provided in the accounts file. For example if no tests with roles are being run it requires at least 2 * CONC distinct accounts configured in the test_accounts_file, with CONC == the number of concurrent test processes.

use_dynamic_credentials
Type:

boolean

Default:

True

Allows test cases to create/destroy projects and users. This option requires that OpenStack Identity API admin credentials are known. If false, isolated test cases and parallel execution, can still be achieved configuring a list of test accounts

tempest_roles
Type:

list

Default:

[]

Roles to assign to all users created by tempest

default_credentials_domain_name
Type:

string

Default:

Default

Default domain used when getting v3 credentials. This is the name keystone uses for v2 compatibility.

create_isolated_networks
Type:

boolean

Default:

True

If use_dynamic_credentials is set to True and Neutron is enabled Tempest will try to create a usable network, subnet, and router when needed for each project it creates. However in some neutron configurations, like with VLAN provider networks, this doesn’t work. So if set to False the isolated networks will not be created

admin_username
Type:

string

Default:

<None>

Username for an administrative user. This is needed for authenticating requests made by project isolation to create users and projects

admin_project_name
Type:

string

Default:

<None>

Project name to use for an administrative user. This is needed for authenticating requests made by project isolation to create users and projects

admin_password
Type:

string

Default:

<None>

Password to use for an administrative user. This is needed for authenticating requests made by project isolation to create users and projects

admin_domain_name
Type:

string

Default:

Default

Admin domain name for authentication (Keystone V3). The same domain applies to user and project if admin_user_domain_name and admin_project_domain_name are not specified

admin_user_domain_name
Type:

string

Default:

<None>

Domain name that contains the admin user (Keystone V3). May be different from admin_project_domain_name and admin_domain_name

admin_project_domain_name
Type:

string

Default:

<None>

Domain name that contains the project given by admin_project_name (Keystone V3). May be different from admin_user_domain_name and admin_domain_name

admin_system
Type:

string

Default:

<None>

The system scope on which an admin user has an admin role assignment, if any. Valid values are ‘all’ or None. This must be set to ‘all’ if using the [oslo_policy]/enforce_scope=true option for the identity service.

compute

image_ref
Type:

string

Default:

<None>

Valid primary image reference to be used in tests. This is a required option

image_ref_alt
Type:

string

Default:

<None>

Valid secondary image reference to be used in tests. This is a required option, but if only one image is available duplicate the value of image_ref above

certified_image_ref
Type:

string

Default:

<None>

Valid image reference to be used in image certificate validation tests when enabled. This image must also have the required img_signature_* properties set. Additional details available within the following Nova documentation: https://docs.openstack.org/nova/latest/user/certificate-validation.html

certified_image_trusted_certs
Type:

list

Default:

<None>

A list of trusted certificates to be used when the image certificate validation compute feature is enabled.

flavor_ref
Type:

string

Default:

1

Valid primary flavor to use in tests.

flavor_ref_alt
Type:

string

Default:

2

Valid secondary flavor to be used in tests.

build_interval
Type:

integer

Default:

1

Time in seconds between build status checks.

build_timeout
Type:

integer

Default:

300

Timeout in seconds to wait for an instance to build. Other services that do not define build_timeout will inherit this value.

ready_wait
Type:

integer

Default:

0

Additional wait time for clean state, when there is no OS-EXT-STS extension available

fixed_network_name
Type:

string

Default:

<None>

Name of the fixed network that is visible to all test projects. If multiple networks are available for a project, this is the network which will be used for creating servers if tempest does not create a network or a network is not specified elsewhere. It may be used for ssh validation only if floating IPs are disabled.

catalog_type
Type:

string

Default:

compute

Catalog type of the Compute service.

region
Type:

string

Default:

''

The compute region name to use. If empty, the value of identity.region is used instead. If no such region is found in the service catalog, the first found one is used.

endpoint_type
Type:

string

Default:

publicURL

Valid Values:

public, admin, internal, publicURL, adminURL, internalURL

The endpoint type to use for the compute service.

volume_device_name
Type:

string

Default:

vdb

Expected device name when a volume is attached to an instance. Not all hypervisors guarantee that they will respect the user defined device name, tests may fail if inappropriate device name is set.

shelved_offload_time
Type:

integer

Default:

0

Time in seconds before a shelved instance is eligible for removing from a host. -1 never offload, 0 offload when shelved. This configuration value should be same as nova.conf: DEFAULT.shelved_offload_time, and some tests will run for as long as the time.

min_compute_nodes
Type:

integer

Default:

1

The minimum number of compute nodes expected. This will be utilized by some multinode specific tests to ensure that requests match the expected size of the cluster you are testing with.

hypervisor_type
Type:

string

Default:

<None>

Hypervisor type of the test target on heterogeneous compute environment. The value can be ‘QEMU’, ‘xen’ or something.

min_microversion
Type:

string

Default:

<None>

Lower version of the test target microversion range. The format is ‘X.Y’, where ‘X’ and ‘Y’ are int values. Tempest selects tests based on the range between min_microversion and max_microversion. If both values are not specified, Tempest avoids tests which require a microversion. Valid values are string with format ‘X.Y’ or string ‘latest’

max_microversion
Type:

string

Default:

<None>

Upper version of the test target microversion range. The format is ‘X.Y’, where ‘X’ and ‘Y’ are int values. Tempest selects tests based on the range between min_microversion and max_microversion. If both values are not specified, Tempest avoids tests which require a microversion. Valid values are string with format ‘X.Y’ or string ‘latest’

compute_volume_common_az
Type:

string

Default:

<None>

AZ to be used for Cinder and Nova. Set this parameter when the cloud has nova.conf: cinder.cross_az_attach set to false. Which means volumes attached to an instance must be in the same availability zone in Cinder as the instance availability zone in Nova. Set the common availability zone in this config which will be used to boot an instance as well as creating a volume. NOTE: If that AZ is not in Cinder (or allow_availability_zone_fallback=False in cinder.conf), the volume create request will fail and the instance will fail the build request.

migration_source_host
Type:

string

Default:

<None>

Specify source host for live-migration, cold-migration and resize tests. If option is not set tests will use host automatically.

migration_dest_host
Type:

string

Default:

<None>

Specify destination host for live-migration and cold migration. If option is not set tests will use host automatically.

compute-feature-enabled

disk_config
Type:

boolean

Default:

True

If false, skip disk config tests

hostname_fqdn_sanitization
Type:

boolean

Default:

False

If false, skip fqdn instance sanitization tests. Nova started sanitizing the instance name by replacing the ‘.’ with ‘-’ to comply with fqdn hostname. Nova changed that in Wallaby cycle, if your cloud is older than wallaby then you can keep/make it False.

change_password
Type:

boolean

Default:

False

Does the test environment support changing the admin password?

console_output
Type:

boolean

Default:

True

Does the test environment support obtaining instance serial console output?

resize
Type:

boolean

Default:

False

Does the test environment support resizing? When you enable this feature, ‘flavor_ref_alt’ should be set and it should refer to a larger flavor than ‘flavor_ref’ one.

pause
Type:

boolean

Default:

True

Does the test environment support pausing?

shelve
Type:

boolean

Default:

True

Does the test environment support shelving/unshelving?

shelve_migrate
Type:

boolean

Default:

False

Does the test environment support cold migration of unshelved server?

suspend
Type:

boolean

Default:

True

Does the test environment support suspend/resume?

cold_migration
Type:

boolean

Default:

True

Does the test environment support cold migration?

live_migration
Type:

boolean

Default:

True

Does the test environment support live migration?

live_migrate_back_and_forth
Type:

boolean

Default:

False

Does the test environment support live migrating VM back and forth between different versions of nova-compute?

metadata_service
Type:

boolean

Default:

True

Does the test environment support metadata service? Ignored unless validation.run_validation=true.

block_migration_for_live_migration
Type:

boolean

Default:

False

Does the test environment use block devices for live migration

can_migrate_between_any_hosts
Type:

boolean

Default:

True

Does the test environment support migrating between any hosts? In environments with non-homogeneous compute nodes you can set this to False so that it will select destination host for migrating automatically

vnc_console
Type:

boolean

Default:

False

Enable VNC console. This configuration value should be same as nova.conf: vnc.enabled

spice_console
Type:

boolean

Default:

False

Enable Spice console. This configuration value should be same as nova.conf: spice.enabled

Warning

This option is deprecated for removal. Its value may be silently ignored in the future.

Reason:

This config option is not being used in Tempest, we can add it back when adding the test cases.

serial_console
Type:

boolean

Default:

False

Enable serial console. This configuration value should be the same as nova.conf: serial_console.enabled

rescue
Type:

boolean

Default:

True

Does the test environment support instance rescue mode?

stable_rescue
Type:

boolean

Default:

False

Does the test environment support stable device instance rescue mode?

enable_instance_password
Type:

boolean

Default:

True

Enables returning of the instance password by the relevant server API calls such as create, rebuild or rescue. This configuration value should be same as nova.conf: DEFAULT.enable_instance_password

interface_attach
Type:

boolean

Default:

True

Does the test environment support dynamic network interface attachment?

snapshot
Type:

boolean

Default:

True

Does the test environment support creating snapshot images of running instances?

personality
Type:

boolean

Default:

False

Does the test environment support server personality

attach_encrypted_volume
Type:

boolean

Default:

True

Does the test environment support attaching an encrypted volume to a running server instance? This may depend on the combination of compute_driver in nova and the volume_driver(s) in cinder.

config_drive
Type:

boolean

Default:

True

Enable special configuration drive with metadata.

scheduler_enabled_filters
Type:

list

Default:

['AvailabilityZoneFilter', 'ComputeFilter', 'ComputeCapabilitiesFilter', 'ImagePropertiesFilter', 'ServerGroupAntiAffinityFilter', 'ServerGroupAffinityFilter']

A list of enabled filters that Nova will accept as hints to the scheduler when creating a server. If the default value is overridden in nova.conf by the test environment (which means that a different set of filters is enabled than what is included in Nova by default), then this option must be configured to contain the same filters that Nova uses in the test environment. A special entry ‘all’ indicates all filters that are included with Nova are enabled. If using ‘all’, be sure to enable all filters in nova.conf, as tests can fail in unpredictable ways if Nova’s and Tempest’s enabled filters don’t match. Empty list indicates all filters are disabled. The full list of enabled filters is in nova.conf: filter_scheduler.enabled_filters.

Deprecated Variations

Group

Name

compute-feature-enabled

scheduler_available_filters

swap_volume
Type:

boolean

Default:

False

Does the test environment support in-place swapping of volumes attached to a server instance?

volume_backed_live_migration
Type:

boolean

Default:

False

Does the test environment support volume-backed live migration?

volume_multiattach
Type:

boolean

Default:

False

Does the test environment support attaching a volume to more than one instance? This depends on hypervisor and volume backend/type and compute API version 2.60.

xenapi_apis
Type:

boolean

Default:

False

Does the test environment support the XenAPI-specific APIs: os-agents, writeable server metadata and the resetNetwork server action? These were removed in Victoria alongside the XenAPI virt driver.

Warning

This option is deprecated for removal. Its value may be silently ignored in the future.

Reason:

On Nova side, XenAPI virt driver and the APIs that only worked with that driver have been removed and there’s nothing to test after Ussuri.

ide_bus
Type:

boolean

Default:

True

Does the test environment support attaching devices using an IDE bus to the instance?

unified_limits
Type:

boolean

Default:

False

Does the test environment support unified limits?

dashboard

dashboard_url
Type:

URI

Default:

http://localhost/

Where the dashboard can be found

disable_ssl_certificate_validation
Type:

boolean

Default:

False

Set to True if using self-signed SSL certificates.

debug

trace_requests
Type:

string

Default:

''

A regex to determine which requests should be traced.

This is a regex to match the caller for rest client requests to be able to selectively trace calls out of specific classes and methods. It largely exists for test development, and is not expected to be used in a real deploy of tempest. This will be matched against the discovered ClassName:method in the test environment.

Expected values for this field are:

  • ClassName:test_method_name - traces one test_method

  • ClassName:setUp(Class) - traces specific setup functions

  • ClassName:tearDown(Class) - traces specific teardown functions

  • ClassName:_run_cleanups - traces the cleanup functions

If nothing is specified, this feature is not enabled. To trace everything specify .* as the regex.

enforce_scope

nova
Type:

boolean

Default:

False

Does the compute service API policies enforce scope and new defaults? This configuration value should be enabled when nova.conf: [oslo_policy]. enforce_new_defaults and nova.conf: [oslo_policy]. enforce_scope options are enabled in nova conf.

neutron
Type:

boolean

Default:

False

Does the network service API policies enforce scope and new defaults? This configuration value should be enabled when neutron.conf: [oslo_policy]. enforce_new_defaults and neutron.conf: [oslo_policy]. enforce_scope options are enabled in neutron conf.

glance
Type:

boolean

Default:

False

Does the Image service API policies enforce scope and new defaults? This configuration value should be enabled when glance.conf: [oslo_policy]. enforce_new_defaults and glance.conf: [oslo_policy]. enforce_scope options are enabled in glance conf.

cinder
Type:

boolean

Default:

False

Does the Volume service API policies enforce scope and new defaults? This configuration value should be enabled when cinder.conf: [oslo_policy]. enforce_new_defaults and cinder.conf: [oslo_policy]. enforce_scope options are enabled in cinder conf.

keystone
Type:

boolean

Default:

False

Does the Identity service API policies enforce scope and new defaults? This configuration value should be enabled when keystone.conf: [oslo_policy]. enforce_new_defaults and keystone.conf: [oslo_policy]. enforce_scope options are enabled in keystone conf.

placement
Type:

boolean

Default:

False

Does the placement service API policies enforce scope and new defaults? This configuration value should be enabled when placement.conf: [oslo_policy]. enforce_new_defaults and nova.conf: [oslo_policy]. enforce_scope options are enabled in placement conf.

identity

catalog_type
Type:

string

Default:

identity

Catalog type of the Identity service.

disable_ssl_certificate_validation
Type:

boolean

Default:

False

Set to True if using self-signed SSL certificates.

ca_certificates_file
Type:

string

Default:

<None>

Specify a CA bundle file to use in verifying a TLS (https) server certificate.

uri
Type:

URI

Default:

<None>

Full URI of the OpenStack Identity API (Keystone), v2

uri_v3
Type:

URI

Default:

<None>

Full URI of the OpenStack Identity API (Keystone), v3

auth_version
Type:

string

Default:

v3

Identity API version to be used for authentication for API tests.

region
Type:

string

Default:

RegionOne

The identity region name to use. Also used as the other services’ region name unless they are set explicitly. If no such region is found in the service catalog, the first found one is used.

v2_admin_endpoint_type
Type:

string

Default:

adminURL

Valid Values:

public, admin, internal, publicURL, adminURL, internalURL

The admin endpoint type to use for OpenStack Identity (Keystone) API v2

v2_public_endpoint_type
Type:

string

Default:

publicURL

Valid Values:

public, admin, internal, publicURL, adminURL, internalURL

The public endpoint type to use for OpenStack Identity (Keystone) API v2

v3_endpoint_type
Type:

string

Default:

public

Valid Values:

public, admin, internal, publicURL, adminURL, internalURL

The endpoint type to use for OpenStack Identity (Keystone) API v3.

admin_role
Type:

string

Default:

admin

Role required to administrate keystone.

default_domain_id
Type:

string

Default:

default

ID of the default domain

admin_domain_scope
Type:

boolean

Default:

False

Whether keystone identity v3 policy required a domain scoped token to use admin APIs

user_lockout_failure_attempts
Type:

integer

Default:

2

The number of unsuccessful login attempts the user is allowed before having the account locked. This only takes effect when identity-feature-enabled.security_compliance is set to ‘True’. For more details, refer to keystone config options keystone.conf:security_compliance.lockout_failure_attempts. This feature is disabled by default in keystone.

user_lockout_duration
Type:

integer

Default:

5

The number of seconds a user account will remain locked. This only takes effect when identity-feature-enabled.security_compliance is set to ‘True’. For more details, refer to keystone config options keystone.conf:security_compliance.lockout_duration. Setting this option will have no effect unless you also set identity.user_lockout_failure_attempts.

user_unique_last_password_count
Type:

integer

Default:

2

The number of passwords for a user that must be unique before an old password can be reused. This only takes effect when identity-feature-enabled.security_compliance is set to ‘True’. This config option corresponds to keystone.conf: security_compliance.unique_last_password_count, whose default value is 0 meaning disabling this feature. NOTE: This config option value must be same as keystone.conf: security_compliance.unique_last_password_count otherwise test might fail

user_minimum_password_age
Type:

integer

Default:

0

The number of days that a password must be used before the user can change it. This only takes effect when identity-feature-enabled.security_compliance is set to ‘True’. For more details, refer to keystone config options keystone.conf:security_compliance.minimum_password_age.

identity-feature-enabled

trust
Type:

boolean

Default:

True

Does the identity service have delegation and impersonation enabled

api_v2
Type:

boolean

Default:

False

Is the v2 identity API enabled

Warning

This option is deprecated for removal. Its value may be silently ignored in the future.

Reason:

The identity v2.0 API was removed in the Queens release. Tests that exercise the v2.0 API will be removed from tempest in the v22.0.0 release. They are kept only to test stable branches.

api_v2_admin
Type:

boolean

Default:

True

Is the v2 identity admin API available? This setting only applies if api_v2 is set to True.

api_v3
Type:

boolean

Default:

True

Is the v3 identity API enabled

api_extensions
Type:

list

Default:

['all']

A list of enabled identity extensions with a special entry all which indicates every extension is enabled. Empty list indicates all extensions are disabled. To get the list of extensions run: ‘openstack extension list –identity’

domain_specific_drivers
Type:

boolean

Default:

False

Are domain specific drivers enabled? This configuration value should be same as [identity]->domain_specific_drivers_enabled in keystone.conf.

security_compliance
Type:

boolean

Default:

False

Does the environment have the security compliance settings enabled?

access_rules
Type:

boolean

Default:

True

Does the environment have access rules enabled?

Warning

This option is deprecated for removal. Its value may be silently ignored in the future.

Reason:

Access rules for application credentials is a default feature since Train

immutable_user_source
Type:

boolean

Default:

False

Set to True if the environment has a read-only user source. This will skip all tests that attempt to create, delete, or modify users. This should not be set to True if using dynamic credentials

image

catalog_type
Type:

string

Default:

image

Catalog type of the Image service.

region
Type:

string

Default:

''

The image region name to use. If empty, the value of identity.region is used instead. If no such region is found in the service catalog, the first found one is used.

endpoint_type
Type:

string

Default:

publicURL

Valid Values:

public, admin, internal, publicURL, adminURL, internalURL

The endpoint type to use for the image service.

alternate_image_endpoint
Type:

string

Default:

<None>

Alternate endpoint name for cross-worker testing

alternate_image_endpoint_type
Type:

string

Default:

publicURL

Valid Values:

public, admin, internal, publicURL, adminURL, internalURL

The endpoint type to use for the alternate image service.

image_caching_enabled
Type:

boolean

Default:

False

Flag to enable if caching is enabled by image service, operator should set this parameter to Trueif ‘image_cache_dir’ is set in glance-api.conf

http_image
Type:

string

Default:

http://download.cirros-cloud.net/0.3.1/cirros-0.3.1-x86_64-uec.tar.gz

http accessible image

build_timeout
Type:

integer

Default:

300

Timeout in seconds to wait for an image to become available.

build_interval
Type:

integer

Default:

1

Time in seconds between image operation status checks.

container_formats
Type:

list

Default:

['ami', 'ari', 'aki', 'bare', 'ovf', 'ova']

A list of image’s container formats users can specify.

disk_formats
Type:

list

Default:

['ami', 'ari', 'aki', 'vhd', 'vmdk', 'raw', 'qcow2', 'vdi', 'iso', 'vhdx']

A list of image’s disk formats users can specify.

image-feature-enabled

api_v2
Type:

boolean

Default:

True

Is the v2 image API enabled

Warning

This option is deprecated for removal. Its value may be silently ignored in the future.

Reason:

Glance v1 APIs are deprecated and v2 APIs are current one. In future, Tempest will test v2 APIs only so this config option will be removed.

import_image
Type:

boolean

Default:

False

Is image import feature enabled

os_glance_reserved
Type:

boolean

Default:

False

Should we check that os_glance namespace is reserved

manage_locations
Type:

boolean

Default:

False

Is show_multiple_locations enabled in glance. Note that at least one http store must be enabled as well, because we use that location scheme to test.

load_balancer

region
Type:

string

Default:

''

The region name to use. If empty, the value of identity.region is used instead. If no such region is found in the service catalog, the first found one is used.

catalog_type
Type:

string

Default:

load-balancer

Catalog type of the Octavia service.

endpoint_type
Type:

string

Default:

publicURL

Valid Values:

public, admin, internal, publicURL, adminURL, internalURL

The endpoint type to use for the load-balancer service

build_interval
Type:

floating point

Default:

5

Time in seconds between build status checks for non-load-balancer resources to build

build_timeout
Type:

integer

Default:

300

Timeout in seconds to wait for non-load-balancer resources to build

octavia_svc_username
Type:

string

Default:

admin

The service_auth username the Octavia services are usingto access other OpenStack services.

log_user_roles
Type:

boolean

Default:

True

Log the user roles at the start of every test.

check_interval
Type:

floating point

Default:

5

Interval to check for status changes.

check_timeout
Type:

integer

Default:

120

Timeout, in seconds, to wait for a status change.

test_with_noop
Type:

boolean

Default:

False

Runs the tests assuming no-op drivers are being used. Tests will assume no actual amphora are created.

lb_build_interval
Type:

floating point

Default:

10

Time in seconds between build status checks for a load balancer.

lb_build_timeout
Type:

integer

Default:

900

Timeout in seconds to wait for a load balancer to build.

member_role
Type:

string

Default:

load-balancer_member

The load balancing member RBAC role.

admin_role
Type:

string

Default:

load-balancer_admin

The load balancing admin RBAC role.

observer_role
Type:

string

Default:

load-balancer_observer

The load balancing observer RBAC role.

global_observer_role
Type:

string

Default:

load-balancer_global_observer

The load balancing global observer RBAC role.

scp_connection_timeout
Type:

integer

Default:

5

Timeout in seconds to wait for a scp connection to complete.

scp_connection_attempts
Type:

integer

Default:

20

Retries for scp to attempt to connect.

provider
Type:

string

Default:

octavia

The provider driver to use for the tests.

RBAC_test_type
Type:

string

Default:

advanced

Valid Values:

advanced, keystone_default_roles, owner_or_admin, none

Type of RBAC tests to run. “advanced” runs the octavia default RBAC tests. “owner_or_admin” runs the legacy owner or admin tests. “keystone_default_roles” runs the tests using only the keystone default roles. “none” disables the RBAC tests.

enabled_provider_drivers
Type:

dict

Default:

{'amphora': 'The Octavia Amphora driver.', 'amphorav2': 'The Octavia Amphora driver that uses taskflow jobboard persistence.', 'octavia': 'Deprecated alias of the Octavia Amphora driver.'}

A comma separated list of dictionaries of the enabled provider driver names and descriptions. Must match the driver name in the octavia.api.drivers entrypoint. Example: amphora:The Octavia Amphora driver.,octavia:Deprecated alias of the Octavia Amphora driver.,amphorav2:The Octavia Amphora driver that uses taskflow jobboard persistence.

loadbalancer_topology
Type:

string

Default:

SINGLE

Valid Values:

SINGLE, ACTIVE_STANDBY

Load balancer topology configuration.

expected_flavor_capability
Type:

dict

Default:

{'loadbalancer_topology': 'The load balancer topology. One of: SINGLE - One amphora per load balancer. ACTIVE_STANDBY - Two amphora per load balancer.'}

Defines a provider flavor capability that is expected to be present in the selected provider under test. It is specified in a “name”: “description” dict. Example: {“loadbalancer_topology”: “The load balancer topology. One of: SINGLE - One amphora per load balancer. ACTIVE_STANDBY - Two amphora per load balancer.”}

expected_availability_zone_capability
Type:

dict

Default:

{'compute_zone': 'The compute availability zone.'}

Defines a provider availability zone capability that is expected to be present in the selected provider under test. It is specified in a “name”: “description” dict. Example: {“compute_zone”: “The compute availability zone.”}

test_with_ipv6
Type:

boolean

Default:

True

When true the IPv6 tests will be run.

disable_boot_network
Type:

boolean

Default:

False

True if your cloud does not allow creating networks or specifying the boot network for instances.

enable_security_groups
Type:

boolean

Default:

False

When true, security groups will be created for the test servers. When false, port security will be disabled on the created networks.

test_network_override
Type:

string

Default:

<None>

Overrides network creation and uses this network ID for all tests (VIP, members, etc.). Required if test_subnet_override is set.

test_subnet_override
Type:

string

Default:

<None>

Overrides subnet creation and uses this subnet ID for all IPv4 tests (VIP, members, etc.). Optional

test_ipv6_subnet_override
Type:

string

Default:

<None>

Overrides subnet creation and uses this subnet ID for all IPv6 tests (VIP, members, etc.). Optional and only valid if test_network_override is set.

vip_subnet_cidr
Type:

string

Default:

10.1.1.0/24

CIDR format subnet to use for the vip subnet.

vip_ipv6_subnet_cidr
Type:

string

Default:

fdde:1a92:7523:70a0::/64

CIDR format subnet to use for the IPv6 vip subnet.

member_1_ipv4_subnet_cidr
Type:

string

Default:

10.2.1.0/24

CIDR format subnet to use for the member 1 subnet.

member_1_ipv6_subnet_cidr
Type:

string

Default:

fd7b:f9f7:0fff:4eca::/64

CIDR format subnet to use for the member 1 ipv6 subnet.

member_2_ipv4_subnet_cidr
Type:

string

Default:

10.2.2.0/24

CIDR format subnet to use for the member 2 subnet.

member_2_ipv6_subnet_cidr
Type:

string

Default:

fd77:1457:4cf0:26a8::/64

CIDR format subnet to use for the member 1 ipv6 subnet.

default_router
Type:

string

Default:

router1

The default router connected to the public network.

default_ipv6_subnetpool
Type:

string

Default:

shared-default-subnetpool-v6

The default IPv6 subnetpool to use when creating the IPv6 VIP subnet.

amphora_ssh_user
Type:

string

Default:

ubuntu

The amphora SSH user.

amphora_ssh_key
Type:

string

Default:

/etc/octavia/.ssh/octavia_ssh_key

The amphora SSH key file.

random_server_name_length
Type:

integer

Default:

0

If non-zero, generate a random name of the length provided for each server, in the format “m[A-Z0-9]*”.

availability_zone
Type:

string

Default:

<None>

Availability zone to use for creating servers.

availability_zone2
Type:

string

Default:

<None>

A second availability zone to use for creating servers.

availability_zone3
Type:

string

Default:

<None>

A third availability zone to use for creating servers.

test_reuse_connection
Type:

boolean

Default:

True

Reuse TCP connections while testing LB with HTTP members (keep-alive).

tenant_flow_log_file
Type:

string

Default:

/var/log/octavia-tenant-traffic.log

File path, on the tempest system, to the tenant flow log file.

amphora_admin_log_file
Type:

string

Default:

/var/log/octavia-amphora.log

File path, on the tempest system, to the amphora admin log file.

test_server_path
Type:

string

Default:

/opt/octavia-tempest-plugin/test_server.bin

Filesystem path to the test web server that will be installed in the web server VMs.

enforce_new_defaults
Type:

boolean

Default:

False

Does the load-balancer service API policies enforce the new keystone default roles? This configuration value should be same as octavia.conf: [oslo_policy].enforce_new_defaults option.

Warning

This option is deprecated for removal since bobcat. Its value may be silently ignored in the future.

Reason:

Consolidated into the RBAC_test_type setting.

loadbalancer-feature-enabled

not_implemented_is_error
Type:

boolean

Default:

True

When True, not-implemented responses from the API are considered an error and test failure. This should be used when a driver should support all of the Octavia API features, such as the reference driver.

health_monitor_enabled
Type:

boolean

Default:

True

Whether Health Monitor is available with provider driver or not.

terminated_tls_enabled
Type:

boolean

Default:

True

Whether TLS termination is available with provider driver or not.

l7_protocol_enabled
Type:

boolean

Default:

True

Whether L7 Protocols are available with the provider driver or not.

pool_algorithms_enabled
Type:

boolean

Default:

True

Whether pool algorithms are available with providerdriver or not.

l4_protocol
Type:

string

Default:

TCP

The type of L4 Protocol which is supported with the provider driver.

spare_pool_enabled
Type:

boolean

Default:

False

Wether spare pool is available with amphora provider driver or not.

session_persistence_enabled
Type:

boolean

Default:

True

Whether session persistence is supported with the provider driver.

log_offload_enabled
Type:

boolean

Default:

False

Whether the log offload tests will run. These require the tempest instance have access to the log files specified in the tempest configuration.

prometheus_listener_enabled
Type:

boolean

Default:

True

Whether the PROMETHEUS listener tests will run.

network

catalog_type
Type:

string

Default:

network

Catalog type of the Neutron service.

region
Type:

string

Default:

''

The network region name to use. If empty, the value of identity.region is used instead. If no such region is found in the service catalog, the first found one is used.

endpoint_type
Type:

string

Default:

publicURL

Valid Values:

public, admin, internal, publicURL, adminURL, internalURL

The endpoint type to use for the network service.

project_network_cidr
Type:

string

Default:

10.100.0.0/16

The cidr block to allocate project ipv4 subnets from

project_network_mask_bits
Type:

integer

Default:

28

The mask bits for project ipv4 subnets

project_network_v6_cidr
Type:

string

Default:

2001:db8::/48

The cidr block to allocate project ipv6 subnets from

project_network_v6_mask_bits
Type:

integer

Default:

64

The mask bits for project ipv6 subnets

project_networks_reachable
Type:

boolean

Default:

False

Whether project networks can be reached directly from the test client. This must be set to True when the ‘fixed’ connect_method is selected.

public_network_id
Type:

string

Default:

''

Id of the public network that provides external connectivity

floating_network_name
Type:

string

Default:

<None>

Default floating network name. Used to allocate floating IPs when neutron is enabled.

subnet_id
Type:

string

Default:

''

Subnet id of subnet which is used for allocation of floating IPs. Specify when two or more subnets are present in network.

public_router_id
Type:

string

Default:

''

Id of the public router that provides external connectivity. This should only be used when Neutron’s ‘allow_overlapping_ips’ is set to ‘False’ in neutron.conf. usually not needed past ‘Grizzly’ release

build_timeout
Type:

integer

Default:

300

Timeout in seconds to wait for network operation to complete.

build_interval
Type:

integer

Default:

1

Time in seconds between network operation status checks.

port_vnic_type
Type:

string

Default:

<None>

Valid Values:

<None>, normal, direct, macvtap, direct-physical, baremetal, virtio-forwarder

vnic_type to use when launching instances with pre-configured ports. Supported ports are: [‘normal’, ‘direct’, ‘macvtap’, ‘direct-physical’, ‘baremetal’, ‘virtio-forwarder’]

port_profile
Type:

unknown type

Default:

{}

port profile to use when launching instances with pre-configured ports.

default_network
Type:

list

Default:

['1.0.0.0/16', '2.0.0.0/16']

List of ip pools for subnetpools creation

shared_physical_network
Type:

boolean

Default:

False

The environment does not support network separation between tenants.

network-feature-enabled

ipv6
Type:

boolean

Default:

True

Allow the execution of IPv6 tests.

api_extensions
Type:

list

Default:

['all']

A list of enabled network extensions with a special entry all which indicates every extension is enabled. Empty list indicates all extensions are disabled. To get the list of extensions run: ‘openstack extension list –network’

available_features
Type:

list

Default:

['all']

A list of available network features with a special entry all that indicates every feature is available. Empty list indicates all features are disabled. This list can contain features that are not discoverable through the API.

ipv6_subnet_attributes
Type:

boolean

Default:

False

Allow the execution of IPv6 subnet tests that use the extended IPv6 attributes ipv6_ra_mode and ipv6_address_mode.

port_admin_state_change
Type:

boolean

Default:

True

Does the test environment support changing port admin state?

port_security
Type:

boolean

Default:

False

Does the test environment support port security?

floating_ips
Type:

boolean

Default:

True

Does the test environment support floating_ips?

qos_placement_physnet
Type:

string

Default:

<None>

Name of the physnet for placement based minimum bandwidth allocation.

provider_net_base_segmentation_id
Type:

string

Default:

3000

Base segmentation ID to create provider networks. This value will be increased in case of conflict.

qos_min_bw_and_pps
Type:

boolean

Default:

False

Does the test environment have minimum bandwidth and packet rate inventories configured?

object-storage

catalog_type
Type:

string

Default:

object-store

Catalog type of the Object-Storage service.

region
Type:

string

Default:

''

The object-storage region name to use. If empty, the value of identity.region is used instead. If no such region is found in the service catalog, the first found one is used.

endpoint_type
Type:

string

Default:

publicURL

Valid Values:

public, admin, internal, publicURL, adminURL, internalURL

The endpoint type to use for the object-store service.

container_sync_timeout
Type:

integer

Default:

600

Number of seconds to time on waiting for a container to container synchronization complete.

container_sync_interval
Type:

integer

Default:

5

Number of seconds to wait while looping to check the status of a container to container synchronization

operator_role
Type:

string

Default:

member

Role to add to users created for swift tests to enable creating containers

reseller_admin_role
Type:

string

Default:

ResellerAdmin

User role that has reseller admin

realm_name
Type:

string

Default:

realm1

Name of sync realm. A sync realm is a set of clusters that have agreed to allow container syncing with each other. Set the same realm name as Swift’s container-sync-realms.conf

cluster_name
Type:

string

Default:

name1

One name of cluster which is set in the realm whose name is set in ‘realm_name’ item in this file. Set the same cluster name as Swift’s container-sync-realms.conf

build_timeout
Type:

integer

Default:

10

Timeout in seconds to wait for objects to create.

object-storage-feature-enabled

discoverable_apis
Type:

list

Default:

['all']

A list of the enabled optional discoverable apis. A single entry, all, indicates that all of these features are expected to be enabled

container_sync
Type:

boolean

Default:

True

Execute (old style) container-sync tests

object_versioning
Type:

boolean

Default:

True

Execute object-versioning tests

discoverability
Type:

boolean

Default:

True

Execute discoverability tests

tempurl_digest_hashlib
Type:

string

Default:

sha256

Hashing algorithm to use for the temp_url tests. Needs to be supported both by Swift and the hashlib module, for example sha1 or sha256

placement

endpoint_type
Type:

string

Default:

public

Valid Values:

public, admin, internal

The endpoint type to use for the placement service.

catalog_type
Type:

string

Default:

placement

Catalog type of the Placement service.

region
Type:

string

Default:

''

The placement region name to use. If empty, the value of [identity]/region is used instead. If no such region is found in the service catalog, the first region found is used.

min_microversion
Type:

string

Default:

<None>

Lower version of the test target microversion range. The format is ‘X.Y’, where ‘X’ and ‘Y’ are int values. Valid values are string with format ‘X.Y’ or string ‘latest’

max_microversion
Type:

string

Default:

<None>

Upper version of the test target microversion range. The format is ‘X.Y’, where ‘X’ and ‘Y’ are int values. Valid values are string with format ‘X.Y’ or string ‘latest’

profiler

key
Type:

string

Default:

<None>

The secret key to enable OpenStack Profiler. The value should match the one configured in OpenStack services under [profiler]/hmac_keys property. The default empty value keeps profiling disabled

scenario

img_file
Type:

string

Default:

/opt/stack/new/devstack/files/images/cirros-0.3.1-x86_64-disk.img

Image full path.

Deprecated Variations

Group

Name

scenario

qcow2_img_file

img_disk_format
Type:

string

Default:

qcow2

Image disk format

img_container_format
Type:

string

Default:

bare

Image container format

img_properties
Type:

dict

Default:

<None>

Glance image properties. Use for custom images which require them

dhcp_client
Type:

string

Default:

udhcpc

Valid Values:

udhcpc, dhclient, dhcpcd, ‘’

DHCP client used by images to renew DCHP lease. If left empty, update operation will be skipped. Supported clients: “udhcpc”, “dhclient”, “dhcpcd”

protocol
Type:

string

Default:

icmp

Valid Values:

icmp, tcp, udp

The protocol used in security groups tests to check connectivity.

service-clients

http_timeout
Type:

integer

Default:

60

Timeout in seconds to wait for the http request to return

proxy_url
Type:

string

Default:

<None>

Specify an http proxy to use.

service_available

cinder
Type:

boolean

Default:

True

Whether or not cinder is expected to be available

neutron
Type:

boolean

Default:

False

Whether or not neutron is expected to be available

glance
Type:

boolean

Default:

True

Whether or not glance is expected to be available

swift
Type:

boolean

Default:

True

Whether or not swift is expected to be available

nova
Type:

boolean

Default:

True

Whether or not nova is expected to be available

horizon
Type:

boolean

Default:

True

Whether or not horizon is expected to be available

load_balancer
Type:

boolean

Default:

True

Whether or not the load-balancer service is expected to be available.

validation

run_validation
Type:

boolean

Default:

True

Enable ssh on created servers and creation of additional validation resources to enable remote access. In case the guest does not support ssh set it to false

security_group
Type:

boolean

Default:

True

Enable/disable security groups.

security_group_rules
Type:

boolean

Default:

True

Enable/disable security group rules.

connect_method
Type:

string

Default:

floating

Valid Values:

fixed, floating

Default IP type used for validation

Possible values

fixed

uses the first IP belonging to the fixed network

floating

creates and uses a floating IP

auth_method
Type:

string

Default:

keypair

Valid Values:

keypair

Default authentication method to the instance. Only ssh via keypair is supported for now. Additional methods will be handled in a separate spec.

ip_version_for_ssh
Type:

integer

Default:

4

Default IP version for ssh connections.

ping_timeout
Type:

integer

Default:

120

Timeout in seconds to wait for ping to succeed.

connect_timeout
Type:

integer

Default:

60

Timeout in seconds to wait for the TCP connection to be successful.

ssh_timeout
Type:

integer

Default:

300

Timeout in seconds to wait for the ssh banner.

image_ssh_user
Type:

string

Default:

root

User name used to authenticate to an instance.

image_alt_ssh_user
Type:

string

Default:

root

User name used to authenticate to an alt instance.

image_ssh_password
Type:

string

Default:

password

Password used to authenticate to an instance.

image_alt_ssh_password
Type:

string

Default:

password

Password used to authenticate to an alt instance.

ssh_shell_prologue
Type:

string

Default:

set -eu -o pipefail; PATH=$$PATH:/sbin:/usr/sbin;

Shell fragments to use before executing a command when sshing to a guest.

ping_size
Type:

integer

Default:

56

The packet size for ping packets originating from remote linux hosts

ping_count
Type:

integer

Default:

1

The number of ping packets originating from remote linux hosts

floating_ip_range
Type:

string

Default:

10.0.0.0/29

Unallocated floating IP range, which will be used to test the floating IP bulk feature for CRUD operation. This block must not overlap an existing floating IP pool.

network_for_ssh
Type:

string

Default:

public

Network used for SSH connections. Ignored if connect_method=floating.

ssh_key_type
Type:

string

Default:

ecdsa

Type of key to use for ssh connections. Valid types are rsa, ecdsa

allowed_network_downtime
Type:

floating point

Default:

5.0

Allowed VM network connection downtime during live migration, in seconds. When the measured downtime exceeds this value, an exception is raised.

volume

build_interval
Type:

integer

Default:

1

Time in seconds between volume availability checks.

build_timeout
Type:

integer

Default:

300

Timeout in seconds to wait for a volume to become available.

catalog_type
Type:

string

Default:

volumev3

Catalog type of the Volume Service

region
Type:

string

Default:

''

The volume region name to use. If empty, the value of identity.region is used instead. If no such region is found in the service catalog, the first found one is used.

endpoint_type
Type:

string

Default:

publicURL

Valid Values:

public, admin, internal, publicURL, adminURL, internalURL

The endpoint type to use for the volume service.

backup_driver
Type:

string

Default:

ceph

Valid Values:

ceph, swift, nfs, glusterfs, posix, google, s3

What kind of backup_driver does cinder use?https://docs.openstack.org/cinder/latest/configuration/block-storage/backup-drivers.html

backend_names
Type:

list

Default:

['BACKEND_1', 'BACKEND_2']

A list of backend names separated by comma. The backend name must be declared in cinder.conf

volume_type
Type:

string

Default:

''

Volume type to be used while creating volume.

volume_type_multiattach
Type:

string

Default:

''

Multiattach volume type used while creating multiattach volume.

storage_protocol
Type:

string

Default:

iSCSI

Backend protocol to target when creating volume types

vendor_name
Type:

string

Default:

Open Source

Backend vendor to target when creating volume types

disk_format
Type:

string

Default:

raw

Disk format to use when copying a volume to image

volume_size
Type:

integer

Default:

1

Default size in GB for volumes created by volumes tests

volume_size_extend
Type:

integer

Default:

1

Size in GB a volume is extended by - if a test extends a volume, the size of the new volume will be volume_size + volume_size_extend.

manage_volume_ref
Type:

list

Default:

['source-name', 'volume-%s']

A reference to existing volume for volume manage. It contains two elements, the first is ref type (like ‘source-name’, ‘source-id’, etc), the second is volume name template used in storage backend

manage_snapshot_ref
Type:

list

Default:

['source-name', '_snapshot-%s']

A reference to existing snapshot for snapshot manage. It contains two elements, the first is ref type (like ‘source-name’, ‘source-id’, etc), the second is snapshot name template used in storage backend

min_microversion
Type:

string

Default:

<None>

Lower version of the test target microversion range. The format is ‘X.Y’, where ‘X’ and ‘Y’ are int values. Tempest selects tests based on the range between min_microversion and max_microversion. If both values are not specified, Tempest avoids tests which require a microversion. Valid values are string with format ‘X.Y’ or string ‘latest’

max_microversion
Type:

string

Default:

<None>

Upper version of the test target microversion range. The format is ‘X.Y’, where ‘X’ and ‘Y’ are int values. Tempest selects tests based on the range between min_microversion and max_microversion. If both values are not specified, Tempest avoids tests which require a microversion. Valid values are string with format ‘X.Y’ or string ‘latest’

volume-feature-enabled

multi_backend
Type:

boolean

Default:

False

Runs Cinder multi-backend test (requires 2 backends)

backup
Type:

boolean

Default:

True

Runs Cinder volumes backup test

snapshot
Type:

boolean

Default:

True

Runs Cinder volume snapshot test

clone
Type:

boolean

Default:

True

Runs Cinder volume clone test

manage_snapshot
Type:

boolean

Default:

False

Runs Cinder manage snapshot tests

manage_volume
Type:

boolean

Default:

False

Runs Cinder manage volume tests

api_extensions
Type:

list

Default:

['all']

A list of enabled volume extensions with a special entry all which indicates every extension is enabled. Empty list indicates all extensions are disabled

extend_attached_volume
Type:

boolean

Default:

False

Does the cloud support extending the size of a volume which is currently attached to a server instance? This depends on the 3.42 volume API microversion and the 2.51 compute API microversion. Also, not all volume or compute backends support this operation.

extend_attached_encrypted_volume
Type:

boolean

Default:

False

Does the cloud support extending the size of an encrypted volume which is currently attached to a server instance? This depends on the 3.42 volume API microversion and the 2.51 compute API microversion. Also, not all volume or compute backends support this operation.

extend_volume_with_snapshot
Type:

boolean

Default:

True

Does the cloud support extending the size of a volume which has snapshot? Some drivers do not support this operation.