summaryrefslogtreecommitdiffstats
path: root/sfc/lib
AgeCommit message (Collapse)AuthorFilesLines
2018-05-21Merge "Increase logging" into stable/fraserManuel Buil1-0/+1
2018-05-21Increase loggingManuel Buil1-0/+1
Apex deployments are currently failing and it could be because it uses the wrong config file. We are currently not logging what file it is fetched and that's what this patch tries to fix Change-Id: I441beee9d3ad5d918ed4b8dc0164456b39e53b56 Signed-off-by: Manuel Buil <mbuil@suse.com>
2018-05-21Improve logging and unify how to read from yamlManuel Buil1-4/+6
vnffgd and vnfd are being parsed in different ways, we should parse them in the same way. We could do it directly with safe_load, however, the returned object is not easy to read. If we use read() instead, the resturned object is easy to read/log. Therefore, this patch combines both options Change-Id: I3416933801569a6f57962cd9906726229923136d Signed-off-by: Manuel Buil <mbuil@suse.com> (cherry picked from commit e122e00cb02adc65870cbb05f394dfc9a0cf55b2)
2018-05-09Add more logs to the codeManuel Buil1-1/+11
It is hard to understand what is going on in the SFC executions Change-Id: I5c9688e68b03c59d6d39290faee8683513a60440 Signed-off-by: Manuel Buil <mbuil@suse.com> (cherry picked from commit 5f8eb6bf01ca3ef240cfcdee297327b21b33f35a)
2018-05-08Bug fix: Use opnfv.logger objectManuel Buil7-29/+19
JIRA: SFC-125 If we don't use the opnfv.logger from functest, logs are not printed when exeucting tests through the functest framework Change-Id: I6d58ff3977fd94221720eea978e0efde07a576a2 Signed-off-by: Manuel Buil <mbuil@suse.com>
2018-04-09Use different config files depending on versionManuel Buil1-1/+15
We can read the openstack version from the env variables and then use a different config. The reason we use this is because openstack API changed from Pike to Queens and Pike is the official version for OPNFV Fraser release Change-Id: I8a94e71224d2ba0aa75a6438f3d7b03929acbbef Signed-off-by: Manuel Buil <mbuil@suse.com> (cherry picked from commit a459dee88ba00d6f8283232ce2159594ae23d22a)
2018-04-09Merge "Update symmetric chain test case" into stable/fraserManuel Buil3-38/+98
2018-04-09Update symmetric chain test caseJaime Caamaño Ruiz3-38/+98
Update the symmetric chain test case aligning it with updates available from ODL Oxygen: - ODL networking-sfc implementation now supports symmetric paths. It is no longer needed to configure the ACL or chain directly through the ODL rest api. It can now be fully relied on tacker for this. - ODL networking-sfc implementation now supports different ingress and egress ports for port pairs. The test case exercises this by setting up a VNF with two distinct ports. Note that this requires an updated VNF image that supports two nics and bundles a vxlan_tool capable of using them. Change-Id: Ie711abb93109943dcbf699ece7b2b570500a3711 Signed-off-by: Jaime Caamaño Ruiz <jcaamano@suse.com> (cherry picked from commit 8e85daee26c523cd181f5884858646b7589c50af)
2018-04-09Support sfp redirect action on acl flow checkJaime Caamaño Ruiz1-59/+139
Starting Oxygen, ODL networking-sfc translator supports symmetric paths and maps flow classifiers to ACLs with SFP redirect action instead of RSP redirect action. A SFP may have two RSPs associated if the path is symmetric, one otherwise. One of the two RSPs will be flagged as the reverse path and the other is the forward path. Traffic from the logical-source-port will be classified to the forward path, while traffic from the logical-destination-port will be classified to the reverse path. This patch updates the ACL flow check logic to account for the above. Change-Id: I2d8b9e6c2a1033d469668db29b9c18f525e89370 Signed-off-by: Jaime Caamaño Ruiz <jcaamano@suse.com> (cherry picked from commit f66a8164cfb2ef172ee3ea274992b9c07306f08c)
2018-04-03Fix flake8 problemsManuel Buil1-1/+1
There was a bug in releng and pylint was not ran, some issues got merged in master because of that Change-Id: Icf3fa882f4f2b0593fa0b85edce46e49dcc303c9 Signed-off-by: Manuel Buil <mbuil@suse.com>
2018-03-22Fix tacker resource collection requestJaime Caamaño Ruiz1-6/+6
Looks like using tacker_client.get to request a resource collection causes connection drops and subsequent requests to fail, probably because of incomplete pagination handling. Use tacker_client.list instead. Change-Id: I79ba39759b61f57774e65b5e49686edb6bf05c13 Signed-off-by: Jaime Caamaño Ruiz <jcaamano@suse.com>
2018-03-11Remove SNAPs deprecated methodManuel Buil1-4/+3
SNAPs is not supporting get_vm_info() anymore, we should remove it from our lib https://gerrit.opnfv.org/gerrit/#/c/53263/4 Change-Id: Idad1bb60b86c45256bb0a95b6c554e83e6bfae35 Signed-off-by: Manuel Buil <mbuil@suse.com>
2018-03-08Merge "Update SNAPs usage of library"Dimitrios Markou1-2/+7
2018-03-05Merge "Import xtesting module"Manuel Buil1-1/+0
2018-03-05Import xtesting moduleLinda Wang1-1/+0
Change-Id: Id524fbf1677844b5172f52c857cf8bed8d075ff3 Signed-off-by: Linda Wang <wangwulin@huawei.com>
2018-03-05Update SNAPs usage of libraryManuel Buil1-2/+7
JIRA:SFC-120 Snaps updated two methods which now require more parameters: https://github.com/opnfv/snaps/blob/master/snaps/openstack/utils/heat_utils.py#L260 https://github.com/opnfv/snaps/blob/master/snaps/openstack/create_instance.py#L781 Change-Id: I164c51298afd7b80ee88312f3a09abe7f09282a0 Signed-off-by: Manuel Buil <mbuil@suse.com>
2018-03-02Remove glance_utils as we don't use it anymoreManuel Buil1-2/+1
Change-Id: I44d0dd4fdabd38f09e6113c28668f11a40c6ba86 Signed-off-by: Manuel Buil <mbuil@suse.com>
2018-02-28Bug fix: Problem with SNAPs integrationManuel Buil1-4/+10
SNAPs changed the API: https://github.com/opnfv/snaps/commit/c711acf8ae3e4ad6f746500747857bcc9fd6f7be#diff-0b922a3e087121238d5a8b08ef5b894aR480 Now we require to pass keystone client to get the neutron port Change-Id: I93fa4b127255c1a078aa3644773b7c8b886cea6d Signed-off-by: Manuel Buil <mbuil@suse.com>
2018-02-26Stop relying on internal Functest utilsCédric Ollivier2-4/+20
It switches from functest_utils.get_functest_config() to config.CONF(). download_url is now hosted in sfc as it's unused by Functest. ft_utils.get_parameter_from_yaml() will be considered as part of Functest framework (then it must be well covered and documented). Change-Id: I3014d90dba53422020ae85a2815c5bf8c0dcf34c Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2018-02-22Switch from CONST to CONFCédric Ollivier2-5/+5
CONST is not the right Functest object to get config data. It also updates the way to get constants as proposed by Functest [1]. [1] https://gerrit.opnfv.org/gerrit/#/c/52389/ Depends-On: Ie23c0ef90efc839d60f0f3a9754c58746b1f3a00 Change-Id: I6cfa832466dcefd737314633d807512e46267a69 Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2018-02-21Switch to os.environ for getting OpenStack env varsCédric Ollivier1-4/+4
CONST shouldn't be selected to get env vars. Now it may raise KeyErrors if env is not well configured. Change-Id: I5e3f525640809778c5349fdc1c3796227894d0cd Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2018-02-21Take into account last Functest config updatesCédric Ollivier1-2/+2
It follows the next changes (Functest) which renamed the related config entry [1]. [1] https://gerrit.opnfv.org/gerrit/#/c/51283/5/functest/ci/config_functest.yaml Change-Id: Ieae5baff13bb70aa35b01c2358ab4865cdb9dfb0 Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2018-02-16Switch from CONST to env.get()Cédric Ollivier1-13/+16
env.get() ensures that default values are reused if unset. It also avoids desynchronization between os.environ and CONST. It follows the change "Get properly env vars or their default values" [1] applied in Functest. It also fixes minor issues on shebangs and takes several pylint rules into account in this module: - http://pylint-messages.wikidot.com/messages:w0702 - https://www.python.org/dev/peps/pep-0282/ [1] https://gerrit.opnfv.org/gerrit/#/c/52221/ Change-Id: Ia7ad168b2cbbade8ea3890fb95dc01bcdfc50468 Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
2018-02-06Define the timethis function in the sfc repoManuel Buil1-2/+17
Functest removed the function from their repo, so we need to define it in ours: Change-Id: Ica122e57612c38751d8ff810f3ba61b749e867eb Signed-off-by: Manuel Buil <mbuil@suse.com>
2018-01-31Test the deletion of chainManuel Buil1-8/+77
This is the flow of the test: 1 - Create a vnffg in tacker (i.e. chain + classifier) 2 - Remove the vnffg 3 - Check that the RSPs are removed from operation DB in ODL and the classifier rules are not present in the flows 4 - Create a new vnffg 5 - Test the new chain: 5.1 - Check HTTP traffic works 5.2 - Block HTTP traffic in VNF and check that it does not work anymore Change-Id: Ia077e58c5cbce4258a2f8a36f6b961eb923ff9c5 Signed-off-by: Manuel Buil <mbuil@suse.com>
2018-01-31Use the new vnf image for FraserManuel Buil1-1/+1
Change-Id: I11c37ed6898c03b2a54a0e3b11422c654023333f Signed-off-by: Manuel Buil <mbuil@suse.com>
2018-01-31Adapt change in functestManuel Buil1-1/+1
The variable TEST_DB_URL must be read as a env. variable since this patch": https://gerrit.opnfv.org/gerrit/#/c/49757/ Change-Id: I8f77acbbb2fe949f5fbe8a3f983c49224d893bcc Signed-off-by: Manuel Buil <mbuil@suse.com>
2018-01-29Fix problem to fetch the compute name of client VMManuel Buil2-7/+11
When migrating to SNAPs a bug was introduced and could be seen in logs as: Error when waiting for classification rules: 'module' object has no attribute 'get_compute_client' The cause is that get_compute_client is not a global function anymore but a method inside a class. Besides, due to SNAPs, we need to fetch the compute name in another way Change-Id: I32007c83894281ba9514a121b7939b5bfe52f4bc Signed-off-by: Manuel Buil <mbuil@suse.com>
2018-01-26Fix cleanup functionManuel Buil1-0/+1
A floating ip remains when executing the clean up function. That floating ip belongs to the Tacker VNF and thus we should add that creator to the list Change-Id: Ic15574bf93f30a26f81a4944d742307dda4bfe6d Signed-off-by: Manuel Buil <mbuil@suse.com>
2017-12-21Migrate to SNAPs openstack libraryManuel Buil4-234/+236
Functest is deprecating its openstack library which we were using extensively We need then to move to an alternative and the best appears to be SNAPs Change-Id: Icaa0b9f1ec580545b9d0faa88be2080a310deaf7 Signed-off-by: Manuel Buil<mbuil@suse.com>
2017-12-12Clean up our utils.pyManuel Buil4-751/+757
Utils.py was getting messy. This patch divides it into three different files: * test_utils.py * odl_utils.py * openstack_utils.py The tacker library is integrated into openstack_utils.py Change-Id: I310949d1cee49b6aa1c9b3396bf6d6ca458cbaac Signed-off-by: Manuel Buil <mbuil@suse.com>
2017-10-17Produce more logs if things failManuel Buil2-0/+38
Apex deployment shows a problem when creating the SFC config in ODL and it is impossible to know what might be going on Change-Id: If8d33d1c60daaf9cd9773a5cb9c7e47f64e1caa9 Signed-off-by: Manuel Buil <mbuil@suse.com>
2017-10-06If the VM starts quickly, this check might failManuel Buil1-1/+1
Sometimes VM starts very quickly and then it takes longer for this service to come up Change-Id: Ibc4ea47eb0b4b6655e338d1b85e6ed14e61d0064 Signed-off-by: Manuel Buil <mbuil@suse.com>
2017-09-28Modify the list of working topologiesManuel Buil1-14/+13
After testing, there are three topologies which work and three topologies which do not work because of bugs in OVS and ODL. We remove those two from the testing in 5.0.0 Change-Id: I576768978bfa763725027239081686c95408eef4 Signed-off-by: Manuel Buil <mbuil@suse.com>
2017-09-28Bug fix: Delete unnecessary functions which are causing errorsDimitrios Markou1-10/+0
JIRA: SFC-117 Change-Id: I20e12e38a3cf2a9954893cf52187ac153b64bdfa Signed-off-by: Dimitrios Markou <mardim@intracom-telecom.com>
2017-09-25Bug fix: Do not start testing before checkingManuel Buil1-5/+30
JIRA:SFC-113 We used to check that the ACL and RSP flows were implemented because it took a lot of time. However, the new ODL Nitrogen reduced this time a lot and thus we must check that the vxlan_tool is up and the HTTP port is up in the server before doing any test Change-Id: I70219071c7965781b17e80631bf3e2efbfcfe4cd Signed-off-by: Manuel Buil <mbuil@suse.com>
2017-09-20Bug fix: Add iteration to check RSP config in ODLManuel Buil1-1/+8
JIRA: SFC-110 Sometimes the test is quicker than ODL and when it checks the configured RSP, that configuration has not yet been submitted in ODL, thus ODL replies with an empty list. We add an iteration to try again for a couple of times Change-Id: I21e4ac3fc3a919791daa7e41cb2953f7565c4ebb Signed-off-by: Manuel Buil <mbuil@suse.com>
2017-09-19Create vnffg providing the neutron_portManuel Buil2-4/+47
JIRA: SFC-107 We are submitting the vnffgd with a variable for the neutron_port. Before creating the vnffg, we must provide a file with the neutron_port value Change-Id: I9994e2baa53f323df17434448d372598c0d94c72 Signed-off-by: Manuel Buil <mbuil@suse.com>
2017-09-18Bug fix: allows searching vnfd_id based on nameManuel Buil1-2/+6
It is currently impossible to obtain the vnfd_id based on the vnfd_name when we want to create the vnffg Change-Id: Ib7752156db43d76c24f8c6c2803eb7dbc5bbe1d8 Signed-off-by: Manuel Buil <mbuil@suse.com>
2017-09-18[Bug Fix] Delete vnffgs in a reverse orderDimitrios Markou1-1/+1
JIRA: SFC-106 In sfc_two_chain testcase we need to delete first the blue and then the red vnffg because if we do it the other way around the tacker produces a warning that the flow classifier of the vnffg red is in use and cannot delete the chain. The aforementioned warning is produced because during the execution of the two_chain testcase we reassing the classifier from the red vnffg to the blue vnffg. So if we try to delete first the red vnffg we get the warning because the classifier is assigned and in use from the blue vnffg. Change-Id: I3cb7bef4b9b9e75eef4961fe7f63cbc1755130be Signed-off-by: Dimitrios Markou <mardim@intracom-telecom.com>
2017-09-15Update the wait_for_classification_rules functionManuel Buil1-60/+54
Two things must be done: 1 - Be compatible with the new way of doing SFC in ODL Nitrogen 2 - Be installer independent Change-Id: Ibbb3057db30a7c00e92f788bb03e770749e2b255 Signed-off-by: Manuel Buil <mbuil@suse.com>
2017-09-11Merge "Adapt functionality to the new Tacker API"Manuel Buil4-35/+224
2017-09-07Adapt functionality to the new Tacker APIDimitrios Markou4-35/+224
Change-Id: I078e9f26d3040cf04120abd425f03cb4f2e8daef Signed-off-by: Dimitrios Markou <mardim@intracom-telecom.com>
2017-09-01Remove setup_compute_node and configure_iptablesManuel Buil1-27/+0
We are going to use ODL Nitrogen which does not require the NSH hack as packets reaching the VNF will use ETH+NSH encapsulation Change-Id: I5a55fde84e8f17860783ec9de8b99242fc38b9a9 Signed-off-by: Manuel Buil <mbuil@suse.com>
2017-09-01Add new Tacker libraryDimitrios Markou1-0/+190
Change-Id: I710e6f5da92ddfddd9111c6c53274b92d76d7449 Signed-off-by: Dimitrios Markou <mardim@intracom-telecom.com>
2017-08-31Adapt the testcases to multiple installersDimitrios Markou2-22/+47
Right now the testcases are dependent to only one installer. So when we are trying to run the testcases to multiple installers the tests are failing. This patch make the testcases independent to the installer that they run. The testcases are running until the point which they hit the tacker client commands.They are failing in the tacker client commands because we need the new library for the upstream tacker API. The testaces have already tested to two installers (Fuel,Apex-ha). Also this patch contains the changes which are required for the adaptation to the new functest. For more information see the Jira tickets [0],[1],[2]. [0]: https://jira.opnfv.org/browse/SFC-100 [1]: https://jira.opnfv.org/browse/SFC-101 [2]: https://jira.opnfv.org/browse/SFC-102 Change-Id: Id1e5d5c94a65ab8bdea9584fa833bfa0cdec6632 Signed-off-by: Dimitrios Markou <mardim@intracom-telecom.com>
2017-06-30Use the recommended exception syntaxManuel Buil1-1/+1
Today I learnt that the use of except Exception, variable is not recommended anymore and it is not supported after python3. When using >=2.6, the syntax should be except Exception as variable. https://www.python.org/dev/peps/pep-3110/ Change-Id: I213c220fc6e92878ffa4737efa16adb76ace1271 Signed-off-by: Manuel Buil <mbuil@suse.com>
2017-05-26functest_logger changes fixvijayendra Radhakrishna5-10/+10
- Recently there is removal of functest logger utils. - This uses the default python logging mechanism Change-Id: I3aba38041bbed8b1e5a3de93bc9f639253f262d8 Signed-off-by: Vijayendra Radhakrishna <vradhakrishna@mvista.com>
2017-04-07Merge "Remove get_floating_ips()"Manuel Buil1-28/+0
2017-04-06Move all test that work upManuel Buil1-8/+13
Move all test that work up so that we can commit a patch to danube branch in which the seeds can go from 0 to 3, leaving 4 and 5 out of danube. This patch is separated from the danube patch because I think it is easier to have the same list in danube and master to avoid confusion Change-Id: I99f6dad4f1878f776b02fc7eccfc51876057a0fb Signed-off-by: Manuel Buil <mbuil@suse.com>