Merge "Update and enable Cloudify-based testcases"
[functest.git] / functest / ci / testcases.yaml
index 30e1c68..7ae021f 100644 (file)
@@ -3,7 +3,6 @@ tiers:
     -
         name: healthcheck
         order: 0
-        ci_loop: '(merge)|(verify)|(daily)|(weekly)'
         description: >-
             First tier to be executed to verify the basic
             operations in the VIM.
@@ -17,13 +16,8 @@ tiers:
                     This test case verifies the retrieval of OpenStack clients:
                     Keystone, Glance, Neutron and Nova and may perform some
                     simple queries.
-                dependencies:
-                    installer: ''
-                    scenario: ''
                 run:
-                    module:
-                        'functest.opnfv_tests.openstack.api.connection_check'
-                    class: 'ConnectionCheck'
+                    name: connection_check
 
             -
                 case_name: tenantnetwork1
@@ -34,12 +28,8 @@ tiers:
                     It creates and configures all tenant network ressources
                     required by advanced testcases (subnet, network and
                     router).
-                dependencies:
-                    installer: ''
-                    scenario: ''
                 run:
-                    module: 'functest.core.tenantnetwork'
-                    class: 'TenantNetwork1'
+                    name: tenantnetwork1
 
             -
                 case_name: tenantnetwork2
@@ -50,12 +40,8 @@ tiers:
                     It creates new user/project before creating and configuring
                     all tenant network ressources required by a testcase
                     (subnet, network and router).
-                dependencies:
-                    installer: ''
-                    scenario: ''
                 run:
-                    module: 'functest.core.tenantnetwork'
-                    class: 'TenantNetwork2'
+                    name: tenantnetwork2
 
             -
                 case_name: vmready1
@@ -66,12 +52,8 @@ tiers:
                     It inherits from TenantNetwork1 which creates all network
                     resources and prepares a future VM attached to that
                     network.
-                dependencies:
-                    installer: ''
-                    scenario: ''
                 run:
-                    module: 'functest.core.singlevm'
-                    class: 'VmReady1'
+                    name: vmready1
 
             -
                 case_name: vmready2
@@ -82,12 +64,8 @@ tiers:
                     It creates new user/project before creating and configuring
                     all tenant network ressources, flavors, images, etc.
                     required by advanced testcases.
-                dependencies:
-                    installer: ''
-                    scenario: ''
                 run:
-                    module: 'functest.core.singlevm'
-                    class: 'VmReady2'
+                    name: vmready2
 
             -
                 case_name: singlevm1
@@ -98,12 +76,8 @@ tiers:
                     It inherits from TenantNetwork1 which creates all network
                     resources and completes it by booting a VM attached to that
                     network.
-                dependencies:
-                    installer: ''
-                    scenario: ''
                 run:
-                    module: 'functest.core.singlevm'
-                    class: 'SingleVm1'
+                    name: singlevm1
 
             -
                 case_name: singlevm2
@@ -114,12 +88,8 @@ tiers:
                     It creates new user/project before creating and configuring
                     all tenant network ressources and vms required by advanced
                     testcases.
-                dependencies:
-                    installer: ''
-                    scenario: ''
                 run:
-                    module: 'functest.core.singlevm'
-                    class: 'SingleVm2'
+                    name: singlevm2
 
             -
                 case_name: vping_ssh
@@ -130,12 +100,8 @@ tiers:
                     This test case verifies: 1) SSH to an instance using
                     floating IPs over the public network. 2) Connectivity
                     between 2 instances over a private network.
-                dependencies:
-                    installer: ''
-                    scenario: '^((?!lxd).)*$'
                 run:
-                    module: 'functest.opnfv_tests.openstack.vping.vping_ssh'
-                    class: 'VPingSSH'
+                    name: vping_ssh
 
             -
                 case_name: vping_userdata
@@ -145,13 +111,8 @@ tiers:
                 description: >-
                     This test case verifies:  1) Boot a VM with given userdata.
                     2) Connectivity between 2 instances over a private network.
-                dependencies:
-                    installer: ''
-                    scenario: '^((?!lxd).)*$'
                 run:
-                    module:
-                        'functest.opnfv_tests.openstack.vping.vping_userdata'
-                    class: 'VPingUserdata'
+                    name: vping_userdata
 
             -
                 case_name: cinder_test
@@ -163,12 +124,8 @@ tiers:
                     instance; 2) Write data on volume 3) Detach volume
                     from instance 1, attach it on instance 2 3) Read volume
                     data
-                dependencies:
-                    installer: ''
-                    scenario: '^((?!lxd).)*$'
                 run:
-                    module: 'functest.opnfv_tests.openstack.cinder.cinder_test'
-                    class: 'CinderCheck'
+                    name: cinder_test
 
             -
                 case_name: odl
@@ -180,11 +137,9 @@ tiers:
                     integrates some test suites from upstream using
                     Robot as the test framework.
                 dependencies:
-                    installer: ''
-                    scenario: 'odl'
+                    - DEPLOY_SCENARIO: 'odl'
                 run:
-                    module: 'functest.opnfv_tests.sdn.odl.odl'
-                    class: 'ODLTests'
+                    name: odl
                     args:
                         suites:
                             - /src/odl_test/csit/suites/integration/basic
@@ -201,12 +156,8 @@ tiers:
                     simple queries. When the config value of
                     snaps.use_keystone is True, functest must have access to
                     the cloud's private network.
-                dependencies:
-                    installer: ''
-                    scenario: '^((?!lxd).)*$'
                 run:
-                    module: 'functest.opnfv_tests.openstack.snaps.api_check'
-                    class: 'ApiCheck'
+                    name: api_check
 
             -
                 case_name: snaps_health_check
@@ -218,38 +169,49 @@ tiers:
                     Python test class which creates an, image, flavor, network,
                     and Cirros VM instance and observes the console output to
                     validate the single port obtains the correct IP address.
-                dependencies:
-                    installer: ''
-                    scenario: '^((?!lxd).)*$'
                 run:
-                    module: 'functest.opnfv_tests.openstack.snaps.health_check'
-                    class: 'HealthCheck'
+                    name: snaps_health_check
+
+            -
+                case_name: tempest_smoke
+                project_name: functest
+                criteria: 100
+                blocking: false
+                description: >-
+                    This test case runs the smoke subset of the OpenStack
+                    Tempest suite. The list of test cases is generated by
+                    Tempest automatically and depends on the parameters of
+                    the OpenStack deplopyment.
+                    https://github.com/openstack/tempest/blob/18.0.0/tox.ini#L114
+                run:
+                    name: tempest_common
+                    args:
+                        mode: '(?=.*\[.*\bsmoke\b.*\])(^tempest\.api)'
+                        option:
+                            - '--concurrency=4'
 
     -
         name: smoke
         order: 1
-        ci_loop: '(daily)|(weekly)'
         description: >-
             Set of basic Functional tests to validate the OPNFV scenarios.
         testcases:
             -
-                case_name: tempest_smoke
+                case_name: neutron-tempest-plugin-api
                 project_name: functest
                 criteria: 100
                 blocking: false
                 description: >-
-                    This test case runs the smoke subset of the OpenStack
-                    Tempest suite. The list of test cases is generated by
+                    This test case runs the Tempest suite proposed by the
+                    Neutron project. The list of test cases is generated by
                     Tempest automatically and depends on the parameters of
-                    the OpenStack deplopyment.
-                dependencies:
-                    installer: ''
-                    scenario: ''
+                    the OpenStack deployment.
                 run:
-                    module: 'functest.opnfv_tests.openstack.tempest.tempest'
-                    class: 'TempestCommon'
+                    name: tempest_common
                     args:
-                        mode: '^tempest\.(api|scenario).*\[.*\bsmoke\b.*\]$'
+                        mode: '^neutron_tempest_plugin\.api'
+                        option:
+                            - '--concurrency=4'
 
             -
                 case_name: rally_sanity
@@ -259,85 +221,76 @@ tiers:
                 description: >-
                     This test case runs a sub group of tests of the OpenStack
                     Rally suite in smoke mode.
-                dependencies:
-                    installer: ''
-                    scenario: ''
                 run:
-                    module: 'functest.opnfv_tests.openstack.rally.rally'
-                    class: 'RallySanity'
+                    name: rally_sanity
 
             -
                 case_name: refstack_defcore
                 project_name: functest
-                enabled: false
                 criteria: 100
                 blocking: false
                 description: >-
                     This test case runs a sub group of tests of the OpenStack
                     Defcore testcases.
-                dependencies:
-                    installer: ''
-                    scenario: ''
                 run:
-                    module:
-                        'functest.opnfv_tests.openstack.refstack.refstack'
-                    class: 'Refstack'
+                    name: refstack_defcore
+                    args:
+                        option:
+                            - '--concurrency=4'
 
             -
-                case_name: patrole
+                case_name: tempest_full
                 project_name: functest
                 criteria: 100
                 blocking: false
                 description: >-
-                    Test suite from Patrole project.
-                dependencies:
-                    installer: ''
-                    scenario: ''
+                    The list of test cases is generated by
+                    Tempest automatically and depends on the parameters of
+                    the OpenStack deployment.
+                    https://github.com/openstack/tempest/blob/18.0.0/tox.ini#L83
                 run:
-                    module: 'functest.opnfv_tests.openstack.patrole.patrole'
-                    class: 'Patrole'
+                    name: tempest_common
                     args:
-                        role: 'admin'
-                        services:
-                            - 'image'
-                            - 'network'
-                        exclude:
-                            - 'test_networks_multiprovider_rbac'
+                        mode: '(?!.*\[.*\bslow\b.*\])(^tempest\.api)'
+                        option:
+                            - '--concurrency=4'
 
             -
-                case_name: vmtp
+                case_name: tempest_scenario
                 project_name: functest
                 criteria: 100
                 blocking: false
                 description: >-
-                    VMTP is a small python application that will automatically
-                    perform ping connectivity, round trip time measurement
-                    (latency) and TCP/UDP throughput
-                dependencies:
-                    installer: ''
-                    scenario: ''
+                    The list of test cases is generated by
+                    Tempest automatically and depends on the parameters of
+                    the OpenStack deployment.
+                    https://github.com/openstack/tempest/blob/18.0.0/tox.ini#L84
                 run:
-                    module:
-                        'functest.opnfv_tests.openstack.vmtp.vmtp'
-                    class: 'Vmtp'
+                    name: tempest_common
+                    args:
+                        mode: '(?!.*\[.*\bslow\b.*\])(^tempest\.scenario)'
+                        option:
+                            - '--concurrency=1'
 
             -
-                case_name: shaker
+                case_name: patrole
                 project_name: functest
                 criteria: 100
                 blocking: false
                 description: >-
-                    Shaker wraps around popular system network testing tools
-                    like iperf, iperf3 and netperf (with help of flent). Shaker
-                    is able to deploy OpenStack instances and networks in
-                    different topologies.
-                dependencies:
-                    installer: ''
-                    scenario: ''
+                    Test suite from Patrole project.
                 run:
-                    module:
-                        'functest.opnfv_tests.openstack.shaker.shaker'
-                    class: 'Shaker'
+                    name: patrole
+                    args:
+                        role: 'admin'
+                        includes:
+                            - 'image'
+                            - 'network'
+                        excludes:
+                            - 'network.test_flavors_rbac'
+                            - 'network.test_network_ip_availability_rbac'
+                            - 'test_networks_multiprovider_rbac'
+                            - 'test_auto_allocated_topology_rbac'
 
             -
                 case_name: snaps_smoke
@@ -352,13 +305,8 @@ tiers:
                     this functionality. When the config value of
                     snaps.use_keystone is True, functest must have access to
                     the cloud's private network.
-
-                dependencies:
-                    installer: ''
-                    scenario: '^((?!lxd).)*$'
                 run:
-                    module: 'functest.opnfv_tests.openstack.snaps.smoke'
-                    class: 'SnapsSmoke'
+                    name: snaps_smoke
 
             -
                 case_name: neutron_trunk
@@ -370,14 +318,50 @@ tiers:
                     OpenStack Tempest suite. The list of test cases is
                     generated by Tempest having as input the relevant
                     testcase list file.
-                dependencies:
-                    installer: '(fuel)|(apex)|(compass)'
-                    scenario: ''
                 run:
-                    module: 'functest.opnfv_tests.openstack.trunk.trunk'
-                    class: 'TempestNeutronTrunk'
+                    name: tempest_common
                     args:
                         mode: 'neutron_tempest_plugin.(api|scenario).test_trunk'
+                        neutron_extensions:
+                            - trunk
+                            - trunk-details
+
+            -
+                case_name: networking-bgpvpn
+                project_name: functest
+                criteria: 100
+                blocking: false
+                description: >-
+                    This test case runs OpenStack networking-bgpvpn Tempest
+                    suite. The list of test cases is generated by Tempest
+                    having as input the relevant regex.
+                run:
+                    name: tempest_common
+                    args:
+                        mode: '^networking_bgpvpn_tempest\.'
+                        neutron_extensions:
+                            - bgpvpn
+                        option:
+                            - '--concurrency=4'
+
+            -
+                case_name: networking-sfc
+                project_name: functest
+                criteria: 100
+                blocking: false
+                description: >-
+                    This test case runs OpenStack networking-sfc Tempest
+                    suite. The list of test cases is generated by Tempest
+                    having as input the relevant regex.
+                run:
+                    name: tempest_common
+                    args:
+                        mode:
+                            '^(?:networking_sfc\.tests\.tempest_plugin.tests.api).*$'
+                        neutron_extensions:
+                            - sfc
+                        option:
+                            - '--concurrency=0'
 
             -
                 case_name: barbican
@@ -386,20 +370,74 @@ tiers:
                 blocking: false
                 description: >-
                     It leverages on the tempest plugin containing tests used to
-                    verify the functionality of a barbican installation
-                dependencies:
-                    installer: '^((?!fuel|apex|compass|daisy|osa).)*$'
-                    scenario: ''
+                    verify the functionality of a barbican installation.
                 run:
-                    module: 'functest.opnfv_tests.openstack.tempest.tempest'
-                    class: 'TempestCommon'
+                    name: barbican
                     args:
-                        mode: 'barbican_tempest_plugin.tests.(api|scenario)'
+                        mode:
+                            '^barbican_tempest_plugin.((?!test_signed_image_upload_boot_failure).)*$'
+                        services:
+                            - barbican
 
     -
-        name: features
+        name: benchmarking
         order: 2
-        ci_loop: '(daily)|(weekly)'
+        description: >-
+            Run several OpenStack performance tools
+            https://docs.openstack.org/performance-docs/latest/methodologies/tools.html
+        testcases:
+            -
+                case_name: rally_full
+                project_name: functest
+                criteria: 100
+                blocking: false
+                description: >-
+                    This test case runs the full suite of scenarios of the
+                    OpenStack Rally suite using several threads and iterations.
+                run:
+                    name: rally_full
+
+            -
+                case_name: rally_jobs
+                project_name: functest
+                criteria: 100
+                blocking: false
+                description: >-
+                    This test case runs a group of Rally jobs used in
+                    OpenStack gating
+                run:
+                    name: rally_jobs
+
+            -
+                case_name: vmtp
+                project_name: functest
+                criteria: 100
+                blocking: false
+                description: >-
+                    VMTP is a small python application that will automatically
+                    perform ping connectivity, round trip time measurement
+                    (latency) and TCP/UDP throughput
+                dependencies:
+                    - POD_ARCH: '^(?!aarch64$)'
+                run:
+                    name: vmtp
+
+            -
+                case_name: shaker
+                project_name: functest
+                criteria: 100
+                blocking: false
+                description: >-
+                    Shaker wraps around popular system network testing tools
+                    like iperf, iperf3 and netperf (with help of flent). Shaker
+                    is able to deploy OpenStack instances and networks in
+                    different topologies.
+                run:
+                    name: shaker
+
+    -
+        name: features
+        order: 3
         description: >-
             Test suites from feature projects
             integrated in functest
@@ -407,51 +445,50 @@ tiers:
             -
                 case_name: doctor-notification
                 project_name: doctor
+                enabled: false
                 criteria: 100
                 blocking: false
                 description: >-
                     Test suite from Doctor project.
                 dependencies:
-                    installer: '(apex)|(fuel)|(daisy)'
-                    scenario: '^((?!fdio|nofeature).)*$'
+                    - INSTALLER_TYPE: '(apex)|(fuel)|(daisy)'
+                    - DEPLOY_SCENARIO: '^((?!fdio|nofeature).)*$'
                 run:
-                    module: 'xtesting.core.feature'
-                    class: 'BashFeature'
+                    name: bashfeature
                     args:
                         cmd: 'doctor-test'
 
             -
                 case_name: bgpvpn
                 project_name: sdnvpn
+                enabled: false
                 criteria: 100
                 blocking: false
                 description: >-
                     Test suite from SDNVPN project.
                 dependencies:
-                    installer: ''
-                    scenario: 'bgpvpn'
+                    - DEPLOY_SCENARIO: 'bgpvpn'
                 run:
-                    module: 'sdnvpn.test.functest.run_sdnvpn_tests'
-                    class: 'SdnvpnFunctest'
+                    name: bgpvpn
 
             -
                 case_name: functest-odl-sfc
                 project_name: sfc
+                enabled: false
                 criteria: 100
                 blocking: false
                 description: >-
                     Test suite for odl-sfc to test two chains with one SF and
                     one chain with two SFs
                 dependencies:
-                    installer: ''
-                    scenario: 'odl.*sfc'
+                    - DEPLOY_SCENARIO: 'odl.*sfc'
                 run:
-                    module: 'sfc.tests.functest.run_sfc_tests'
-                    class: 'SfcFunctest'
+                    name: functest-odl-sfc
 
             -
                 case_name: barometercollectd
                 project_name: barometer
+                enabled: false
                 criteria: 100
                 blocking: false
                 description: >-
@@ -459,75 +496,39 @@ tiers:
                     the proper configuration and basic functionality of all the
                     collectd plugins as described in the Project Release Plan
                 dependencies:
-                    installer: ''
-                    scenario: 'bar'
+                    - DEPLOY_SCENARIO: 'bar'
                 run:
-                    module: 'baro_tests.barometer'
-                    class: 'BarometerCollectd'
+                    name: barometercollectd
 
             -
-                case_name: fds
-                project_name: fastdatastacks
+                case_name: vgpu
+                project_name: functest
                 criteria: 100
                 blocking: false
                 description: >-
-                    Test Suite for the OpenDaylight SDN Controller when GBP
-                    features are installed. It integrates some test suites from
-                    upstream using Robot as the test framework.
+                    Test suite for the OpenStack vGPU feature
                 dependencies:
-                    installer: ''
-                    scenario: 'odl.*-fdio'
+                    - DEPLOY_SCENARIO: 'vgpu'
                 run:
-                    module: 'functest.opnfv_tests.sdn.odl.odl'
-                    class: 'ODLTests'
-                    args:
-                        suites:
-                            - /src/fds/testing/robot
+                    name: vgpu
 
-    -
-        name: components
-        order: 3
-        ci_loop: 'weekly'
-        description: >-
-            Extensive testing of OpenStack API.
-        testcases:
             -
-                case_name: tempest_full
-                project_name: functest
-                criteria: 80
-                blocking: false
-                description: >-
-                    The list of test cases is generated by
-                    Tempest automatically and depends on the parameters of
-                    the OpenStack deplopyment.
-                dependencies:
-                    installer: ''
-                    scenario: ''
-                run:
-                    module: 'functest.opnfv_tests.openstack.tempest.tempest'
-                    class: 'TempestCommon'
-                    args:
-                        mode: '^tempest\.'
-
-            -
-                case_name: rally_full
-                project_name: functest
+                case_name: stor4nfv_os
+                project_name: stor4nfv
+                enabled: false
                 criteria: 100
                 blocking: false
                 description: >-
-                    This test case runs the full suite of scenarios of the
-                    OpenStack Rally suite using several threads and iterations.
+                    This tests are necessary demonstrate conformance
+                    of the OpenStack+Stor4NFV deployment.
                 dependencies:
-                    installer: ''
-                    scenario: ''
+                    - DEPLOY_SCENARIO: 'stor4nfv'
                 run:
-                    module: 'functest.opnfv_tests.openstack.rally.rally'
-                    class: 'RallyFull'
+                    name: stor4nfv_os
 
     -
         name: vnf
         order: 4
-        ci_loop: '(daily)|(weekly)'
         description: >-
             Collection of VNF test cases.
         testcases:
@@ -538,27 +539,33 @@ tiers:
                 blocking: false
                 description: >-
                     This test case deploys the Cloudify orchestrator.
-                dependencies:
-                    installer: ''
-                    scenario: 'os-.*-nofeature-.*ha'
                 run:
-                    module: 'functest.core.cloudify'
-                    class: 'Cloudify'
+                    name: cloudify
             -
                 case_name: cloudify_ims
                 project_name: functest
-                criteria: 80
+                criteria: 100
                 blocking: false
                 description: >-
                     This test case deploys an OpenSource vIMS solution from
                     Clearwater using the Cloudify orchestrator. It also runs
                     some signaling traffic.
                 dependencies:
-                    installer: ''
-                    scenario: 'os-.*-nofeature-.*ha'
+                    - DEPLOY_SCENARIO: 'os-.*-nofeature-.*ha'
                 run:
-                    module: 'functest.opnfv_tests.vnf.ims.cloudify_ims'
-                    class: 'CloudifyIms'
+                    name: cloudify_ims
+
+            -
+                case_name: heat_ims
+                project_name: functest
+                criteria: 100
+                blocking: false
+                description: >-
+                    This test case deploys an OpenSource vIMS solution from
+                    Clearwater using the OpenStack Heat orchestrator.
+                    It also runs some signaling traffic.
+                run:
+                    name: heat_ims
 
             -
                 case_name: vyos_vrouter
@@ -567,12 +574,8 @@ tiers:
                 blocking: false
                 description: >-
                     This test case is vRouter testing.
-                dependencies:
-                    installer: ''
-                    scenario: 'os-.*-nofeature-.*ha'
                 run:
-                    module: 'functest.opnfv_tests.vnf.router.cloudify_vrouter'
-                    class: 'CloudifyVrouter'
+                    name: vyos_vrouter
 
             -
                 case_name: juju_epc
@@ -582,9 +585,5 @@ tiers:
                 description: >-
                     vEPC validation with Juju as VNF manager and ABoT as test
                     executor.
-                dependencies:
-                    installer: ''
-                    scenario: 'os-.*-nofeature-.*ha'
                 run:
-                    module: 'functest.opnfv_tests.vnf.epc.juju_epc'
-                    class: 'JujuEpc'
+                    name: juju_epc