tiers:
    -
        name: smoke
        order: 1
        ci_loop: '(daily)|(weekly)'
        description : >-
            Set of basic Functional tests to validate the OPNFV scenarios.
        testcases:
            -
                case_name: vping_ssh
                project_name: functest
                criteria: 100
                blocking: true
                description: >-
                    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: '^((?!odl_l3|odl-bgpvpn|gluon).)*$'
                run:
                    module: 'functest.opnfv_tests.openstack.vping.vping_ssh'
                    class: 'VPingSSH'

            -
                case_name: vping_userdata
                project_name: functest
                criteria: 100
                blocking: true
                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'

            -
                case_name: tempest_smoke_serial
                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.
                dependencies:
                    installer: '^((?!netvirt).)*$'
                    scenario: ''
                run:
                    module: 'functest.opnfv_tests.openstack.tempest.tempest'
                    class: 'TempestSmokeSerial'

            -
                case_name: rally_sanity
                project_name: functest
                criteria: 100
                blocking: false
                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'

            -
                case_name: refstack_defcore
                project_name: functest
                criteria: 100
                blocking: false
                description: >-
                    This test case runs a sub group of tests of the OpenStack
                    Defcore testcases by using refstack client.
                dependencies:
                    installer: ''
                    scenario: ''
                run:
                    module: 'functest.opnfv_tests.openstack.refstack_client.refstack_client'
                    class: 'RefstackClient'

            -
                case_name: odl
                project_name: functest
                criteria: 100
                blocking: false
                description: >-
                    Test Suite for the OpenDaylight SDN Controller. It
                    integrates some test suites from upstream using
                    Robot as the test framework.
                dependencies:
                    installer: ''
                    scenario: 'odl'
                run:
                    module: 'functest.opnfv_tests.sdn.odl.odl'
                    class: 'ODLTests'
                    args:
                        suites:
                            -  /src/odl_test/csit/suites/integration/basic
                            -  /src/odl_test/csit/suites/openstack/neutron

            -
                case_name: odl_netvirt
                project_name: functest
                criteria: 100
                blocking: false
                description: >-
                    Test Suite for the OpenDaylight SDN Controller when
                    the NetVirt features are installed. It integrates
                    some test suites from upstream using Robot as the
                    test framework.
                dependencies:
                    installer: 'apex'
                    scenario: 'os-odl_l3-nofeature'
                run:
                    module: 'functest.opnfv_tests.sdn.odl.odl'
                    class: 'ODLTests'
                    args:
                        suites:
                            -  /src/odl_test/csit/suites/integration/basic
                            -  /src/odl_test/csit/suites/openstack/neutron
                            -  /src/odl_test/csit/suites/openstack/connectivity

            -
                case_name: fds
                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.
                dependencies:
                    installer: 'apex'
                    scenario: 'odl.*-fdio'
                run:
                    module: 'functest.opnfv_tests.sdn.odl.odl'
                    class: 'ODLTests'
                    args:
                        suites:
                            -  /src/fds/testing/robot

            -
                case_name: snaps_smoke
                project_name: functest
                criteria: 100
                blocking: false
                description: >-
                    This test case contains tests that setup and destroy
                    environments with VMs with and without Floating IPs
                    with a newly created user and project. Set the config
                    value snaps.use_floating_ips (True|False) to toggle
                    this functionality. When the config value of
                    snaps.use_keystone is True, functest must have access to
                    the cloud's private network.

                dependencies:
                    installer: '^((?!netvirt).)*$'
                    scenario: '^((?!lxd).)*$'
                run:
                    module: 'functest.opnfv_tests.openstack.snaps.smoke'
                    class: 'SnapsSmoke'