fuel-qa/doc/base_tests.rst
Maksym Strukov 52ffb70b46 Test public API
Add two tests with the following steps:

Deploy environment with enabled DMZ network for API.

        Scenario:
            1. Revert snapshot with ready master node
            2. Create new environment
            3. Run network verification
            4. Deploy the environment
            5. Run network verification
            6. Run OSTF
            7. Reboot cluster nodes
            8. Run OSTF
            9. Create environment snapshot deploy_env_with_public_api

Check that security rules are properly applied for DMZ network

        Scenario:
            1. Revert snapshot from previous test
            2. Run instance
            3. Try to access horizon from instance
            4. Remove instance

Implements: blueprint test-separate-public-floating
Change-Id: I70474b5cab324aa4f4a042127d4e6961c95010bf
2016-09-14 18:50:45 +00:00

23 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 Ceph

fuelweb_test.tests.test_ceph

Test Cli

fuelweb_test.tests.test_cli

Test Cli Base

fuelweb_test.tests.test_cli_base

Test Cli role component (creade/update/delete role)

fuelweb_test.tests.tests_cli.test_cli_role

Test Cli deploy (deploy neutron tun)

fuelweb_test.tests.tests_cli.test_cli_deploy

Test Cli deploy ceph neutron tun

fuelweb_test.tests.tests_cli.test_cli_deploy_ceph

Test custom hostname

fuelweb_test.tests.test_custom_hostname

Test custom graph

fuelweb_test.tests.tests_custom_graph.test_custom_graph

Prepare target image file

fuelweb_test.config_templates.prepare_release_image

Test DPDK

fuelweb_test.tests.test_dpdk

Test Environment Action

fuelweb_test.tests.test_environment_action

Test ha NeutronTUN deployment group 1 (controller+baseos multirole and ceph for images/objects)

fuelweb_test.tests.tests_deployments.tests_neutron_tun.test_ha_tun_group_1

Test ha NeutronTUN deployment group 2 (ceph for all, baseos node and ceph for all, untag networks and changed OS credentials)

fuelweb_test.tests.tests_deployments.tests_neutron_tun.test_ha_tun_group_2

Test ha NeutronTUN deployment group 3 (5 controllers, ceph for images/ephemeral and no volumes, ceph for images/ephemeral)

fuelweb_test.tests.tests_deployments.tests_neutron_tun.test_ha_tun_group_3

Test ha neutron vlan deployment group 1 (cinder/ceph for images and ceph for volumes/swift)

fuelweb_test.tests.tests_deployments.tests_neutron_vlan.test_ha_vlan_group_1

Test ha neutron vlan deployment group 2 (cinder/ceph for ephemeral and cinder/ceph for images/ephemeral)

fuelweb_test.tests.tests_deployments.tests_neutron_vlan.test_ha_vlan_group_2

Test ha neutron vlan deployment group 3(no volumes storage/ceph volumes, ephemeral)

fuelweb_test.tests.tests_deployments.tests_neutron_vlan.test_ha_vlan_group_3

Test ha neutron vlan deployment group 4(cinder volumes, ceph images and rados gw/ default storage)

fuelweb_test.tests.tests_deployments.tests_neutron_vlan.test_ha_vlan_group_4

Test ha neutron vlan deployment group 5 (ceph for volumes/images/ephemeral/rados and cinder/ceph for images/ephemeral/rados)

fuelweb_test.tests.tests_deployments.tests_neutron_vlan.test_ha_vlan_group_5

Test ha neutron vlan deployment group 6 (no volumes and ceph for images/ephemeral/rados and ceph for volumes/images/ephemeral)

fuelweb_test.tests.tests_deployments.tests_neutron_vlan.test_ha_vlan_group_6

Test ha neutron vlan deployment group 7 (no volumes/ceph for images and cinder/swift/base os)

fuelweb_test.tests.tests_deployments.tests_neutron_vlan.test_ha_vlan_group_7

Test Sahara OS component with vlan and ceph

fuelweb_test.tests.tests_os_components.test_sahara_os_component

Test Murano OS component with vlan

fuelweb_test.tests.tests_os_components.test_murano_os_component

Test mixed OS components

fuelweb_test.tests.tests_os_components.test_mixed_os_components

Test failover group 1

fuelweb_test.tests.tests_strength.test_failover_group_1

Test failover group 2

fuelweb_test.tests.tests_strength.test_failover_group_2

Test failover group 3

fuelweb_test.tests.tests_strength.test_failover_group_3

Test failover mongo

fuelweb_test.tests.tests_strength.test_failover_mongo

Test Mongo Multirole

fuelweb_test.tests.tests_multirole.test_mongo_multirole

Test scale neutron vlan deployment add/delete compute/cinder+cinder+ceph

fuelweb_test.tests.tests_scale.test_scale_group_5

Test scale neutron tun deployment add/delete compute+cinder+ceph+ephemeral

fuelweb_test.tests.tests_scale.test_scale_group_6

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 manual VIP allocation

fuelweb_test.tests.test_manual_vip_allocation

Test Multiple Networks

fuelweb_test.tests.test_multiple_networks

Test multirole group 1 (controller+ceph/compute+cinder and controller+ceph+cinder/compute+ceph+cinder)

fuelweb_test.tests.tests_multirole.test_multirole_group_1

Test network templates base

fuelweb_test.tests.test_net_templates_base

Test network templates

fuelweb_test.tests.test_net_templates

Test multiple networks templates

fuelweb_test.tests.test_net_templates_multiple_networks

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 Neutron IPv6 base functionality

fuelweb_test.tests.test_neutron_ipv6

Test Node reinstallation

fuelweb_test.tests.test_node_reinstallation

Test offloading types

fuelweb_test.tests.test_offloading_types

Test public api

fuelweb_test.tests.test_public_api

Test Pull Requests

fuelweb_test.tests.test_pullrequest

Test Reduced Footprint

fuelweb_test.tests.test_reduced_footprint

Test scale group 1 (add controllers with stop and add ceph nodes with stop)

fuelweb_test.tests.tests_scale.test_scale_group_1

Test scale group 2 (replace primary controller and remove 2 controllers)

fuelweb_test.tests.tests_scale.test_scale_group_2

Test scale group 3 (add/delete compute and add/delete cinder)

fuelweb_test.tests.tests_scale.test_scale_group_3

Test scale group 4 (add/delete ceph and add/delete cinder+ceph)

fuelweb_test.tests.tests_scale.test_scale_group_4

Test Services

fuelweb_test.tests.test_services

Test Ubuntu bootstrap

fuelweb_test.tests.test_ubuntu_bootstrap

Test Ubuntu Cloud Archive

fuelweb_test.tests.tests_uca.test_uca

Test Vcenter

fuelweb_test.tests.test_vcenter

Test Ironic

fuelweb_test.tests.test_ironic_base

Test Services reconfiguration

fuelweb_test.tests.test_services_reconfiguration

Test Support HugePages

fuelweb_test.tests.test_support_hugepages

Test CPU pinning

fuelweb_test.tests.test_cpu_pinning

Test extra computes

fuelweb_test.tests.tests_extra_computes.base_extra_computes

fuelweb_test.tests.tests_extra_computes.test_rh_basic_actions

fuelweb_test.tests.tests_extra_computes.test_rh_migration

fuelweb_test.tests.tests_extra_computes.test_ol_basic_actions

fuelweb_test.tests.tests_extra_computes.test_ol_migration

Test Daemon Resource Allocation Control

fuelweb_test.tests.test_cgroups

Test LCM base

fuelweb_test.tests.tests_lcm.base_lcm_test

Test task idempotency

fuelweb_test.tests.tests_lcm.test_idempotency

Test task ensurability

fuelweb_test.tests.tests_lcm.test_ensurability

Test unlock settings tab

fuelweb_test.tests.test_unlock_settings_tab

Test for unlock settings tab from different cluster states

fuelweb_test.tests.test_states_unlock_settings_tab

Test task coverage by LCM tests

fuelweb_test.tests.tests_lcm.test_task_coverage

Gating tests

Test Fuel agent

gates_tests.tests.test_review_in_fuel_agent

Test Fuel cli

gates_tests.tests.test_review_in_fuel_client

Test Fuel astute

gates_tests.tests.test_review_in_astute

Test Fuel nailgun agent

gates_tests.tests.test_nailgun_agent

Test Fuel web

gates_tests.tests.test_review_fuel_web

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

Emc tests

fuelweb_test.tests.plugins.plugin_emc.test_plugin_emc

Example tests

fuelweb_test.tests.plugins.plugin_example.test_fuel_plugin_example

Example tests for plugin installation after cluster create

fuelweb_test.tests.plugins.plugin_example.test_fuel_plugin_example_postdeploy

Glusterfs tests

fuelweb_test.tests.plugins.plugin_glusterfs.test_plugin_glusterfs

Lbaas tests

fuelweb_test.tests.plugins.plugin_lbaas.test_plugin_lbaas

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

Murano Tests

fuelweb_test.tests.plugins.plugin_murano.test_plugin_murano

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

Base load tests

fuelweb_test.tests.tests_strength.test_load_base

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

Repetitive restart tests

fuelweb_test.tests.tests_strength.test_repetitive_restart

Restart tests

fuelweb_test.tests.tests_strength.test_restart

Upgrade tests

Test Data-Driven Upgrade

fuelweb_test.tests.tests_upgrade.test_clone_env

fuelweb_test.tests.tests_upgrade.test_data_driven_upgrade_base

fuelweb_test.tests.tests_upgrade.test_data_driven_upgrade_ceph_ha

fuelweb_test.tests.tests_upgrade.test_data_driven_upgrade_net_tmpl

fuelweb_test.tests.tests_upgrade.test_data_driven_upgrade_no_cluster

fuelweb_test.tests.tests_upgrade.test_data_driven_upgrade_plugin

fuelweb_test.tests.tests_upgrade.test_data_driven_upgrade_smoke

fuelweb_test.tests.tests_upgrade.test_data_driven_upgrade_multirack_deployment

fuelweb_test.tests.tests_upgrade.test_node_reassignment

fuelweb_test.tests.tests_upgrade.upgrader_tool

OS upgrade tests

Test OpenStack Upgrades

fuelweb_test.tests.tests_upgrade.upgrade_base

fuelweb_test.tests.tests_upgrade.test_os_upgrade

Tests for separated services

Test for separate keystone service

fuelweb_test.tests.tests_separate_services.test_separate_keystone

Test for separate keystone service and ceph

fuelweb_test.tests.tests_separate_services.test_separate_keystone_ceph

Test for separate haproxy service

fuelweb_test.tests.tests_separate_services.test_separate_haproxy

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 mysql service and ceph

fuelweb_test.tests.tests_separate_services.test_separate_db_ceph

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

Test for separate rabbitmq service and ceph

fuelweb_test.tests.tests_separate_services.test_separate_rabbitmq_ceph

Deployment with platform components

fuelweb_test.tests.tests_separate_services.test_deploy_platform_components

Test for ssl components

fuelweb_test.tests.test_ssl

Test for network outage

fuelweb_test.tests.tests_strength.test_network_outage

Test for Image Based Provisioning

fuelweb_test.tests.tests_ibp.test_ibp

Tests for configDB api

fuelweb_test.tests.tests_configdb.test_configdb_api

Tests for cinder block device driver

fuelweb_test.tests.test_bdd

Test for tracking /etc dir by etckeeper plugin

fuelweb_test.tests.plugins.plugin_etckeeper.test_plugin_etckeeper

Test for separate master node deployment

system_test.tests.test_centos_master_deploy_ceph

Test for multipath devices

fuelweb_test.tests.test_multipath_devices

Test SR-IOV

fuelweb_test.tests.test_sriov