[DEFAULT]

#
# From oslo.log
#

# If set to true, the logging level will be set to DEBUG instead of
# the default INFO level. (boolean value)
# Note: This option can be changed without restarting.
#debug = false

# The name of a logging configuration file. This file is appended to
# any existing logging configuration files. For details about logging
# configuration files, see the Python logging module documentation.
# Note that when logging configuration files are used then all logging
# configuration is set in the configuration file and other logging
# configuration options are ignored (for example, log-date-format).
# (string value)
# Note: This option can be changed without restarting.
# Deprecated group/name - [DEFAULT]/log_config
#log_config_append = <None>

# Defines the format string for %%(asctime)s in log records. Default:
# %(default)s . This option is ignored if log_config_append is set.
# (string value)
#log_date_format = %Y-%m-%d %H:%M:%S

# (Optional) Name of log file to send logging output to. If no default
# is set, logging will go to stderr as defined by use_stderr. This
# option is ignored if log_config_append is set. (string value)
# Deprecated group/name - [DEFAULT]/logfile
#log_file = tempest.log

# (Optional) The base directory used for relative log_file  paths.
# This option is ignored if log_config_append is set. (string value)
# Deprecated group/name - [DEFAULT]/logdir
#log_dir = <None>

# DEPRECATED: Uses logging handler designed to watch file system. When
# log file is moved or removed this handler will open a new log file
# with specified path instantaneously. It makes sense only if log_file
# option is specified and Linux platform is used. This option is
# ignored if log_config_append is set. (boolean value)
# This option is deprecated for removal.
# Its value may be silently ignored in the future.
# Reason: This function is known to have bene broken for long time,
# and depends on the unmaintained library
#watch_log_file = false

# Use syslog for logging. Existing syslog format is DEPRECATED and
# will be changed later to honor RFC5424. This option is ignored if
# log_config_append is set. (boolean value)
#use_syslog = false

# Enable journald for logging. If running in a systemd environment you
# may wish to enable journal support. Doing so will use the journal
# native protocol which includes structured metadata in addition to
# log messages.This option is ignored if log_config_append is set.
# (boolean value)
#use_journal = false

# Syslog facility to receive log lines. This option is ignored if
# log_config_append is set. (string value)
#syslog_log_facility = LOG_USER

# Use JSON formatting for logging. This option is ignored if
# log_config_append is set. (boolean value)
#use_json = false

# Log output to standard error. This option is ignored if
# log_config_append is set. (boolean value)
#use_stderr = false

# (Optional) Set the 'color' key according to log levels. This option
# takes effect only when logging to stderr or stdout is used. This
# option is ignored if log_config_append is set. (boolean value)
#log_color = false

# The amount of time before the log files are rotated. This option is
# ignored unless log_rotation_type is set to "interval". (integer
# value)
#log_rotate_interval = 1

# Rotation interval type. The time of the last file change (or the
# time when the service was started) is used when scheduling the next
# rotation. (string value)
# Possible values:
# Seconds - <No description provided>
# Minutes - <No description provided>
# Hours - <No description provided>
# Days - <No description provided>
# Weekday - <No description provided>
# Midnight - <No description provided>
#log_rotate_interval_type = days

# Maximum number of rotated log files. (integer value)
#max_logfile_count = 30

# Log file maximum size in MB. This option is ignored if
# "log_rotation_type" is not set to "size". (integer value)
#max_logfile_size_mb = 200

# Log rotation type. (string value)
# Possible values:
# interval - Rotate logs at predefined time intervals.
# size - Rotate logs once they reach a predefined size.
# none - Do not rotate log files.
#log_rotation_type = none

# Format string to use for log messages with context. Used by
# oslo_log.formatters.ContextFormatter (string value)
#logging_context_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [%(global_request_id)s %(request_id)s %(user_identity)s] %(instance)s%(message)s

# Format string to use for log messages when context is undefined.
# Used by oslo_log.formatters.ContextFormatter (string value)
#logging_default_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [-] %(instance)s%(message)s

# Additional data to append to log message when logging level for the
# message is DEBUG. Used by oslo_log.formatters.ContextFormatter
# (string value)
#logging_debug_format_suffix = %(funcName)s %(pathname)s:%(lineno)d

# Prefix each line of exception output with this format. Used by
# oslo_log.formatters.ContextFormatter (string value)
#logging_exception_prefix = %(asctime)s.%(msecs)03d %(process)d ERROR %(name)s %(instance)s

# Defines the format string for %(user_identity)s that is used in
# logging_context_format_string. Used by
# oslo_log.formatters.ContextFormatter (string value)
#logging_user_identity_format = %(user)s %(project)s %(domain)s %(system_scope)s %(user_domain)s %(project_domain)s

# List of package logging levels in logger=LEVEL pairs. This option is
# ignored if log_config_append is set. (list value)
#default_log_levels = amqp=WARN,amqplib=WARN,boto=WARN,qpid=WARN,sqlalchemy=WARN,suds=INFO,oslo.messaging=INFO,oslo_messaging=INFO,iso8601=WARN,requests.packages.urllib3.connectionpool=WARN,urllib3.connectionpool=WARN,websocket=WARN,requests.packages.urllib3.util.retry=WARN,urllib3.util.retry=WARN,keystonemiddleware=WARN,routes.middleware=WARN,stevedore=WARN,taskflow=WARN,keystoneauth=WARN,oslo.cache=INFO,oslo_policy=INFO,dogpile.core.dogpile=INFO

# Enables or disables publication of error events. (boolean value)
#publish_errors = false

# The format for an instance that is passed with the log message.
# (string value)
#instance_format = "[instance: %(uuid)s] "

# The format for an instance UUID that is passed with the log message.
# (string value)
#instance_uuid_format = "[instance: %(uuid)s] "

# Interval, number of seconds, of log rate limiting. (integer value)
#rate_limit_interval = 0

# Maximum number of logged messages per rate_limit_interval. (integer
# value)
#rate_limit_burst = 0

# Log level name used by rate limiting. Logs with level greater or
# equal to rate_limit_except_level are not filtered. An empty string
# means that all levels are filtered. (string value)
# Possible values:
# CRITICAL - <No description provided>
# ERROR - <No description provided>
# INFO - <No description provided>
# WARNING - <No description provided>
# DEBUG - <No description provided>
# '' - <No description provided>
#rate_limit_except_level = CRITICAL

# Enables or disables fatal status of deprecations. (boolean value)
#fatal_deprecations = false

#
# From tempest.config
#

# 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 (boolean value)
#pause_teardown = false

# 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. (string value)
#resource_name_prefix = tempest

# Allows to record all resources created by Tempest. These resources
# are stored in file resource_list.json, which can be later used for
# resource deletion by command tempest cleanup. The resource_list.json
# file will be appended in case of multiple Tempest runs, so the file
# will contain a list of resources created during all Tempest runs.
# (boolean value)
#record_resources = false


[auth]

#
# From tempest.config
#

# 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. (string value)
#test_accounts_file = <None>

# 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 (boolean value)
#use_dynamic_credentials = true

# Roles to assign to all users created by tempest (list value)
#tempest_roles =

# Default domain used when getting v3 credentials. This is the name
# keystone uses for v2 compatibility. (string value)
#default_credentials_domain_name = Default

# 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
# (boolean value)
#create_isolated_networks = true

# Username for an administrative user. This is needed for
# authenticating requests made by project isolation to create users
# and projects (string value)
#admin_username = <None>

# Project name to use for an administrative user. This is needed for
# authenticating requests made by project isolation to create users
# and projects (string value)
#admin_project_name = <None>

# Password to use for an administrative user. This is needed for
# authenticating requests made by project isolation to create users
# and projects (string value)
#admin_password = <None>

# 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 (string value)
#admin_domain_name = Default

# Domain name that contains the admin user (Keystone V3). May be
# different from admin_project_domain_name and admin_domain_name
# (string value)
#admin_user_domain_name = <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 (string value)
#admin_project_domain_name = <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. (string value)
#admin_system = <None>


[compute]

#
# From tempest.config
#

# Valid primary image reference to be used in tests. This is a
# required option (string value)
#image_ref = <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 (string value)
#image_ref_alt = <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 (string value)
#certified_image_ref = <None>

# A list of trusted certificates to be used when the image certificate
# validation compute feature is enabled. (list value)
#certified_image_trusted_certs = <None>

# Valid primary flavor to use in tests. (string value)
#flavor_ref = 1

# Valid secondary flavor to be used in tests. (string value)
#flavor_ref_alt = 2

# Time in seconds between build status checks. (integer value)
#build_interval = 1

# Timeout in seconds to wait for an instance to build. Other services
# that do not define build_timeout will inherit this value. (integer
# value)
#build_timeout = 300

# Additional wait time for clean state, when there is no OS-EXT-STS
# extension available (integer value)
#ready_wait = 0

# 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. (string value)
#fixed_network_name = <None>

# Catalog type of the Compute service. (string value)
#catalog_type = compute

# 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. (string value)
#region =

# The endpoint type to use for the compute service. (string value)
# Possible values:
# public - <No description provided>
# admin - <No description provided>
# internal - <No description provided>
# publicURL - <No description provided>
# adminURL - <No description provided>
# internalURL - <No description provided>
#endpoint_type = publicURL

# 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.
# (string value)
#volume_device_name = vdb

# 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. (integer value)
#shelved_offload_time = 0

# 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. (integer value)
#min_compute_nodes = 1

# Hypervisor type of the test target on heterogeneous compute
# environment. The value can be 'QEMU', 'xen' or something. (string
# value)
#hypervisor_type = <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' (string value)
#min_microversion = <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' (string value)
#max_microversion = <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. (string value)
#compute_volume_common_az = <None>

# Specify source host for live-migration, cold-migration and resize
# tests. If option is not set tests will use host automatically.
# (string value)
#migration_source_host = <None>

# Specify destination host for live-migration and cold migration. If
# option is not set tests will use host automatically. (string value)
#migration_dest_host = <None>

# When aggregating available hypervisors for testing, avoid migrating
# to and booting any test VM on hosts with a name that matches the
# provided pattern (string value)
#target_hosts_to_avoid = -ironic


[compute-feature-enabled]

#
# From tempest.config
#

# If false, skip disk config tests (boolean value)
#disk_config = true

# 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.
# (boolean value)
#hostname_fqdn_sanitization = false

# Configure a fully-qualified domain name for instance hostnames. The
# value is suffixed to instance hostname from the database to
# construct the hostname that appears in the metadata API. To disable
# this behavior (for example in order to correctly support
# microversion's 2.94 FQDN hostnames), set this to the empty string.
# (string value)
#dhcp_domain = .novalocal

# Does the test environment support changing the admin password?
# (boolean value)
#change_password = false

# Does the test environment support obtaining instance serial console
# output? (boolean value)
#console_output = true

# 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. (boolean value)
#resize = false

# Does the test environment support pausing? (boolean value)
#pause = true

# Does the test environment support shelving/unshelving? (boolean
# value)
#shelve = true

# Does the test environment support cold migration of unshelved
# server? (boolean value)
#shelve_migrate = false

# Does the test environment support suspend/resume? (boolean value)
#suspend = true

# Does the test environment support cold migration? (boolean value)
#cold_migration = true

# Does the test environment support live migration? (boolean value)
#live_migration = true

# Does the test environment support live migrating VM back and forth
# between different versions of nova-compute? (boolean value)
#live_migrate_back_and_forth = false

# Does the test environment support metadata service? Ignored unless
# validation.run_validation=true. (boolean value)
#metadata_service = true

# Does the test environment use block devices for live migration
# (boolean value)
#block_migration_for_live_migration = false

# 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 (boolean value)
#can_migrate_between_any_hosts = true

# Enable VNC console. This configuration value should be same as
# nova.conf: vnc.enabled (boolean value)
#vnc_console = false

# Enable SPICE console. This configuration value should be same as
# nova.conf: spice.enabled (boolean value)
#spice_console = false

# Enable serial console. This configuration value should be the same
# as nova.conf: serial_console.enabled (boolean value)
#serial_console = false

# Does the test environment support instance rescue mode? (boolean
# value)
#rescue = true

# Does the test environment support stable device instance rescue
# mode? (boolean value)
#stable_rescue = false

# 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
# (boolean value)
#enable_instance_password = true

# Does the test environment support dynamic network interface
# attachment? (boolean value)
#interface_attach = true

# Does the test environment support creating snapshot images of
# running instances? (boolean value)
#snapshot = true

# Does the test environment support server personality (boolean value)
#personality = false

# 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. (boolean
# value)
#attach_encrypted_volume = true

# Enable special configuration drive with metadata. (boolean value)
#config_drive = true

# 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. (list value)
# Deprecated group/name - [compute-feature-enabled]/scheduler_available_filters
#scheduler_enabled_filters = ComputeFilter,ComputeCapabilitiesFilter,ImagePropertiesFilter,ServerGroupAntiAffinityFilter,ServerGroupAffinityFilter

# Does the test environment support in-place swapping of volumes
# attached to a server instance? (boolean value)
#swap_volume = false

# Does the test environment support volume-backed live migration?
# (boolean value)
#volume_backed_live_migration = 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. (boolean value)
#volume_multiattach = false

# Does the test environment support attaching devices using an IDE bus
# to the instance? (boolean value)
#ide_bus = true

# Does the test environment support unified limits? (boolean value)
#unified_limits = false


[dashboard]

#
# From tempest.config
#

# Where the dashboard can be found (uri value)
#dashboard_url = http://localhost/

# Set to True if using self-signed SSL certificates. (boolean value)
#disable_ssl_certificate_validation = false


[debug]

#
# From tempest.config
#

# 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.
#  (string value)
#trace_requests =


[enforce_scope]

#
# From tempest.config
#

# 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. (boolean value)
#nova = 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.
# (boolean value)
#neutron = 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. (boolean value)
#glance = 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. (boolean value)
#cinder = 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. (boolean value)
#keystone = 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.
# (boolean value)
#placement = false


[identity]

#
# From tempest.config
#

# Catalog type of the Identity service. (string value)
#catalog_type = identity

# Set to True if using self-signed SSL certificates. (boolean value)
#disable_ssl_certificate_validation = false

# Specify a CA bundle file to use in verifying a TLS (https) server
# certificate. (string value)
#ca_certificates_file = <None>

# DEPRECATED: Full URI of the OpenStack Identity API (Keystone), v2
# (uri value)
# This option is deprecated for removal.
# Its value may be silently ignored in the future.
# Reason: The identity v2 API tests were removed and this option has
# no effect
#uri = <None>

# Full URI of the OpenStack Identity API (Keystone), v3 (uri value)
#uri_v3 = <None>

# DEPRECATED: Identity API version to be used for authentication for
# API tests. (string value)
# This option is deprecated for removal.
# Its value may be silently ignored in the future.
# Reason: Identity v2 API was removed and v3 is the only available
# identity API version now
#auth_version = v3

# 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. (string
# value)
#region = RegionOne

# DEPRECATED: The admin endpoint type to use for OpenStack Identity
# (Keystone) API v2 (string value)
# Possible values:
# public - <No description provided>
# admin - <No description provided>
# internal - <No description provided>
# publicURL - <No description provided>
# adminURL - <No description provided>
# internalURL - <No description provided>
# This option is deprecated for removal.
# Its value may be silently ignored in the future.
# Reason: This option has no effect
#v2_admin_endpoint_type = adminURL

# DEPRECATED: The public endpoint type to use for OpenStack Identity
# (Keystone) API v2 (string value)
# Possible values:
# public - <No description provided>
# admin - <No description provided>
# internal - <No description provided>
# publicURL - <No description provided>
# adminURL - <No description provided>
# internalURL - <No description provided>
# This option is deprecated for removal.
# Its value may be silently ignored in the future.
# Reason: This option has no effect
#v2_public_endpoint_type = publicURL

# The endpoint type to use for OpenStack Identity (Keystone) API v3.
# (string value)
# Possible values:
# public - <No description provided>
# admin - <No description provided>
# internal - <No description provided>
# publicURL - <No description provided>
# adminURL - <No description provided>
# internalURL - <No description provided>
#v3_endpoint_type = public

# Role required to administrate keystone. (string value)
#admin_role = admin

# ID of the default domain (string value)
#default_domain_id = default

# Whether keystone identity v3 policy required a domain scoped token
# to use admin APIs (boolean value)
#admin_domain_scope = false

# 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. (integer value)
#user_lockout_failure_attempts = 2

# 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. (integer value)
#user_lockout_duration = 5

# 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 (integer value)
#user_unique_last_password_count = 2

# 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. (integer
# value)
#user_minimum_password_age = 0


[identity-feature-enabled]

#
# From tempest.config
#

# Does the identity service have delegation and impersonation enabled
# (boolean value)
#trust = true

# DEPRECATED: Is the v2 identity API enabled (boolean value)
# This option is deprecated for removal.
# Its value may be silently ignored in the future.
# Reason: The identity v2 API tests were removed and this option has
# no effect
#api_v2 = false

# DEPRECATED: Is the v2 identity admin API available? (boolean value)
# This option is deprecated for removal.
# Its value may be silently ignored in the future.
# Reason: The identity v2 API tests were removed and this option has
# no effect
#api_v2_admin = true

# DEPRECATED: Is the v3 identity API enabled (boolean value)
# This option is deprecated for removal.
# Its value may be silently ignored in the future.
# Reason: Identity v2 API was removed and v3 is the only available
# identity API version now
#api_v3 = true

# 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' (list value)
#api_extensions = all

# Are domain specific drivers enabled? This configuration value should
# be same as [identity]->domain_specific_drivers_enabled in
# keystone.conf. (boolean value)
#domain_specific_drivers = false

# Does the environment have the security compliance settings enabled?
# (boolean value)
#security_compliance = false

# DEPRECATED: Does the environment have access rules enabled? (boolean
# value)
# 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
#access_rules = true

# 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 (boolean
# value)
#immutable_user_source = false


[image]

#
# From tempest.config
#

# Catalog type of the Image service. (string value)
#catalog_type = image

# 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. (string value)
#region =

# The endpoint type to use for the image service. (string value)
# Possible values:
# public - <No description provided>
# admin - <No description provided>
# internal - <No description provided>
# publicURL - <No description provided>
# adminURL - <No description provided>
# internalURL - <No description provided>
#endpoint_type = publicURL

# Alternate endpoint name for cross-worker testing (string value)
#alternate_image_endpoint = <None>

# The endpoint type to use for the alternate image service. (string
# value)
# Possible values:
# public - <No description provided>
# admin - <No description provided>
# internal - <No description provided>
# publicURL - <No description provided>
# adminURL - <No description provided>
# internalURL - <No description provided>
#alternate_image_endpoint_type = publicURL

# Flag to enable if caching is enabled by image service, operator
# should set this parameter to True if 'image_cache_dir' is set in
# glance-api.conf (boolean value)
#image_caching_enabled = false

# http accessible image (string value)
#http_image = http://download.cirros-cloud.net/0.6.2/cirros-0.6.2-x86_64-uec.tar.gz

# http qcow2 accessible image which will be used for image conversion
# if enabled. (string value)
#http_qcow2_image = http://download.cirros-cloud.net/0.6.2/cirros-0.6.2-x86_64-disk.img

# Timeout in seconds to wait for an image to become available.
# (integer value)
#build_timeout = 300

# Time in seconds between image operation status checks. (integer
# value)
#build_interval = 1

# A list of image's container formats users can specify. (list value)
#container_formats = bare,ami,ari,aki,ovf,ova

# A list of image's disk formats users can specify. (list value)
#disk_formats = qcow2,raw,ami,ari,aki,vhd,vmdk,vdi,iso,vhdx

# A path to a manifest.yml generated using the os-test-images project
# (string value)
#images_manifest_file = <None>


[image-feature-enabled]

#
# From tempest.config
#

# DEPRECATED: Is the v2 image API enabled (boolean value)
# 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.
#api_v2 = true

# DEPRECATED: Is image import feature enabled (boolean value)
# This option is deprecated for removal.
# Its value may be silently ignored in the future.
# Reason: Issue with image import in WSGI mode was fixed in Victoria,
# and this feature works in any deployment architecture now.
#import_image = true

# DEPRECATED: Should we check that os_glance namespace is reserved
# (boolean value)
# This option is deprecated for removal.
# Its value may be silently ignored in the future.
# Reason: os_glance namespace is always reserved since Wallaby
#os_glance_reserved = true

# 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. (boolean value)
#manage_locations = false

# Is image_conversion enabled in glance. (boolean value)
#image_conversion = false

# Indicates that image format is enforced by glance, such that we
# should not expect to be able to upload bad images for testing other
# services. (boolean value)
#image_format_enforcement = true


[network]

#
# From tempest.config
#

# Catalog type of the Neutron service. (string value)
#catalog_type = network

# 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. (string value)
#region =

# The endpoint type to use for the network service. (string value)
# Possible values:
# public - <No description provided>
# admin - <No description provided>
# internal - <No description provided>
# publicURL - <No description provided>
# adminURL - <No description provided>
# internalURL - <No description provided>
#endpoint_type = publicURL

# The cidr block to allocate project ipv4 subnets from (string value)
#project_network_cidr = 10.100.0.0/16

# The mask bits for project ipv4 subnets (integer value)
#project_network_mask_bits = 28

# The cidr block to allocate project ipv6 subnets from (string value)
#project_network_v6_cidr = 2001:db8::/48

# The mask bits for project ipv6 subnets (integer value)
#project_network_v6_mask_bits = 64

# Whether project networks can be reached directly from the test
# client. This must be set to True when the 'fixed' connect_method is
# selected. (boolean value)
#project_networks_reachable = false

# Id of the public network that provides external connectivity (string
# value)
#public_network_id =

# Default floating network name. Used to allocate floating IPs when
# neutron is enabled. (string value)
#floating_network_name = <None>

# Subnet id of subnet which is used for allocation of floating IPs.
# Specify when two or more subnets are present in network. (string
# value)
#subnet_id =

# 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
# (string value)
#public_router_id =

# Timeout in seconds to wait for network operation to complete.
# (integer value)
#build_timeout = 300

# Time in seconds between network operation status checks. (integer
# value)
#build_interval = 1

# vnic_type to use when launching instances with pre-configured ports.
# Supported ports are: ['normal', 'direct', 'macvtap', 'direct-
# physical', 'baremetal', 'virtio-forwarder'] (string value)
# Possible values:
# <None> - <No description provided>
# normal - <No description provided>
# direct - <No description provided>
# macvtap - <No description provided>
# direct-physical - <No description provided>
# baremetal - <No description provided>
# virtio-forwarder - <No description provided>
#port_vnic_type = <None>

# port profile to use when launching instances with pre-configured
# ports. (dict value)
#port_profile =

# List of ip pools for subnetpools creation (list value)
#default_network = 1.0.0.0/16,2.0.0.0/16

# The environment does not support network separation between tenants.
# (boolean value)
#shared_physical_network = false


[network-feature-enabled]

#
# From tempest.config
#

# Allow the execution of IPv6 tests. (boolean value)
#ipv6 = true

# 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' (list value)
#api_extensions = 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. (list value)
#available_features = all

# Allow the execution of IPv6 subnet tests that use the extended IPv6
# attributes ipv6_ra_mode and ipv6_address_mode. (boolean value)
#ipv6_subnet_attributes = false

# Does the test environment support changing port admin state?
# (boolean value)
#port_admin_state_change = true

# Does the test environment support port security? (boolean value)
#port_security = false

# Does the test environment support floating_ips? (boolean value)
#floating_ips = true

# Name of the physnet for placement based minimum bandwidth
# allocation. (string value)
#qos_placement_physnet = <None>

# Base segmentation ID to create provider networks. This value will be
# increased in case of conflict. (string value)
#provider_net_base_segmentation_id = 3000

# Does the test environment have minimum bandwidth and packet rate
# inventories configured? (boolean value)
#qos_min_bw_and_pps = false


[object-storage]

#
# From tempest.config
#

# Catalog type of the Object-Storage service. (string value)
#catalog_type = object-store

# 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. (string value)
#region =

# The endpoint type to use for the object-store service. (string
# value)
# Possible values:
# public - <No description provided>
# admin - <No description provided>
# internal - <No description provided>
# publicURL - <No description provided>
# adminURL - <No description provided>
# internalURL - <No description provided>
#endpoint_type = publicURL

# Number of seconds to time on waiting for a container to container
# synchronization complete. (integer value)
#container_sync_timeout = 600

# Number of seconds to wait while looping to check the status of a
# container to container synchronization (integer value)
#container_sync_interval = 5

# Role to add to users created for swift tests to enable creating
# containers (string value)
#operator_role = member

# User role that has reseller admin (string value)
#reseller_admin_role = ResellerAdmin

# 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 (string value)
#realm_name = realm1

# 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 (string value)
#cluster_name = name1

# Timeout in seconds to wait for objects to create. (integer value)
#build_timeout = 10


[object-storage-feature-enabled]

#
# From tempest.config
#

# A list of the enabled optional discoverable apis. A single entry,
# all, indicates that all of these features are expected to be enabled
# (list value)
#discoverable_apis = all

# Execute (old style) container-sync tests (boolean value)
#container_sync = true

# Execute object-versioning tests (boolean value)
#object_versioning = true

# Execute discoverability tests (boolean value)
#discoverability = true

# 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 (string value)
#tempurl_digest_hashlib = sha256


[oslo_concurrency]

#
# From oslo.concurrency
#

# Enables or disables inter-process locks. (boolean value)
#disable_process_locking = false

# Directory to use for lock files.  For security, the specified
# directory should only be writable by the user running the processes
# that need locking. Defaults to environment variable OSLO_LOCK_PATH.
# If external locks are used, a lock path must be set. (string value)
#lock_path = /tmp/tempest-lock


[placement]

#
# From tempest.config
#

# The endpoint type to use for the placement service. (string value)
# Possible values:
# public - <No description provided>
# admin - <No description provided>
# internal - <No description provided>
#endpoint_type = public

# Catalog type of the Placement service. (string value)
#catalog_type = placement

# 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. (string value)
#region =

# 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' (string value)
#min_microversion = <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' (string value)
#max_microversion = <None>


[profiler]

#
# From tempest.config
#

# 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 (string value)
#key = <None>


[scenario]

#
# From tempest.config
#

# Image full path. (string value)
# Deprecated group/name - [scenario]/qcow2_img_file
#img_file = /opt/stack/new/devstack/files/images/cirros-0.3.1-x86_64-disk.img

# Image disk format (string value)
#img_disk_format = qcow2

# Image container format (string value)
#img_container_format = bare

# Glance image properties. Use for custom images which require them
# (dict value)
#img_properties = <None>

# DHCP client used by images to renew DHCP lease. If left empty,
# update operation will be skipped. Supported clients: "udhcpc",
# "dhclient", "dhcpcd" (string value)
# Possible values:
# udhcpc - <No description provided>
# dhclient - <No description provided>
# dhcpcd - <No description provided>
# '' - <No description provided>
#dhcp_client = udhcpc

# The protocol used in security groups tests to check connectivity.
# (string value)
# Possible values:
# icmp - <No description provided>
# tcp - <No description provided>
# udp - <No description provided>
#protocol = icmp

# Directory in which to write the timestamp file. (string value)
#target_dir = /tmp


[service-clients]

#
# From tempest.config
#

# Timeout in seconds to wait for the http request to return (integer
# value)
#http_timeout = 60

# Specify an http proxy to use. (string value)
#proxy_url = <None>


[service_available]

#
# From tempest.config
#

# Whether or not cinder is expected to be available (boolean value)
#cinder = true

# Whether or not neutron is expected to be available (boolean value)
#neutron = true

# Whether or not glance is expected to be available (boolean value)
#glance = true

# Whether or not swift is expected to be available (boolean value)
#swift = true

# Whether or not nova is expected to be available (boolean value)
#nova = true

# Whether or not horizon is expected to be available (boolean value)
#horizon = true


[validation]

#
# From tempest.config
#

# 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 (boolean value)
#run_validation = true

# Enable/disable security groups. (boolean value)
#security_group = true

# Enable/disable security group rules. (boolean value)
#security_group_rules = true

# Default IP type used for validation (string value)
# Possible values:
# fixed - uses the first IP belonging to the fixed network
# floating - creates and uses a floating IP
#connect_method = floating

# Default authentication method to the instance. Only ssh via keypair
# is supported for now. Additional methods will be handled in a
# separate spec. (string value)
# Possible values:
# keypair - <No description provided>
#auth_method = keypair

# Default IP version for ssh connections. (integer value)
#ip_version_for_ssh = 4

# Timeout in seconds to wait for ping to succeed. (integer value)
#ping_timeout = 120

# Timeout in seconds to wait for the TCP connection to be successful.
# (integer value)
#connect_timeout = 60

# Timeout in seconds to wait for the ssh banner. (integer value)
#ssh_timeout = 300

# User name used to authenticate to an instance. (string value)
#image_ssh_user = root

# User name used to authenticate to an alt instance. (string value)
#image_alt_ssh_user = root

# Password used to authenticate to an instance. (string value)
#image_ssh_password = password

# Password used to authenticate to an alt instance. (string value)
#image_alt_ssh_password = password

# Shell fragments to use before executing a command when sshing to a
# guest. (string value)
#ssh_shell_prologue = set -eu -o pipefail; PATH=$$PATH:/sbin:/usr/sbin;

# The packet size for ping packets originating from remote linux hosts
# (integer value)
#ping_size = 56

# The number of ping packets originating from remote linux hosts
# (integer value)
#ping_count = 1

# 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. (string value)
#floating_ip_range = 10.0.0.0/29

# Network used for SSH connections. Ignored if
# connect_method=floating. (string value)
#network_for_ssh = public

# Type of key to use for ssh connections. (string value)
# Possible values:
# ecdsa - <No description provided>
# rsa - <No description provided>
#ssh_key_type = ecdsa

# Allowed VM network connection downtime during live migration, in
# seconds. When the measured downtime exceeds this value, an exception
# is raised. (floating point value)
#allowed_network_downtime = 5.0

# Allowed VM metadata connection downtime during live migration, in
# seconds. When the measured downtime exceeds this value, an exception
# is raised. (floating point value)
#allowed_metadata_downtime = 6.0


[volume]

#
# From tempest.config
#

# Time in seconds between volume availability checks. (integer value)
#build_interval = 1

# Timeout in seconds to wait for a volume to become available.
# (integer value)
#build_timeout = 300

# Catalog type of the Volume Service (string value)
#catalog_type = block-storage

# 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. (string value)
#region =

# The endpoint type to use for the volume service. (string value)
# Possible values:
# public - <No description provided>
# admin - <No description provided>
# internal - <No description provided>
# publicURL - <No description provided>
# adminURL - <No description provided>
# internalURL - <No description provided>
#endpoint_type = publicURL

# What kind of backup_driver does cinder
# use?https://docs.openstack.org/cinder/latest/configuration/block-
# storage/backup-drivers.html (string value)
# Possible values:
# ceph - <No description provided>
# swift - <No description provided>
# nfs - <No description provided>
# glusterfs - <No description provided>
# posix - <No description provided>
# google - <No description provided>
# s3 - <No description provided>
#backup_driver = ceph

# A list of backend names separated by comma. The backend name must be
# declared in cinder.conf (list value)
#backend_names = BACKEND_1,BACKEND_2

# Volume type to be used while creating volume. (string value)
#volume_type =

# Multiattach volume type used while creating multiattach volume.
# (string value)
#volume_type_multiattach =

# Backend protocol to target when creating volume types (string value)
#storage_protocol = iSCSI

# Backend vendor to target when creating volume types (string value)
#vendor_name = Open Source

# Disk format to use when copying a volume to image (list value)
#disk_format = raw,qcow2

# Default size in GB for volumes created by volumes tests (integer
# value)
#volume_size = 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.
# (integer value)
#volume_size_extend = 1

# 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
# (list value)
#manage_volume_ref = source-name,volume-%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 (list value)
#manage_snapshot_ref = source-name,_snapshot-%s

# 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' (string value)
#min_microversion = <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' (string value)
#max_microversion = <None>


[volume-feature-enabled]

#
# From tempest.config
#

# Runs Cinder multi-backend test (requires 2 backends) (boolean value)
#multi_backend = false

# Runs Cinder volumes backup test (boolean value)
#backup = true

# Runs Cinder volume snapshot test (boolean value)
#snapshot = true

# Runs Cinder volume clone test (boolean value)
#clone = true

# Runs Cinder manage snapshot tests (boolean value)
#manage_snapshot = false

# Runs Cinder manage volume tests (boolean value)
#manage_volume = false

# A list of enabled volume extensions with a special entry all which
# indicates every extension is enabled. Empty list indicates all
# extensions are disabled (list value)
#api_extensions = all

# 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. (boolean
# value)
#extend_attached_volume = 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. (boolean value)
#extend_attached_encrypted_volume = false

# Does the cloud support extending the size of a volume which has
# snapshot? Some drivers do not support this operation. (boolean
# value)
#extend_volume_with_snapshot = true

# Volume types used for data volumes. Multiple volume types can be
# assigned. (string value)
#volume_types_for_data_volume = <None>

# Run tests for dependencies between images, volumes and instance
# snapshots (boolean value)
# Deprecated group/name - [volume-feature-enabled]/volume_image_dep_tests
#enable_volume_image_dep_tests = true