# Summary of the feature set. # Deploy an non-ha Openstack environment, without SSL, introspect, and # ready to execute tempest tests. # Example of usage: # ./quickstart.sh -t all --retain-inventory -c \ # @config/general_config/featureset021.yml -R tripleo-ci/consistent-master \ # -T all $VIRTHOST # This enables TLS for the undercloud which will also make haproxy bind to the # configured public-vip and admin-vip. undercloud_generate_service_certificate: true ssl_overcloud: false overcloud_templates_path: /usr/share/openstack-tripleo-heat-templates undercloud_templates_path: /usr/share/openstack-tripleo-heat-templates step_introspect: true # This enables container deployements after Pike containerized_overcloud: >- {% if release in ['newton', 'ocata', 'pike'] -%} false {%- else -%} true {%- endif -%} delete_docker_cache: true containerized_undercloud: >- {% if release not in ['newton','ocata','pike','queens'] -%} true {%- else -%} false {%- endif -%} ctlplane_masquerade: >- {% if release not in ['newton','ocata','pike','queens'] -%} true {%- else -%} false {%- endif -%} undercloud_enable_routed_networks: >- {% if release not in ['newton','ocata','pike'] -%} true {%- else -%} false {%- endif -%} undercloud_clean_nodes: >- {% if release not in ['newton','ocata','pike'] -%} true {%- else -%} false {%- endif -%} undercloud_inspection_extras: false undercloud_custom_env_files: "{{ working_dir }}/undercloud-parameter-defaults.yaml" undercloud_cloud_domain: "localdomain" undercloud_undercloud_hostname: "undercloud.{{ undercloud_cloud_domain }}" undercloud_resource_registry_args: "OS::TripleO::Undercloud::Net::SoftwareConfig": "{{ undercloud_templates_path }}/net-config-undercloud.yaml" # Tell tripleo about our environment enable_pacemaker: true network_isolation: true network_isolation_type: "multiple-nics" network_isolation_args: >- -e {{ overcloud_templates_path }}/ci/environments/network/multiple-nics/network-isolation-absolute.yaml -e {{ overcloud_templates_path }}/ci/environments/network/multiple-nics/network-environment.yaml # This featureset is extremely resource intensive, so we disable telemetry # in order to reduce the overall memory footprint # This is not required in newton telemetry_args: >- {% if release != 'newton' %} -e {{ overcloud_templates_path }}/environments/disable-telemetry.yaml {% endif %} extra_args: '' # keep the doc gen settings at the bottom of the config file. # options below direct automatic doc generation by tripleo-collect-logs artcl_gen_docs: true artcl_create_docs_payload: included_deployment_scripts: - undercloud-install - overcloud-custom-tht-script - "{% if release not in ['newton', 'ocata', 'pike'] -%}overcloud-prep-containers{%- endif -%}" - overcloud-prep-flavors - overcloud-prep-images - overcloud-prep-network - overcloud-deploy - overcloud-deploy-post - overcloud-validate - tempest-setup - "{% if run_tempest|bool and tempest_format|default('packages') == 'containers' -%}tempest_container{%- endif -%}" included_static_docs: - env-setup-virt table_of_contents: - env-setup-virt - undercloud-install - overcloud-custom-tht-script - "{% if release not in ['newton', 'ocata', 'pike'] -%}overcloud-prep-containers{%- endif -%}" - overcloud-prep-flavors - overcloud-prep-images - overcloud-prep-network - overcloud-deploy - overcloud-deploy-post - overcloud-validate - tempest-setup - "{% if run_tempest|bool and tempest_format|default('packages') == 'containers' -%}tempest_container{%- endif -%}" deploy_steps_ansible_workflow: >- {% if release not in ['newton','ocata','pike'] -%} true {%- else -%} false {%- endif -%} config_download_args: >- {% if release in ['queens'] -%} -e /usr/share/openstack-tripleo-heat-templates/environments/config-download-environment.yaml --config-download --verbose {%- endif -%} # Tempest configuration, keep always at the end of the file # Tempest # Run containerized tempest from master and ongoing tempest_format: >- {% if containerized_undercloud|bool -%} container {%- else -%} packages {%- endif -%} undercloud_enable_tempest: >- {% if release not in ['newton', 'ocata', 'pike', 'queens'] -%} true {%- else -%} false {%- endif -%} # Featureset 021 is a special case where we do not run full tempest # but just the tests on skiplist skip_test_file: "{{ playbook_dir | dirname }}/vars/tempest_skip_{{ release | default('master') }}.yml" skip_list_tests: "{{ lookup('file', skip_test_file) | from_yaml }}" # This filter the known_failures where the undercloud value is not true # and return a list tempest_whitelist: "{{ skip_list_tests.known_failures | json_query('[?undercloud != `true`].test') }}" # Need to set test_white_regex to empty, otherwise it gets the default value that is '(smoke)' test_white_regex: '' test_black_regex: - 'sahara_tempest_plugin' - 'manila_tempest_tests' - 'patrole_tempest_plugin' - 'zaqar_tempest_plugin' - 'watcher_tempest_plugin' - 'vitrage_tempest_plugin' - 'trove_tempest_plugin' - 'tripleo_common_tempest_plugin' - 'tempest_horizon' - 'octavia_tempest_plugin' - 'novajoin_tempest_plugin' - 'murano_tempest_tests' - 'mistral_tempest_tests' - 'magnum_tempest_plugin' - 'kuryr_tempest_plugin' - 'ironic_tempest_plugin' - 'heat_tempest_plugin' - 'designate_tempest_plugin' - 'congress_tempest_plugin' - 'barbican_tempest_plugin' - 'ec2api_tempest_plugin' test_ping: false # Run tempest without skip file skip_file_src: '' # For full tempest run we need to make sure concurrency is not too high tempest_workers: 3 # Settings specific to os_tempest # Settings for os_tempest run_tempest: >- {% if release not in ['pike', 'queens', 'rocky', 'stein'] -%} false {%- else -%} true {%- endif -%} use_os_tempest: >- {% if release not in ['pike', 'queens', 'rocky', 'stein'] -%} true {%- else -%} false {%- endif -%} # It will create a public network name 'public' using os_tempest tempest_interface_name: public # In order to have a public network with external connectivity, we need to use # flat network type tempest_public_net_provider_type: flat # It is the physical network name through which public network will be created # having connectivity with external world. tempest_public_net_physical_name: datacentre # Setting the tempest_cidr as it is required while creating public subnet from which # floating IPs gets assigned tempest_cidr: '10.0.0.0/24' tempest_private_net_seg_id: '' tempest_install_method: distro # Having tempest_network_ping_gateway set to true allows to ping any of the IP from # router to find out network related issue in the deployment early tempest_network_ping_gateway: true # It is the python-tempestconf profile which also consumes tempest-deployer-input file tempest_tempestconf_profile: debug: true create: true deployer-input: "{{ ansible_user_dir }}/tempest-deployer-input.conf" os-cloud: "{{ tempest_cloud_name }}" out: "{{ tempest_workspace }}/etc/tempest.conf" network-id: "{{ tempest_neutron_public_network_id }}" overrides: "{{ tempest_tempest_conf_overrides | default({}) }}" # Run skiplist as whitelist tempest_test_whitelist: "{{ tempest_whitelist }}" # Keeping the blacklist list empty tempest_test_blacklist: "" # Set tempest concurrency tempest_run_concurrency: 3 # List of tempest plugins to install tempest_services: - cinder - neutron # Install the latest unlreleased packages from CentOS enable_centos_cr_repo: true