Split FT to Legacy and SOL implementation
FT execution time in Zuul is about to exceed its timeout. This patch make the existing dsvm-functional FT job to be separated to two jobs; * dsvm-functional-legacy * dsvm-functional-sol This patch fixes the unstable FT results in zuul FT jobs: * test_rollback_instantiate: ``depends_on`` in BaseHOT makes stable deletion of stacks, otherwise Heat fails to delete subnets due to missing dependency with ports. * test_vnf_alarm_scale_with_instance_reservation: "--concurrency 1" enables to run test without any VMs on hosts, otherwise Blazar fails to add hosts into the freepool. Changes: * Split the FT directory to legacy and sol * Create new tox envs for FT of legacy and of SOL * Relative path are changed due to the new directory structure * Add ``depends_on` parameter in BaseHOT * Set "--concurrency 1" for both of the new FT jobs Change-Id: I4c66353eada16f7e51d7ed1c1999cf50635b9dce
This commit is contained in:
parent
7906be6818
commit
ba813054a4
16
.zuul.yaml
16
.zuul.yaml
@ -33,7 +33,7 @@
|
|||||||
- compute2
|
- compute2
|
||||||
|
|
||||||
- job:
|
- job:
|
||||||
name: tacker-functional-devstack-multinode-python3
|
name: tacker-functional-devstack-multinode-legacy
|
||||||
parent: devstack
|
parent: devstack
|
||||||
description: |
|
description: |
|
||||||
Base multinodes job for devstack-based functional tests
|
Base multinodes job for devstack-based functional tests
|
||||||
@ -157,7 +157,7 @@
|
|||||||
# Tacker services
|
# Tacker services
|
||||||
tacker: true
|
tacker: true
|
||||||
tacker-conductor: true
|
tacker-conductor: true
|
||||||
tox_envlist: dsvm-functional
|
tox_envlist: dsvm-functional-legacy
|
||||||
group-vars:
|
group-vars:
|
||||||
compute:
|
compute:
|
||||||
# Since a VirtualInterfaceCreateException occurs during a test,
|
# Since a VirtualInterfaceCreateException occurs during a test,
|
||||||
@ -205,6 +205,15 @@
|
|||||||
# To override the parent job's definitions.
|
# To override the parent job's definitions.
|
||||||
tls-proxy: false
|
tls-proxy: false
|
||||||
|
|
||||||
|
- job:
|
||||||
|
name: tacker-functional-devstack-multinode-sol
|
||||||
|
parent: tacker-functional-devstack-multinode-legacy
|
||||||
|
description: |
|
||||||
|
Multinodes job for SOL devstack-based functional tests
|
||||||
|
host-vars:
|
||||||
|
controller-tacker:
|
||||||
|
tox_envlist: dsvm-functional-sol
|
||||||
|
|
||||||
- project:
|
- project:
|
||||||
templates:
|
templates:
|
||||||
- check-requirements
|
- check-requirements
|
||||||
@ -215,4 +224,5 @@
|
|||||||
- release-notes-jobs-python3
|
- release-notes-jobs-python3
|
||||||
check:
|
check:
|
||||||
jobs:
|
jobs:
|
||||||
- tacker-functional-devstack-multinode-python3
|
- tacker-functional-devstack-multinode-legacy
|
||||||
|
- tacker-functional-devstack-multinode-sol
|
||||||
|
@ -39,6 +39,7 @@ resources:
|
|||||||
adjustment_type: change_in_capacity
|
adjustment_type: change_in_capacity
|
||||||
VDU2_scale_group:
|
VDU2_scale_group:
|
||||||
type: OS::Heat::AutoScalingGroup
|
type: OS::Heat::AutoScalingGroup
|
||||||
|
depends_on: VDU1_scale_group
|
||||||
properties:
|
properties:
|
||||||
min_size: 2
|
min_size: 2
|
||||||
max_size: 2
|
max_size: 2
|
||||||
|
@ -36,7 +36,7 @@ class VnfTestToscaVNFC(base.BaseTackerTest):
|
|||||||
input_yaml = read_file('sample_tosca_vnfc.yaml')
|
input_yaml = read_file('sample_tosca_vnfc.yaml')
|
||||||
tosca_dict = yaml.safe_load(input_yaml)
|
tosca_dict = yaml.safe_load(input_yaml)
|
||||||
path = os.path.abspath(os.path.join(
|
path = os.path.abspath(os.path.join(
|
||||||
os.path.dirname(__file__), "../../etc/samples"))
|
os.path.dirname(__file__), "../../../etc/samples"))
|
||||||
vnfd_name = 'sample-tosca-vnfc'
|
vnfd_name = 'sample-tosca-vnfc'
|
||||||
tosca_dict['topology_template']['node_templates'
|
tosca_dict['topology_template']['node_templates'
|
||||||
]['firewall_vnfc'
|
]['firewall_vnfc'
|
0
tacker/tests/functional/sol/vnflcm/__init__.py
Normal file
0
tacker/tests/functional/sol/vnflcm/__init__.py
Normal file
@ -39,7 +39,7 @@ def _create_and_upload_vnf_package(tacker_client, csar_package_name,
|
|||||||
'/vnfpkgm/v1/vnf_packages', "POST", body=body)
|
'/vnfpkgm/v1/vnf_packages', "POST", body=body)
|
||||||
|
|
||||||
# upload vnf package
|
# upload vnf package
|
||||||
csar_package_path = "../../etc/samples/etsi/nfv/%s" % csar_package_name
|
csar_package_path = "../../../etc/samples/etsi/nfv/%s" % csar_package_name
|
||||||
file_path = os.path.abspath(os.path.join(os.path.dirname(__file__),
|
file_path = os.path.abspath(os.path.join(os.path.dirname(__file__),
|
||||||
csar_package_path))
|
csar_package_path))
|
||||||
|
|
||||||
@ -826,7 +826,7 @@ class VnfLcmTest(base.BaseTackerTest):
|
|||||||
self):
|
self):
|
||||||
instance_file_dir = os.path.join(
|
instance_file_dir = os.path.join(
|
||||||
os.path.dirname(os.path.abspath(__file__)),
|
os.path.dirname(os.path.abspath(__file__)),
|
||||||
'../../etc/samples/etsi/nfv/test_create_vnf_instance_'
|
'../../../etc/samples/etsi/nfv/test_create_vnf_instance_'
|
||||||
'and_instantiate_and_terminate_cnf_with_artifact_is_url/'
|
'and_instantiate_and_terminate_cnf_with_artifact_is_url/'
|
||||||
)
|
)
|
||||||
artifact_file_dir = os.path.join(
|
artifact_file_dir = os.path.join(
|
@ -95,7 +95,7 @@ def _create_and_upload_vnf_package(tacker_client, csar_package_name,
|
|||||||
'/vnfpkgm/v1/vnf_packages', "POST", body=body)
|
'/vnfpkgm/v1/vnf_packages', "POST", body=body)
|
||||||
|
|
||||||
# upload vnf package
|
# upload vnf package
|
||||||
csar_package_path = "../../etc/samples/etsi/nfv/%s" % csar_package_name
|
csar_package_path = "../../../etc/samples/etsi/nfv/%s" % csar_package_name
|
||||||
file_path = os.path.abspath(os.path.join(os.path.dirname(__file__),
|
file_path = os.path.abspath(os.path.join(os.path.dirname(__file__),
|
||||||
csar_package_path))
|
csar_package_path))
|
||||||
|
|
@ -14,8 +14,8 @@
|
|||||||
import os
|
import os
|
||||||
from oslo_utils import uuidutils
|
from oslo_utils import uuidutils
|
||||||
from tacker.objects import fields
|
from tacker.objects import fields
|
||||||
from tacker.tests.functional.vnflcm import base as vnflcm_base
|
from tacker.tests.functional.sol.vnflcm import base as vnflcm_base
|
||||||
from tacker.tests.functional.vnflcm import fake_vnflcm
|
from tacker.tests.functional.sol.vnflcm import fake_vnflcm
|
||||||
import tempfile
|
import tempfile
|
||||||
import time
|
import time
|
||||||
|
|
||||||
@ -128,7 +128,7 @@ class VnfLcmWithUserDataTest(vnflcm_base.BaseVnfLcmTest):
|
|||||||
csar_package_path = os.path.abspath(
|
csar_package_path = os.path.abspath(
|
||||||
os.path.join(
|
os.path.join(
|
||||||
os.path.dirname(__file__),
|
os.path.dirname(__file__),
|
||||||
"../../etc/samples/etsi/nfv",
|
"../../../etc/samples/etsi/nfv",
|
||||||
sample_name))
|
sample_name))
|
||||||
tempname, _ = vnflcm_base._create_csar_with_unique_vnfd_id(
|
tempname, _ = vnflcm_base._create_csar_with_unique_vnfd_id(
|
||||||
csar_package_path)
|
csar_package_path)
|
||||||
@ -260,7 +260,7 @@ class VnfLcmWithUserDataTest(vnflcm_base.BaseVnfLcmTest):
|
|||||||
csar_package_path = os.path.abspath(
|
csar_package_path = os.path.abspath(
|
||||||
os.path.join(
|
os.path.join(
|
||||||
os.path.dirname(__file__),
|
os.path.dirname(__file__),
|
||||||
"../../etc/samples/etsi/nfv",
|
"../../../etc/samples/etsi/nfv",
|
||||||
sample_name))
|
sample_name))
|
||||||
tempname, _ = vnflcm_base._create_csar_with_unique_vnfd_id(
|
tempname, _ = vnflcm_base._create_csar_with_unique_vnfd_id(
|
||||||
csar_package_path)
|
csar_package_path)
|
||||||
@ -307,7 +307,7 @@ class VnfLcmWithUserDataTest(vnflcm_base.BaseVnfLcmTest):
|
|||||||
csar_package_path = os.path.abspath(
|
csar_package_path = os.path.abspath(
|
||||||
os.path.join(
|
os.path.join(
|
||||||
os.path.dirname(__file__),
|
os.path.dirname(__file__),
|
||||||
"../../etc/samples/etsi/nfv",
|
"../../../etc/samples/etsi/nfv",
|
||||||
sample_name))
|
sample_name))
|
||||||
tempname, _ = vnflcm_base._create_csar_with_unique_vnfd_id(
|
tempname, _ = vnflcm_base._create_csar_with_unique_vnfd_id(
|
||||||
csar_package_path)
|
csar_package_path)
|
||||||
@ -403,7 +403,7 @@ class VnfLcmWithUserDataTest(vnflcm_base.BaseVnfLcmTest):
|
|||||||
csar_package_path = os.path.abspath(
|
csar_package_path = os.path.abspath(
|
||||||
os.path.join(
|
os.path.join(
|
||||||
os.path.dirname(__file__),
|
os.path.dirname(__file__),
|
||||||
"../../etc/samples/etsi/nfv",
|
"../../../etc/samples/etsi/nfv",
|
||||||
sample_name))
|
sample_name))
|
||||||
tempname, _ = vnflcm_base._create_csar_with_unique_vnfd_id(
|
tempname, _ = vnflcm_base._create_csar_with_unique_vnfd_id(
|
||||||
csar_package_path)
|
csar_package_path)
|
||||||
@ -452,7 +452,7 @@ class VnfLcmWithUserDataTest(vnflcm_base.BaseVnfLcmTest):
|
|||||||
csar_package_path = os.path.abspath(
|
csar_package_path = os.path.abspath(
|
||||||
os.path.join(
|
os.path.join(
|
||||||
os.path.dirname(__file__),
|
os.path.dirname(__file__),
|
||||||
"../../etc/samples/etsi/nfv",
|
"../../../etc/samples/etsi/nfv",
|
||||||
sample_name))
|
sample_name))
|
||||||
tempname, _ = vnflcm_base._create_csar_with_unique_vnfd_id(
|
tempname, _ = vnflcm_base._create_csar_with_unique_vnfd_id(
|
||||||
csar_package_path)
|
csar_package_path)
|
||||||
@ -512,7 +512,7 @@ class VnfLcmWithUserDataTest(vnflcm_base.BaseVnfLcmTest):
|
|||||||
csar_package_path = os.path.abspath(
|
csar_package_path = os.path.abspath(
|
||||||
os.path.join(
|
os.path.join(
|
||||||
os.path.dirname(__file__),
|
os.path.dirname(__file__),
|
||||||
"../../etc/samples/etsi/nfv",
|
"../../../etc/samples/etsi/nfv",
|
||||||
sample_name))
|
sample_name))
|
||||||
tempname, _ = vnflcm_base._create_csar_user_data_common(
|
tempname, _ = vnflcm_base._create_csar_user_data_common(
|
||||||
csar_package_path)
|
csar_package_path)
|
||||||
@ -563,7 +563,7 @@ class VnfLcmWithUserDataTest(vnflcm_base.BaseVnfLcmTest):
|
|||||||
csar_package_path = os.path.abspath(
|
csar_package_path = os.path.abspath(
|
||||||
os.path.join(
|
os.path.join(
|
||||||
os.path.dirname(__file__),
|
os.path.dirname(__file__),
|
||||||
"../../etc/samples/etsi/nfv",
|
"../../../etc/samples/etsi/nfv",
|
||||||
sample_name))
|
sample_name))
|
||||||
tempname, _ = vnflcm_base._create_csar_user_data_common(
|
tempname, _ = vnflcm_base._create_csar_user_data_common(
|
||||||
csar_package_path)
|
csar_package_path)
|
||||||
@ -616,7 +616,7 @@ class VnfLcmWithUserDataTest(vnflcm_base.BaseVnfLcmTest):
|
|||||||
csar_package_path = os.path.abspath(
|
csar_package_path = os.path.abspath(
|
||||||
os.path.join(
|
os.path.join(
|
||||||
os.path.dirname(__file__),
|
os.path.dirname(__file__),
|
||||||
"../../etc/samples/etsi/nfv",
|
"../../../etc/samples/etsi/nfv",
|
||||||
sample_name))
|
sample_name))
|
||||||
tempname, _ = vnflcm_base._create_csar_user_data_common(
|
tempname, _ = vnflcm_base._create_csar_user_data_common(
|
||||||
csar_package_path)
|
csar_package_path)
|
||||||
@ -670,7 +670,7 @@ class VnfLcmWithUserDataTest(vnflcm_base.BaseVnfLcmTest):
|
|||||||
csar_package_path = os.path.abspath(
|
csar_package_path = os.path.abspath(
|
||||||
os.path.join(
|
os.path.join(
|
||||||
os.path.dirname(__file__),
|
os.path.dirname(__file__),
|
||||||
"../../etc/samples/etsi/nfv",
|
"../../../etc/samples/etsi/nfv",
|
||||||
sample_name))
|
sample_name))
|
||||||
tempname, _ = vnflcm_base._create_csar_user_data_common(
|
tempname, _ = vnflcm_base._create_csar_user_data_common(
|
||||||
csar_package_path)
|
csar_package_path)
|
||||||
@ -725,7 +725,7 @@ class VnfLcmWithUserDataTest(vnflcm_base.BaseVnfLcmTest):
|
|||||||
csar_package_path = os.path.abspath(
|
csar_package_path = os.path.abspath(
|
||||||
os.path.join(
|
os.path.join(
|
||||||
os.path.dirname(__file__),
|
os.path.dirname(__file__),
|
||||||
"../../etc/samples/etsi/nfv",
|
"../../../etc/samples/etsi/nfv",
|
||||||
sample_name))
|
sample_name))
|
||||||
tempname, _ = vnflcm_base._create_csar_user_data_common(
|
tempname, _ = vnflcm_base._create_csar_user_data_common(
|
||||||
csar_package_path)
|
csar_package_path)
|
||||||
@ -796,7 +796,7 @@ class VnfLcmWithUserDataTest(vnflcm_base.BaseVnfLcmTest):
|
|||||||
csar_package_path = os.path.abspath(
|
csar_package_path = os.path.abspath(
|
||||||
os.path.join(
|
os.path.join(
|
||||||
os.path.dirname(__file__),
|
os.path.dirname(__file__),
|
||||||
"../../etc/samples/etsi/nfv",
|
"../../../etc/samples/etsi/nfv",
|
||||||
sample_name))
|
sample_name))
|
||||||
tempname, _ = vnflcm_base._create_csar_with_unique_vnfd_id(
|
tempname, _ = vnflcm_base._create_csar_with_unique_vnfd_id(
|
||||||
csar_package_path)
|
csar_package_path)
|
||||||
@ -891,7 +891,7 @@ class VnfLcmWithUserDataTest(vnflcm_base.BaseVnfLcmTest):
|
|||||||
csar_package_path = os.path.abspath(
|
csar_package_path = os.path.abspath(
|
||||||
os.path.join(
|
os.path.join(
|
||||||
os.path.dirname(__file__),
|
os.path.dirname(__file__),
|
||||||
"../../etc/samples/etsi/nfv",
|
"../../../etc/samples/etsi/nfv",
|
||||||
sample_name))
|
sample_name))
|
||||||
tempname, _ = vnflcm_base._create_csar_with_unique_vnfd_id(
|
tempname, _ = vnflcm_base._create_csar_with_unique_vnfd_id(
|
||||||
csar_package_path)
|
csar_package_path)
|
0
tacker/tests/functional/sol/vnfpkgm/__init__.py
Normal file
0
tacker/tests/functional/sol/vnfpkgm/__init__.py
Normal file
@ -159,7 +159,7 @@ class VnfPackageTest(base.BaseTackerTest):
|
|||||||
|
|
||||||
def _get_csar_dir_path(self, csar_name):
|
def _get_csar_dir_path(self, csar_name):
|
||||||
csar_dir = os.path.abspath(os.path.join(os.path.dirname(__file__),
|
csar_dir = os.path.abspath(os.path.join(os.path.dirname(__file__),
|
||||||
"../../etc/samples/etsi/nfv", csar_name))
|
"../../../etc/samples/etsi/nfv", csar_name))
|
||||||
return csar_dir
|
return csar_dir
|
||||||
|
|
||||||
def _create_and_upload_vnf(self, sample_name):
|
def _create_and_upload_vnf(self, sample_name):
|
12
tox.ini
12
tox.ini
@ -40,6 +40,18 @@ setenv = {[testenv]setenv}
|
|||||||
commands =
|
commands =
|
||||||
stestr --test-path=./tacker/tests/functional run --slowest --concurrency 2 {posargs}
|
stestr --test-path=./tacker/tests/functional run --slowest --concurrency 2 {posargs}
|
||||||
|
|
||||||
|
[testenv:dsvm-functional-legacy]
|
||||||
|
setenv = {[testenv]setenv}
|
||||||
|
|
||||||
|
commands =
|
||||||
|
stestr --test-path=./tacker/tests/functional/legacy run --slowest --concurrency 1 {posargs}
|
||||||
|
|
||||||
|
[testenv:dsvm-functional-sol]
|
||||||
|
setenv = {[testenv]setenv}
|
||||||
|
|
||||||
|
commands =
|
||||||
|
stestr --test-path=./tacker/tests/functional/sol run --slowest --concurrency 1 {posargs}
|
||||||
|
|
||||||
[testenv:debug]
|
[testenv:debug]
|
||||||
commands = oslo_debug_helper {posargs}
|
commands = oslo_debug_helper {posargs}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user