fuel-qa/doc/base_tests.rst

12 KiB

Base tests

General OpenStack/Fuel Tests

General tests

Base Test Case

fuelweb_test.tests.base_test_case

Admin Node Tests

fuelweb_test.tests.test_admin_node

Test Admin Node Backup-Restore

fuelweb_test.tests.test_backup_restore

Test Bonding base

fuelweb_test.tests.test_bonding_base

Test Bonding

fuelweb_test.tests.test_bonding

Test Bond offloading types

fuelweb_test.tests.test_bond_offloading

Test By Tempest

fuelweb_test.tests.test_by_tempest

Test Ceph

fuelweb_test.tests.test_ceph

Test Cli

fuelweb_test.tests.test_cli

Test Cli Base

fuelweb_test.tests.test_cli_base

Test Clone Environment

fuelweb_test.tests.test_clone_env

Test custom hostname

fuelweb_test.tests.test_custom_hostname

Test Environment Action

fuelweb_test.tests.test_environment_action

Test High Availability on one controller

fuelweb_test.tests.test_ha_one_controller

Test High Availability on one controller base

fuelweb_test.tests.test_ha_one_controller_base

Test jumbo frames

fuelweb_test.tests.test_jumbo_frames

Test Multiple Networks

fuelweb_test.tests.test_multiple_networks

Test network templates base

fuelweb_test.tests.test_net_templates_base

Test network templates

fuelweb_test.tests.test_net_templates

Test Neutron

fuelweb_test.tests.test_neutron

Test Neutron Public

fuelweb_test.tests.test_neutron_public

Test Neutron VXLAN

fuelweb_test.tests.test_neutron_tun

Test Neutron VXLAN base

fuelweb_test.tests.test_neutron_tun_base

Test Node reinstallation

fuelweb_test.tests.test_node_reinstallation

Test Node reassignment

fuelweb_test.tests.test_node_reassignment

Test offloading types

fuelweb_test.tests.test_offloading_types

Test Pull Requests

fuelweb_test.tests.test_pullrequest

Test Reduced Footprint

fuelweb_test.tests.test_reduced_footprint

Test Services

fuelweb_test.tests.test_services

Test Ubuntu bootstrap

fuelweb_test.tests.test_ubuntu_bootstrap

Test Vcenter

fuelweb_test.tests.test_vcenter

Test Zabbix

fuelweb_test.tests.test_zabbix

Test Ironic

fuelweb_test.tests.test_ironic_base

Test Services reconfiguration

fuelweb_test.tests.test_services_reconfiguration

Gating tests

Test Fuel agent

gates_tests.tests.test_review_in_fuel_agent

Fuel mirror verification

Tests to check that mirror is created in various scenarios

Fuel create mirror is made to simplify process of mirror creation for our customers who do not have internet access on-site. It is rewritten from bash to python.

Fuel create mirror features:

  1. Minimize size of packages in a mirror;
  2. Download packages in parallel.

Such features can cause some problems:

  1. During packages resolving to minimize mirror size we found such issues:

1.1) Incorrect versions. When we have multiple mirrors, some version can be skipped due to name duplication. But it is still needed by bootstrap/deploy.

1.2) Mirror/version collisions. Sometimes package present in number of mirrors and not always correct version corresponds to correct site.

1.3) There are special mirror on Fuel iso, which differs from http://mirror.fuel-infra.org/ .

  1. With concurrent packages fetching complications are:

2.1) Some mirrors are unable to support download in multiple threads and fail or reject to support concurrency. In such cases we are abandoning concurrent downloads on such mirrors.

2.2) Common concurrency pitfalls: race conditions for resources like lists to process.

2.3) Problems with offset based downloads. Some packages were broken and it had been found out only during package installation.

fuelweb_test.tests.tests_mirrors.test_create_mirror

Tests to verify installation from packages mirrors

After mirror is created we should be able to deploy environment with it.

Fuel-mirror updates default repo urls for deployment and we do not have to set them up for new environments.But be careful. If you want to deploy environments with vanilla mirrors from iso, You should update settings in environment. Currently there is no option to update default mirrors from UI/cli.

Fuel-mirror updates repo list with internal structures: https://github.com/bgaifullin/packetary/blob/packetary3/contrib/fuel_mirror/fuel_mirror/commands/create.py#L224-L243

Repository should be able to do two things:

  1. Create bootstrap iso for provisioning;

2) Provide packages for deployment. Packages from dependencies in http://mirror.fuel-infra.org/ do not cover all the needed packages. So we need to mix in list of required packages: https://github.com/bgaifullin/packetary/blob/packetary3/contrib/fuel_mirror/etc/config.yaml#L46-L96

Problems:

1) We need to install not only 'depends', but also 'recommends' packages: https://wiki.ubuntu.com/LucidLynx/ReleaseNotes/#Recommended_packages_installed_by_default http://askubuntu.com/questions/18545/installing-suggested-recommended-packages

2) We have a problem with support of a custom packages list. It is only tracked via system test failure without exact team assigned for a job. Also debootstrap and other tools are not informative about package errors. It may fail with 'unable to mount', '/proc not mounted', 'file not found' even if a problem is a missing package.

fuelweb_test.tests.tests_mirrors.test_use_mirror

GD based tests

Test Neutron

fuelweb_test.tests.gd_based_tests.test_neutron

Test Neutron Vlan Ceph Mongo

fuelweb_test.tests.gd_based_tests.test_neutron_vlan_ceph_mongo

Plugins tests

Contrail tests

fuelweb_test.tests.plugins.plugin_contrail.test_fuel_plugin_contrail

Elasticsearch-Kibana tests

fuelweb_test.tests.plugins.plugin_elasticsearch.test_plugin_elasticsearch

Emc tests

fuelweb_test.tests.plugins.plugin_emc.test_plugin_emc

Example tests

fuelweb_test.tests.plugins.plugin_example.test_fuel_plugin_example

Glusterfs tests

fuelweb_test.tests.plugins.plugin_glusterfs.test_plugin_glusterfs

InfluxDB-Grafana tests

fuelweb_test.tests.plugins.plugin_influxdb.test_plugin_influxdb

Lbaas tests

fuelweb_test.tests.plugins.plugin_lbaas.test_plugin_lbaas

LMA collector tests

fuelweb_test.tests.plugins.plugin_lma_collector.test_plugin_lma_collector

LMA infrastructure alerting tests

fuelweb_test.tests.plugins.plugin_lma_infra_alerting.test_plugin_lma_infra_alerting

Reboot tests

fuelweb_test.tests.plugins.plugin_reboot.test_plugin_reboot_task

Vip reservation tests

fuelweb_test.tests.plugins.plugin_vip_reservation.test_plugin_vip_reservation

Zabbix tests

fuelweb_test.tests.plugins.plugin_zabbix.test_plugin_zabbix

Patching tests

Patching tests

fuelweb_test.tests.tests_patching.test_patching

Security tests

Nessus scan tests

fuelweb_test.tests.tests_security_test_run_nessus

Strength tests

Cic maintenance mode tests

fuelweb_test.tests.tests_strength.test_cic_maintenance_mode

Failover tests

fuelweb_test.tests.tests_strength.test_failover

Base failover tests

fuelweb_test.tests.tests_strength.test_failover_base

Failover with CEPH tests

fuelweb_test.tests.tests_strength.test_failover_with_ceph

Huge environments tests

fuelweb_test.tests.tests_strength.test_huge_environments

Image based tests

fuelweb_test.tests.tests_strength.test_image_based

Load tests

fuelweb_test.tests.tests_strength.test_load

Master node failover tests

fuelweb_test.tests.tests_strength.test_master_node_failover

Neutron tests

fuelweb_test.tests.tests_strength.test_neutron

Base Neutron tests

fuelweb_test.tests.tests_strength.test_neutron_base

OSTF repeatable tests

fuelweb_test.tests.tests_strength.test_ostf_repeatable_tests

Restart tests

fuelweb_test.tests.tests_strength.test_restart

Upgrade tests

Test Upgrade

fuelweb_test.tests.tests_upgrade.test_upgrade

Test Upgrade Chains

fuelweb_test.tests.tests_upgrade.test_upgrade_chains

OS upgrade tests

Test OpenStack Upgrades

fuelweb_test.tests.test_os_upgrade

Tests for separated services

Test for separate keystone service

fuelweb_test.tests.tests_separate_services.test_separate_keystone

Test for separate horizon service

fuelweb_test.tests.tests_separate_services.test_separate_horizon

Test for separate mysql service

fuelweb_test.tests.tests_separate_services.test_separate_db

Test for separate multiroles

fuelweb_test.tests.tests_separate_services.test_separate_multiroles

Test for separate rabbitmq service

fuelweb_test.tests.tests_separate_services.test_separate_rabbitmq

Template based tests

fuelweb_test.actions_tests