aboutsummaryrefslogtreecommitdiffstats
path: root/functest/opnfv_tests/openstack/vping
AgeCommit message (Collapse)AuthorFilesLines
2018-05-05Implement get_external_network via shadeCédric Ollivier1-1/+2
It fixes the current issues as EXTERNAL_NETWORK is mainly unset by all Installers [1]. [1] https://build.opnfv.org/ci/view/functest/job/functest-fuel-armband-baremetal-arm-daily-fraser/31/console Change-Id: I8ee62623701c15b9ff962d0a0e07a77934ff03ac Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2018-04-29Rewrite vping_ssh and vping_userdataCédric Ollivier3-303/+200
They now leverage on shade to allow gating OpenStack master as asked by TSC. Switching to OpenStack master (openstacksdk) requires to change only one line. It deletes the related unit tests as they have to be fully rewritten. They will be added in another change. Change-Id: I0c60681d6e1c0944960770429ef972947dd85321 Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2018-04-23Switch from deploy utils to the right objectsCédric Ollivier3-18/+28
It also prints the full exceptions and removes useless casts. Change-Id: I19ff1ae90670833f998c0d17592da82207235229 Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2018-04-21Bypass NoneType errors when creating routerCédric Ollivier1-2/+2
It converts private subnet name to str as it's mandary till [1]. It could be reverted as soon as [2] is merged in snaps. [1] https://gerrit.opnfv.org/gerrit/#/c/56091/ [2] https://gerrit.opnfv.org/gerrit/#/c/56171/ Change-Id: I849944fa9d4d2be21fe1a37b76c4cfd231b6d56f Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2018-04-02Control vping cleanup step via --nocleanLinda Wang3-46/+40
Change-Id: Ic43b100348e77fd96aab9abc5a9ec4a0b47a2f87 Signed-off-by: Linda Wang <wangwulin@huawei.com>
2018-03-15Create 2 images and flavors for tempest testsLinda Wang1-7/+3
Also 1. remove the obsolete function: generate_test_accounts_file 2. Use patch mechanism to get config Change-Id: I455ac37de71519bcaf9a51e5f1de1b9bc83b9ba6 Signed-off-by: Linda Wang <wangwulin@huawei.com>
2018-03-07Add a new env var for nameserverLinda Wang1-1/+2
We should still consider that the nameserver must be handled by all installers instead [1]: - by configuring one or more DNS resolvers in dhcp_agent.ini - by asking a local resolv It eases setting the nameserver in testcases and then allows gating them. 8.8.8.8 is still defined by default. [1] https://docs.openstack.org/neutron/pike/admin/config-dns-res.html Co-Authored-By: Cédric Ollivier <cedric.ollivier@orange.com> Change-Id: Id58dd5ebee612a0fce2ebc40f089769e60899416 Signed-off-by: Linda Wang <wangwulin@huawei.com> Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2018-03-02Leverage on XtestingCédric Ollivier3-19/+19
It removes all the files which have moved to Xtesting. Vnf inheritances and env management will be improved in other changes. It keeps the same tree thanks to a symlink to allow publishing artifacts. Change-Id: I551bbd3f344cdab0158a50b7b09e541576695631 Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2018-02-22Switch from CONST to CONFCédric Ollivier2-27/+34
It also removes constants.CONST and env.Environment which are now useless. Depends-On: I764a0a2a24447c941d1e726f3116593b29dd1c1e Depends-On: I6cfa832466dcefd737314633d807512e46267a69 Change-Id: Ife41c59d9f2e6ec4e49df38af962039f99554bc5 Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2018-02-19Remove last CONST.__getattribute__()Cédric Ollivier1-5/+5
Change-Id: I82f6aa1e723c88eebd4c7410da4b9741a482e9bc Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2018-02-16Get properly env vars or their default valuesCédric Ollivier1-1/+2
It defines env.get() as an unique way to get Functest env vars or their default values. It can be considered as a wrapper above os.environ. It enforces backward compatibility via CONST which mustn't be used for that purpose. It should be noted that it also stops using CONST for getting OpenStack env vars. Change-Id: I333dc1afbc0123166a7eaff8b551370098efa341 Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2018-01-30Remove duplicated code related to snaps credsJuha Kosonen1-10/+1
Add support for providing credentials in snaps_utils. JIRA: FUNCTEST-916 Change-Id: I3e027229d213d3791a115920f7012309cc027712 Signed-off-by: Juha Kosonen <juha.kosonen@nokia.com>
2018-01-28Fix warnings in all snaps-related modulesCédric Ollivier3-45/+31
It also adds vping/__init__.py to stop skipping vping unit tests. It removes the useless import os which is not required for mock (here the mock patch was simply false). It should be noted that the code is partially duplicated between snaps_test_runner.py and vping_base_base.py. A small part of code has been rewritten to fix that without multi inheritance. Change-Id: I2e3e181ad7dab8aa41afb1e63d0b6795ff0d1610 Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2017-12-11Set the ram of flavor 1024Linda Wang1-2/+4
The setting of hw:mem_page_size=large indicates larger page sizes for guest RAM, eg., either 2MB or 1GB on x86. When tested on compass, 1GB is required. Change-Id: Iefd2e8ff30e0a496157e0bd118e63ab3c402abab Signed-off-by: Linda Wang <wangwulin@huawei.com>
2017-12-06Fix the yamllint errors in functest/ciLinda Wang1-4/+2
And also, remove the params "tempest_use_custom_images" and "unique_names" of vping, rally and tempest. Change-Id: Ic4243ef2f5e965910e5befa87db8d585cad34fa2 Signed-off-by: Linda Wang <wangwulin@huawei.com>
2017-12-05Fix pylint errors of vpingLinda Wang3-22/+25
Change-Id: I272f0eb6fb0f2a274484a3dcfacd8ed65e4a5b23 Signed-off-by: Linda Wang <wangwulin@huawei.com>
2017-11-21Removal of deprecated SNAPS-OO classes.spisarski3-40/+39
JIRA: SNAPS-202 Change-Id: I115b4927b287a5525f4c1b95128d91f5229c7856 Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2017-10-03Report duration and result when vping failsCédric Ollivier1-1/+3
It completes "Bug fix: vping_userdata test status was not properly reported" [1]. [1] https://gerrit.opnfv.org/gerrit/#/c/43911/ Change-Id: I7e8be6cd564a24ca174e63cfc295861c51cae8ed Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2017-10-03Create a router in both vping scenariiCédric Ollivier2-19/+17
It fixes vping_userdata as it allows getting metadata due to the gateway defined for the subnet. It could be noted that DHCP can add the route needed if no gateway is defined and if force_metadata is set in dhcp_agent.ini. Change-Id: Ia62e0f00e3d2caee6262dd9cd9966d1f21fe40d5 Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2017-10-02Bug fix: vping_userdata test status was not properly reportedMorgan Richomme1-1/+1
vping_base is calling vping_userdata vping_user data could return only EX_TESTCASE_FAILED or EX_OK by default vping_base always returns EX_OK (based on self.result=100..) it returned EX_RUN_ERROR only if upper class report EX_RUN_ERROR that is why vping_userdata was always PASS even if the trace "Ping OK" cannot be retrieved from the Nova console it seems that when running the vping_userdata, we systematically got Failed to read iid from metadata Change-Id: If72441dd93bffada5c7a5399c87db68d7ebeebed Signed-off-by: Morgan Richomme <morgan.richomme@orange.com>
2017-09-30Fix userdata issue for vping and orchestraLinda Wang2-4/+4
1. When creating VM, the type of the param userdata should be str, to conform with that in snaps [1]. 2. Remove the infinite loop for vping in userdata 3. Fix the criteria for vping_userdata and vping_ssh [1]: https://git.opnfv.org/snaps/tree/snaps/openstack/utils/nova_utils.py#n92 Change-Id: I262a7ebb93ec90bb6f8f3acb5d564f210abcfc4b Signed-off-by: Linda Wang <wangwulin@huawei.com>
2017-08-28Obtain scenario by CONST instead of get functionLinda Wang1-2/+1
JIRA: FUNCTEST-763 Change-Id: Ic9fa3243b50a09de8a5e531fed8298997367dd84 Signed-off-by: Linda Wang <wangwulin@huawei.com>
2017-08-25Fix the config of vping netLinda Wang1-3/+3
Change-Id: I71cea850985c67cf4c4e42a29600f9d63291fc94 Signed-off-by: Linda Wang <wangwulin@huawei.com>
2017-08-24Merge "Added means to override the RC file credentials."Linda Wang1-1/+7
2017-08-22Specify physical_network when creating networkLinda Wang1-4/+23
When the network_type is vlan, it is necessary to specify physical_network and segmentation_id. JIRA: FUNCTEST-863 Change-Id: Ia1acb0181e4f78654ecf5500c4c0366b143a91f5 Signed-off-by: Linda Wang <wangwulin@huawei.com>
2017-08-21Added means to override the RC file credentials.spisarski1-1/+7
This has been done primarily to support tests using SNAPS-OO JIRA: FUNCTEST-847 Change-Id: Icf02c085a95c20d4088e5aafd6380c70689a4ee0 Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2017-07-29Restrict ping only once in ping.shLinda Wang1-11/+8
Otherwise, it makes no sense to configure ping_timeout as 200 times. Change-Id: I6e15f5149f24a4316f6d5b70bcda9a46418d1522 Signed-off-by: Linda Wang <wangwulin@huawei.com>
2017-07-18Merge "Change calls to SNAPS library exposing OpenStack instance objects."Jose Lausuch1-1/+1
2017-07-14Change calls to SNAPS library exposing OpenStack instance objects.spisarski1-1/+1
Openstack object structures can change when new API versions are released and SNAPS no longer is exposing OpenStack object implementations as this makes the library brittle. The only two SNAPS method calls affected are when functest needs to query for external networks and when vPing Userdata needs to obtain the console logs. JIRA: SNAPS-125 Change-Id: If6000e50eaa274713d9a6c964eabd1f73ded684e Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2017-07-11Add decorators in testcases for energy recording.Benoit HERARD1-29/+49
Test cases are: - rally (sanity and full) - refstack - cloudify_ims - vping_ssh It also fix a bug on "energy_recording" decorator of energy module. Change-Id: I625c214552ad1b89eaf7e196e706d7c69b37da33 Signed-off-by: Benoit HERARD <benoit.herard@orange.com>
2017-07-06Fix logger name in vping_base.pyCédric Ollivier1-1/+1
It conforms with logging.ini which requires qualnames. Change-Id: Ic2f849009c31a3a7bc406fc44c4917d19ccf2424 Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2017-07-05bugfix: vping support not_hugepage_configured podSerenaFeng1-1/+1
this bug was fixed in https://gerrit.opnfv.org/gerrit/#/c/35181/ but was reverted in https://gerrit.opnfv.org/gerrit/#/c/35671/ Change-Id: I5cbbd61ac196dc39c073ffc69254d987e4807130 Signed-off-by: SerenaFeng <feng.xiaowei@zte.com.cn>
2017-07-02Apply restrictive file permissionsCédric Ollivier1-0/+0
It conforms with [1] by creating a new venv which checks the unix permissions. As jjobs call Functest console scripts [2], all perms can be 644. Dockerfiles are updated as well. [1] https://security.openstack.org/guidelines/dg_apply-restrictive-file-permissions.html [2] https://gerrit.opnfv.org/gerrit/#/c/36805/ Depends-On: I9209e6efa1b493e24135402a46df72aaa14115d1 Change-Id: I31bc7f12b775928845e23b6b40288b0a50b87219 Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2017-06-30Define console_scriptsCédric Ollivier2-16/+3
Only prepare_env.py and run_tests.py remain executable to avoid breaking the gate. As soon as the jenkins jobs are updated to run them from $PATH, tox will be updated to protect against chmod a+x py files. Dockerfile will be simplified as well. Change-Id: Iac1a7ceb6b344e800177226ea39919826f6d3735 Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2017-06-27Added unit tests for vping.spisarski2-100/+56
Also removed some instance variables and unnecessary methods. JIRA: FUNCTEST-813 Change-Id: I13895674a9fd3de16c6a19410661440c5380c2f8 Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2017-06-26Fixed problem to vping userdata introducted by SNAPS-OO patch.spisarski1-1/+1
Changed get_vm_inst() to return a domain object forgot to change the call in vping_userdata.py. JIRA: SNAPS-92 Change-Id: I7585dcde483c39fa850e5184686f42bbf2e8f3c5 Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2017-06-20Remove all references to /home/opnfv/repos/functestCédric Ollivier2-6/+6
It also removes relative (and incomplete) references which could be defined in modules instead of this global configuration. Change-Id: Ie20dc3547e49b6224aa8100cd380d37b87ece5a9 Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2017-05-30Merge "Define create_snapshot() and clean() in TestCase"Cedric Ollivier1-5/+5
2017-05-30Merge "vping&snaps_xxx support not_hugepage_supported pod"Serena Feng1-1/+1
2017-05-30Define create_snapshot() and clean() in TestCaseCédric Ollivier1-5/+5
They replace the former calls in run_tests which are not suitable for all test cases. Now any test case can define how to clean its resources. If the snapshot cannot be created, the test case is considered as failed. Only a message is printed if any failure during cleaning. It also defines a new class called OSGCTestCase useful for test cases which don't clean their OpenStack resources. All test cases located in opnfv_tests/openstack inherit from it to keep the global behavior unchanged. It also deletes exit instructions in openstack_clean and openstack_snapshot, removes clean flags in testcases.yaml and updates the related utils. All Docs are modified as well. JIRA: FUNCTEST-438 Change-Id: I8938e6255708012380389763a24059ace4ce45d8 Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2017-05-28Switch shebangs to /usr/bin/env pythonCédric Ollivier3-3/+3
It modified the shebang to /usr/bin/env which is considered as more flexible. Change-Id: I9c8cdb4243d41a83d524499cc91060d3700e008b Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2017-05-25vping&snaps_xxx support not_hugepage_supported podSerenaFeng1-1/+1
if flavor_metadata is set to {'hw:mem_page_size': 'any'}, it means hugepage must be support by pod. but actually hugepage is not supported by all pods Change-Id: Ib0b716ecedacf7eeba2c0d0080be2707b1a87e73 Signed-off-by: SerenaFeng <feng.xiaowei@zte.com.cn>
2017-05-17Update self.result value to INTjose.lausuch1-1/+3
So far, the test cases are storing a string "PASS" "FAIL" in the self.result variable. The way the new framework works is with INT Values. Change-Id: I45e8693327740faadd8254b21569adfb2cefa6c8 Signed-off-by: jose.lausuch <jose.lausuch@ericsson.com>
2017-05-16Converted vPing to leverage the object-oriented SNAPS library.spisarski3-385/+436
JIRA: FUNCTEST-577 1. Replaced procedural openstack_utils with the object-oriented SNAPS library 2. Tests now clean themselves up. 3. Improved code documentation. 4. Removed dependency on file-based Cirros image and now leveraging the download URL. 5. Removed hardcoded location to the testcases.yaml file to leverage the value in config_functest.yaml 6. Included optional flavor metadata based on the scenario being tested 7. Included support for multi-part images. 8. Added enhanced support for configurable images. see SNAPS-76 Fixed line length verification problem with the previous submission Fixed retrieval of external network name to be dynamic. Changed external network name retrieval to leverage the newly merged snap_util.get_ext_net_name() function Added the creation and deletion of flavors. SNAPS now has the ability to add/remove security groups from running instances. Changed VMInstance constructor by moving userdata to configuration object. Change-Id: I0ef5e268eb153d696bb4d9a7533f780e5c603d26 Signed-off-by: spisarski <s.pisarski@cablelabs.com>
2017-05-04Delete functest.utils.functest_loggerCédric Ollivier2-4/+6
It deletes functest.utils.functest_logger and the related unit tests. Then it modifies all functest modules to get all loggers via logging.getLogger(). __name__ is mainly used as getLogger arg as proposed by logging [1]. All loggers and handlers are now defined via functest/ci/logging.ini instead of a dict loaded by an external json file. Now only warn messages and info messages from ci and core packages are printed in console. [1] https://docs.python.org/2/library/logging.html Change-Id: Ic192855e0f9bf94825d8f7ec73549a0f3b8d44c5 Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2017-04-26Switch TestCase attribute criteria to resultCédric Ollivier1-1/+1
It mainly avoids mixing input and output. Criteria is now an input set in functest/ci/testcases.yaml and then must be passed as __init__() args (which will be proposed in an additional change). Then it also renames the related TestCase method to check_result(). Change-Id: Ifc3c8e3ea6cde7e3edf7174bed4bf2bf0894e8e3 Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2017-04-11Modify TestCase constructor attributesCédric Ollivier3-6/+10
Every feature/testcase now allows receiving the data defined in testcases.yaml as args (name is renamed to case_name). From the time being, only project and case names are handled. Next pending patches will add criteria, cmd and repo to this list. It keeps the default values for case names except for features which will be aggregated into Feature. Change-Id: Id742d100b8183d7f10894c24ae6879d1b2b60ac9 Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2017-04-04Add case_name as constructor argCédric Ollivier3-8/+6
It allows managing multiple TestCase names with only one TestCase module. It is mainly required by odl which implements: - odl, - odl_netvirt, - fds. It also renames case to case_name in Features to conform with TestCases. JIRA: FUNCTEST-762 Change-Id: Ie254f754a0ea3077a8afda1c470528d38c79478f Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2017-03-27Rename testcase_base to testcaseCédric Ollivier2-15/+15
It simply removes the useless suffix. Change-Id: Ib9a682b57d8f33518359d817a593bb3786577390 Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2017-03-27Switch TestcaseBase to TestCaseCédric Ollivier2-13/+13
It partially reverts "Rename TestCasesBase into TestcaseBase" [1] and removes the useless suffix too. [1] https://gerrit.opnfv.org/gerrit/#/c/25391/ Change-Id: Iddf2ec8d6c1dafe6e4c6713c2e69969613317471 Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>