From c8a39b488b97dd876af39567f8096f15dd36b802 Mon Sep 17 00:00:00 2001 From: Matthew Treinish Date: Mon, 27 Jul 2015 17:07:37 -0400 Subject: [PATCH] Stop gating on sample generation check This removes the check on in tree sample generation to ensure the file matches the config options. However, to counter the loss of the in-tree the tempest init command will now automatically generate a new sample config in the local etc dir when run. This will include all of the oslo options that were previously included in the in-tree sample file. Additionally, the docs now contain the complete text of the generated sample output. These also get published on docs.openstack.org on each commit to tempest. Between this 2 alternatives there shouldn't be a need to keep the file in tree anymore, especially given the weekly headaches with new oslo releases changing the config option help breaking the job. Change-Id: Ie3bc368329d240ca9604cc2f9b2cac544b3ee715 Depends-On: I4064a041a965ed2419b68efc8dc31fce37b24cfd --- .gitignore | 1 + etc/tempest.conf.sample | 1243 -------------------------------- tempest/cmd/init.py | 7 + tools/config/check_uptodate.sh | 29 - tox.ini | 1 - 5 files changed, 8 insertions(+), 1273 deletions(-) delete mode 100644 etc/tempest.conf.sample delete mode 100755 tools/config/check_uptodate.sh diff --git a/.gitignore b/.gitignore index 043de0040b..f584532f68 100644 --- a/.gitignore +++ b/.gitignore @@ -2,6 +2,7 @@ AUTHORS ChangeLog *.pyc etc/tempest.conf +etc/tempest.conf.sample etc/logging.conf include/swift_objects/swift_small include/swift_objects/swift_medium diff --git a/etc/tempest.conf.sample b/etc/tempest.conf.sample deleted file mode 100644 index c97eb97091..0000000000 --- a/etc/tempest.conf.sample +++ /dev/null @@ -1,1243 +0,0 @@ -[DEFAULT] - -# -# From oslo.log -# - -# Print debugging output (set logging level to DEBUG instead of -# default INFO level). (boolean value) -#debug = false - -# If set to false, will disable INFO logging level, making WARNING the -# default. (boolean value) -# This option is deprecated for removal. -# Its value may be silently ignored in the future. -#verbose = true - -# 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. -# (string value) -# Deprecated group/name - [DEFAULT]/log_config -#log_config_append = - -# DEPRECATED. A logging.Formatter log message format string which may -# use any of the available logging.LogRecord attributes. This option -# is deprecated. Please use logging_context_format_string and -# logging_default_format_string instead. (string value) -#log_format = - -# Format string for %%(asctime)s in log records. Default: %(default)s -# . (string value) -#log_date_format = %Y-%m-%d %H:%M:%S - -# (Optional) Name of log file to output to. If no default is set, -# logging will go to stdout. (string value) -# Deprecated group/name - [DEFAULT]/logfile -#log_file = - -# (Optional) The base directory used for relative --log-file paths. -# (string value) -# Deprecated group/name - [DEFAULT]/logdir -#log_dir = - -# Use syslog for logging. Existing syslog format is DEPRECATED and -# will be changed later to honor RFC5424. (boolean value) -#use_syslog = false - -# (Optional) Enables or disables syslog rfc5424 format for logging. If -# enabled, prefixes the MSG part of the syslog message with APP-NAME -# (RFC5424). The format without the APP-NAME is deprecated in K, and -# will be removed in M, along with this option. (boolean value) -# This option is deprecated for removal. -# Its value may be silently ignored in the future. -#use_syslog_rfc_format = true - -# Syslog facility to receive log lines. (string value) -#syslog_log_facility = LOG_USER - -# Log output to standard error. (boolean value) -#use_stderr = true - -# Format string to use for log messages with context. (string value) -#logging_context_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [%(request_id)s %(user_identity)s] %(instance)s%(message)s - -# Format string to use for log messages without context. (string -# value) -#logging_default_format_string = %(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [-] %(instance)s%(message)s - -# Data to append to log format when level is DEBUG. (string value) -#logging_debug_format_suffix = %(funcName)s %(pathname)s:%(lineno)d - -# Prefix each line of exception output with this format. (string -# value) -#logging_exception_prefix = %(asctime)s.%(msecs)03d %(process)d ERROR %(name)s %(instance)s - -# List of logger=LEVEL pairs. (list value) -#default_log_levels = amqp=WARN,amqplib=WARN,boto=WARN,qpid=WARN,sqlalchemy=WARN,suds=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 - -# 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] " - -# Enables or disables fatal status of deprecations. (boolean value) -#fatal_deprecations = false - -# -# From tempest.config -# - -# Prefix to be added when generating the name for test resources. It -# can be used to discover all resources associated with a specific -# test run when running tempest on a real-life cloud (string value) -#resources_prefix = tempest - - -[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 = - -# Allows test cases to create/destroy tenants 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) -# Deprecated group/name - [compute]/allow_tenant_isolation -# Deprecated group/name - [orchestration]/allow_tenant_isolation -#allow_tenant_isolation = 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) -# Deprecated group/name - [auth]/tenant_isolation_domain_name -#default_credentials_domain_name = Default - -# If allow_tenant_isolation is set to True and Neutron is enabled -# Tempest will try to create a useable network, subnet, and router -# when needed for each tenant 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 - - -[baremetal] - -# -# From tempest.config -# - -# Catalog type of the baremetal provisioning service (string value) -#catalog_type = baremetal - -# Whether the Ironic nova-compute driver is enabled (boolean value) -#driver_enabled = false - -# Driver name which Ironic uses (string value) -#driver = fake - -# The endpoint type to use for the baremetal provisioning service -# (string value) -# Allowed values: public, admin, internal, publicURL, adminURL, internalURL -#endpoint_type = publicURL - -# Timeout for Ironic node to completely provision (integer value) -#active_timeout = 300 - -# Timeout for association of Nova instance and Ironic node (integer -# value) -#association_timeout = 30 - -# Timeout for Ironic power transitions. (integer value) -#power_timeout = 60 - -# Timeout for unprovisioning an Ironic node. Takes longer since Kilo -# as Ironic performs an extra step in Node cleaning. (integer value) -#unprovision_timeout = 300 - - -[boto] - -# -# From tempest.config -# - -# EC2 URL (string value) -#ec2_url = http://localhost:8773/services/Cloud - -# S3 URL (string value) -#s3_url = http://localhost:8080 - -# AWS Secret Key (string value) -#aws_secret = - -# AWS Access Key (string value) -#aws_access = - -# AWS Zone for EC2 tests (string value) -#aws_zone = nova - -# S3 Materials Path (string value) -#s3_materials_path = /opt/stack/devstack/files/images/s3-materials/cirros-0.3.0 - -# ARI Ramdisk Image manifest (string value) -#ari_manifest = cirros-0.3.0-x86_64-initrd.manifest.xml - -# AMI Machine Image manifest (string value) -#ami_manifest = cirros-0.3.0-x86_64-blank.img.manifest.xml - -# AKI Kernel Image manifest (string value) -#aki_manifest = cirros-0.3.0-x86_64-vmlinuz.manifest.xml - -# Instance type (string value) -#instance_type = m1.tiny - -# boto Http socket timeout (integer value) -#http_socket_timeout = 3 - -# boto num_retries on error (integer value) -#num_retries = 1 - -# Status Change Timeout (integer value) -#build_timeout = 60 - -# Status Change Test Interval (integer value) -#build_interval = 1 - - -[compute] - -# -# From tempest.config -# - -# Valid primary image reference to be used in tests. This is a -# required option (string value) -#image_ref = - -# 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 = - -# 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 - -# User name used to authenticate to an instance. (string value) -#image_ssh_user = root - -# Password used to authenticate to an instance. (string value) -#image_ssh_password = password - -# User name used to authenticate to an instance using the alternate -# image. (string value) -#image_alt_ssh_user = root - -# 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 - -# 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; - -# Auth method used for authenticate to the instance. Valid choices -# are: keypair, configured, adminpass and disabled. Keypair: start the -# servers with a ssh keypair. Configured: use the configured user and -# password. Adminpass: use the injected adminPass. Disabled: avoid -# using ssh when it is an option. (string value) -#ssh_auth_method = keypair - -# How to connect to the instance? fixed: using the first ip belongs -# the fixed network floating: creating and using a floating ip. -# (string value) -#ssh_connect_method = floating - -# User name used to authenticate to an instance. (string value) -#ssh_user = root - -# Timeout in seconds to wait for ping to succeed. (integer value) -#ping_timeout = 120 - -# 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 - -# 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 tenants. If -# multiple networks are available for a tenant 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 = - -# Network used for SSH connections. Ignored if -# use_floatingip_for_ssh=true or run_validation=false. (string value) -#network_for_ssh = public - -# Does SSH use Floating IPs? (boolean value) -#use_floatingip_for_ssh = true - -# 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) -# Allowed values: public, admin, internal, publicURL, adminURL, internalURL -#endpoint_type = publicURL - -# Expected device name when a volume is attached to an instance -# (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 time -# should be the same as the time of nova.conf, and some tests will run -# for as long as the time. (integer value) -#shelved_offload_time = 0 - -# 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 - - -[compute-feature-enabled] - -# -# From tempest.config -# - -# If false, skip disk config tests (boolean value) -#disk_config = true - -# A list of enabled compute extensions with a special entry all which -# indicates every extension is enabled. Each extension should be -# specified with alias name. Empty list indicates all extensions are -# disabled (list value) -#api_extensions = all - -# 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? (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 suspend/resume? (boolean value) -#suspend = true - -# Does the test environment support live migration available? (boolean -# value) -#live_migration = true - -# 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 block migration support cinder iSCSI -# volumes. Note, libvirt doesn't support this, see -# https://bugs.launchpad.net/nova/+bug/1398999 (boolean value) -#block_migrate_cinder_iscsi = false - -# Does the test system allow live-migration of paused instances? Note, -# this is more than just the ANDing of paused and live_migrate, but -# all 3 should be set to True to run those tests (boolean value) -#live_migrate_paused_instances = false - -# Enable VNC console. This configuration value should be same as -# [nova.vnc]->vnc_enabled in nova.conf (boolean value) -#vnc_console = false - -# Enable Spice console. This configuration value should be same as -# [nova.spice]->enabled in nova.conf (boolean value) -#spice_console = false - -# Enable RDP console. This configuration value should be same as -# [nova.rdp]->enabled in nova.conf (boolean value) -#rdp_console = false - -# Does the test environment support instance rescue mode? (boolean -# value) -#rescue = true - -# Enables returning of the instance password by the relevant server -# API calls such as create, rebuild or rescue. (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 have the ec2 api running? (boolean value) -#ec2_api = true - -# Does Nova preserve preexisting ports from Neutron when deleting an -# instance? This should be set to True if testing Kilo+ Nova. (boolean -# value) -#preserve_ports = 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 - -# Does the test environment support creating instances with multiple -# ports on the same network? This is only valid when using Neutron. -# (boolean value) -#allow_duplicate_networks = false - - -[dashboard] - -# -# From tempest.config -# - -# Where the dashboard can be found (string value) -#dashboard_url = http://localhost/ - -# Login page for the dashboard (string value) -#login_url = http://localhost/auth/login/ - - -[data_processing] - -# -# From tempest.config -# - -# Catalog type of the data processing service. (string value) -#catalog_type = data_processing - -# The endpoint type to use for the data processing service. (string -# value) -# Allowed values: public, admin, internal, publicURL, adminURL, internalURL -#endpoint_type = publicURL - - -[data_processing-feature-enabled] - -# -# From tempest.config -# - -# List of enabled data processing plugins (list value) -#plugins = vanilla,hdp - - -[database] - -# -# From tempest.config -# - -# Catalog type of the Database service. (string value) -#catalog_type = database - -# Valid primary flavor to use in database tests. (string value) -#db_flavor_ref = 1 - -# Current database version to use in database tests. (string value) -#db_current_version = v1.0 - - -[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 = - - -[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 = - -# Full URI of the OpenStack Identity API (Keystone), v2 (string value) -#uri = - -# Full URI of the OpenStack Identity API (Keystone), v3 (string value) -#uri_v3 = - -# Identity API version to be used for authentication for API tests. -# (string value) -#auth_version = v2 - -# 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 - -# The endpoint type to use for the identity service. (string value) -# Allowed values: public, admin, internal, publicURL, adminURL, internalURL -#endpoint_type = publicURL - -# Username to use for Nova API requests. (string value) -#username = - -# Tenant name to use for Nova API requests. (string value) -#tenant_name = - -# Role required to administrate keystone. (string value) -#admin_role = admin - -# API key to use when authenticating. (string value) -#password = - -# Domain name for authentication (Keystone V3).The same domain applies -# to user and project (string value) -#domain_name = - -# Username of alternate user to use for Nova API requests. (string -# value) -#alt_username = - -# Alternate user's Tenant name to use for Nova API requests. (string -# value) -#alt_tenant_name = - -# API key to use when authenticating as alternate user. (string value) -#alt_password = - -# Alternate domain name for authentication (Keystone V3).The same -# domain applies to user and project (string value) -#alt_domain_name = - -# Administrative Username to use for Keystone API requests. (string -# value) -#admin_username = - -# Administrative Tenant name to use for Keystone API requests. (string -# value) -#admin_tenant_name = - -# API key to use when authenticating as admin. (string value) -#admin_password = - -# Admin domain name for authentication (Keystone V3).The same domain -# applies to user and project (string value) -#admin_domain_name = - -# ID of the default domain (string value) -#default_domain_id = default - - -[identity-feature-enabled] - -# -# From tempest.config -# - -# Does the identity service have delegation and impersonation enabled -# (boolean value) -#trust = true - -# Is the v2 identity API enabled (boolean value) -#api_v2 = true - -# Is the v3 identity API enabled (boolean value) -#api_v3 = true - - -[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) -# Allowed values: public, admin, internal, publicURL, adminURL, internalURL -#endpoint_type = publicURL - -# http accessible image (string value) -#http_image = http://download.cirros-cloud.net/0.3.1/cirros-0.3.1-x86_64-uec.tar.gz - -# 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 - - -[image-feature-enabled] - -# -# From tempest.config -# - -# Is the v2 image API enabled (boolean value) -#api_v2 = true - -# Is the v1 image API enabled (boolean value) -#api_v1 = true - -# Is the deactivate-image feature enabled. The feature has been -# integrated since Kilo. (boolean value) -#deactivate_image = false - - -[input-scenario] - -# -# From tempest.config -# - -# Matching images become parameters for scenario tests (string value) -#image_regex = ^cirros-0.3.1-x86_64-uec$ - -# Matching flavors become parameters for scenario tests (string value) -#flavor_regex = ^m1.nano$ - -# SSH verification in tests is skippedfor matching images (string -# value) -#non_ssh_image_regex = ^.*[Ww]in.*$ - -# List of user mapped to regex to matching image names. (string value) -#ssh_user_regex = [["^.*[Cc]irros.*$", "cirros"]] - - -[messaging] - -# -# From tempest.config -# - -# Catalog type of the Messaging service. (string value) -#catalog_type = messaging - -# The maximum number of queue records per page when listing queues -# (integer value) -#max_queues_per_page = 20 - -# The maximum metadata size for a queue (integer value) -#max_queue_metadata = 65536 - -# The maximum number of queue message per page when listing (or) -# posting messages (integer value) -#max_messages_per_page = 20 - -# The maximum size of a message body (integer value) -#max_message_size = 262144 - -# The maximum number of messages per claim (integer value) -#max_messages_per_claim = 20 - -# The maximum ttl for a message (integer value) -#max_message_ttl = 1209600 - -# The maximum ttl for a claim (integer value) -#max_claim_ttl = 43200 - -# The maximum grace period for a claim (integer value) -#max_claim_grace = 43200 - - -[negative] - -# -# From tempest.config -# - -# Test generator class for all negative tests (string value) -#test_generator = tempest.common.generator.negative_generator.NegativeTestGenerator - - -[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) -# Allowed values: public, admin, internal, publicURL, adminURL, internalURL -#endpoint_type = publicURL - -# The cidr block to allocate tenant ipv4 subnets from (string value) -#tenant_network_cidr = 10.100.0.0/16 - -# The mask bits for tenant ipv4 subnets (integer value) -#tenant_network_mask_bits = 28 - -# The cidr block to allocate tenant ipv6 subnets from (string value) -#tenant_network_v6_cidr = 2003::/48 - -# The mask bits for tenant ipv6 subnets (integer value) -#tenant_network_v6_mask_bits = 64 - -# Whether tenant networks can be reached directly from the test -# client. This must be set to True when the 'fixed' ssh_connect_method -# is selected. (boolean value) -#tenant_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 = - -# 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 - -# List of dns servers which should be used for subnet creation (list -# value) -#dns_servers = 8.8.8.8,8.8.4.4 - -# vnic_type to use when Launching instances with pre-configured ports. -# Supported ports are: ['normal','direct','macvtap'] (string value) -# Allowed values: , normal, direct, macvtap -#port_vnic_type = - - -[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: 'neutron -# ext-list' (list value) -#api_extensions = 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 - - -[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) -# Allowed values: public, admin, internal, publicURL, adminURL, internalURL -#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 - - -[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 - - -[orchestration] - -# -# From tempest.config -# - -# Catalog type of the Orchestration service. (string value) -#catalog_type = orchestration - -# The orchestration 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 orchestration service. (string -# value) -# Allowed values: public, admin, internal, publicURL, adminURL, internalURL -#endpoint_type = publicURL - -# Role required for users to be able to manage stacks (string value) -#stack_owner_role = heat_stack_owner - -# Time in seconds between build status checks. (integer value) -#build_interval = 1 - -# Timeout in seconds to wait for a stack to build. (integer value) -#build_timeout = 1200 - -# Instance type for tests. Needs to be big enough for a full OS plus -# the test workload (string value) -#instance_type = m1.micro - -# Name of existing keypair to launch servers with. (string value) -#keypair_name = - -# Value must match heat configuration of the same name. (integer -# value) -#max_template_size = 524288 - -# Value must match heat configuration of the same name. (integer -# value) -#max_resources_per_stack = 1000 - - -[oslo_concurrency] - -# -# From oslo.concurrency -# - -# Enables or disables inter-process locks. (boolean value) -# Deprecated group/name - [DEFAULT]/disable_process_locking -#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) -# Deprecated group/name - [DEFAULT]/lock_path -#lock_path = - - -[scenario] - -# -# From tempest.config -# - -# Directory containing image files (string value) -#img_dir = /opt/stack/new/devstack/files/images/cirros-0.3.1-x86_64-uec - -# Image file name (string value) -# Deprecated group/name - [DEFAULT]/qcow2_img_file -#img_file = 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 = - -# AMI image file name (string value) -#ami_img_file = cirros-0.3.1-x86_64-blank.img - -# ARI image file name (string value) -#ari_img_file = cirros-0.3.1-x86_64-initrd - -# AKI image file name (string value) -#aki_img_file = cirros-0.3.1-x86_64-vmlinuz - -# ssh username for the image file (string value) -#ssh_user = cirros - -# specifies how many resources to request at once. Used for large -# operations testing. (integer value) -#large_ops_number = 0 - -# DHCP client used by images to renew DCHP lease. If left empty, -# update operation will be skipped. Supported clients: "udhcpc", -# "dhclient" (string value) -# Allowed values: udhcpc, dhclient -#dhcp_client = udhcpc - - -[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 = false - -# 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 Heat is expected to be available (boolean value) -#heat = false - -# Whether or not Ceilometer is expected to be available (boolean -# value) -#ceilometer = true - -# Whether or not Horizon is expected to be available (boolean value) -#horizon = true - -# Whether or not Sahara is expected to be available (boolean value) -#sahara = false - -# Whether or not Ironic is expected to be available (boolean value) -#ironic = false - -# Whether or not Trove is expected to be available (boolean value) -#trove = false - -# Whether or not Zaqar is expected to be available (boolean value) -#zaqar = false - - -[stress] - -# -# From tempest.config -# - -# Directory containing log files on the compute nodes (string value) -#nova_logdir = - -# Maximum number of instances to create during test. (integer value) -#max_instances = 16 - -# Controller host. (string value) -#controller = - -# Controller host. (string value) -#target_controller = - -# ssh user. (string value) -#target_ssh_user = - -# Path to private key. (string value) -#target_private_key_path = - -# regexp for list of log files. (string value) -#target_logfiles = - -# time (in seconds) between log file error checks. (integer value) -#log_check_interval = 60 - -# The number of threads created while stress test. (integer value) -#default_thread_number_per_action = 4 - -# Prevent the cleaning (tearDownClass()) between each stress test run -# if an exception occurs during this run. (boolean value) -#leave_dirty_stack = false - -# Allows a full cleaning process after a stress test. Caution : this -# cleanup will remove every objects of every tenant. (boolean value) -#full_clean_stack = false - - -[telemetry] - -# -# From tempest.config -# - -# Catalog type of the Telemetry service. (string value) -#catalog_type = metering - -# The endpoint type to use for the telemetry service. (string value) -# Allowed values: public, admin, internal, publicURL, adminURL, internalURL -#endpoint_type = publicURL - -# This variable is used as flag to enable notification tests (boolean -# value) -#too_slow_to_test = true - - -[telemetry-feature-enabled] - -# -# From tempest.config -# - -# Runs Ceilometer event-related tests (boolean value) -#events = false - - -[validation] - -# -# From tempest.config -# - -# Enable ssh on created servers and creation of additional validation -# resources to enable remote access (boolean value) -# Deprecated group/name - [compute]/run_ssh -#run_validation = false - -# Default IP type used for validation: -fixed: uses the first IP -# belonging to the fixed network -floating: creates and uses a -# floating IP (string value) -# Allowed values: fixed, floating -#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) -# Allowed values: keypair -#auth_method = keypair - -# Default IP version for ssh connections. (integer value) -# Deprecated group/name - [compute]/ip_version_for_ssh -#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) -# Deprecated group/name - [compute]/ssh_channel_timeout -#connect_timeout = 60 - -# Timeout in seconds to wait for the ssh banner. (integer value) -# Deprecated group/name - [compute]/ssh_timeout -#ssh_timeout = 300 - - -[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 = volume - -# 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) -# Allowed values: public, admin, internal, publicURL, adminURL, internalURL -#endpoint_type = publicURL - -# Name of the backend1 (must be declared in cinder.conf) (string -# value) -#backend1_name = BACKEND_1 - -# Name of the backend2 (must be declared in cinder.conf) (string -# value) -#backend2_name = BACKEND_2 - -# 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 (string value) -#disk_format = raw - -# Default size in GB for volumes created by volumes tests (integer -# value) -#volume_size = 1 - - -[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 - -# 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 - -# Is the v1 volume API enabled (boolean value) -#api_v1 = true - -# Is the v2 volume API enabled (boolean value) -#api_v2 = true - -# Update bootable status of a volume Not implemented on icehouse -# (boolean value) -#bootable = false diff --git a/tempest/cmd/init.py b/tempest/cmd/init.py index c13fbe5e23..0396495bbe 100644 --- a/tempest/cmd/init.py +++ b/tempest/cmd/init.py @@ -67,6 +67,11 @@ class TempestInit(command.Command): def copy_config(self, etc_dir, config_dir): shutil.copytree(config_dir, etc_dir) + def generate_sample_config(self, local_dir): + subprocess.call(['oslo-config-generator', '--config-file', + 'tools/config/config-generator.tempest.conf'], + cwd=local_dir) + def create_working_dir(self, local_dir, config_dir): # Create local dir if missing if not os.path.isdir(local_dir): @@ -87,6 +92,8 @@ class TempestInit(command.Command): os.mkdir(log_dir) # Create and copy local etc dir self.copy_config(etc_dir, config_dir) + # Generate the sample config file + self.generate_sample_config(local_dir) # Update local confs to reflect local paths self.update_local_conf(config_path, lock_dir, log_dir) # Generate a testr conf file diff --git a/tools/config/check_uptodate.sh b/tools/config/check_uptodate.sh deleted file mode 100755 index 7b08695c8f..0000000000 --- a/tools/config/check_uptodate.sh +++ /dev/null @@ -1,29 +0,0 @@ -#!/usr/bin/env bash - -PROJECT_NAME=${PROJECT_NAME:-tempest} -CFGFILE_NAME=${PROJECT_NAME}.conf.sample - -if [ -e etc/${PROJECT_NAME}/${CFGFILE_NAME} ]; then - CFGFILE=etc/${PROJECT_NAME}/${CFGFILE_NAME} -elif [ -e etc/${CFGFILE_NAME} ]; then - CFGFILE=etc/${CFGFILE_NAME} -else - echo "${0##*/}: can not find config file" - exit 1 -fi - -TEMPDIR=`mktemp -d /tmp/${PROJECT_NAME}.XXXXXX` -trap "rm -rf $TEMPDIR" EXIT - -oslo-config-generator --config-file tools/config/config-generator.tempest.conf --output-file ${TEMPDIR}/${CFGFILE_NAME} -if [ $? != 0 ] -then - exit 1 -fi - -if ! diff -u ${TEMPDIR}/${CFGFILE_NAME} ${CFGFILE} -then - echo "${0##*/}: ${PROJECT_NAME}.conf.sample is not up to date." - echo "${0##*/}: Please run tox -egenconfig." - exit 1 -fi diff --git a/tox.ini b/tox.ini index cd1879ef06..eae6fc76d7 100644 --- a/tox.ini +++ b/tox.ini @@ -116,7 +116,6 @@ commands = [testenv:pep8] commands = flake8 {posargs} - {toxinidir}/tools/config/check_uptodate.sh python tools/check_uuid.py [testenv:uuidgen]