guillaume.lambert [Sat, 4 Dec 2021 13:34:13 +0000 (14:34 +0100)]
Migrate topology func. tests to RFC8040 Step 2
JIRA: TRNSPRTPCE-567
Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
Change-Id: I26c6f70db1a97743be1c84fd987bf79c2c7ec0b0
guillaume.lambert [Fri, 3 Dec 2021 19:57:49 +0000 (20:57 +0100)]
Reintroduce nb-bierman02 support in new func tests
Up to now, migrated tests no more supported legacy bierman02 draft
RESTCONF queries, and only RFC8040.
With a few adaptations, they can now be configured to reuse this old
RESTCONF version via an environment variable.
JIRA: TRNSPRTPCE-567
Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
Change-Id: I8be28014be2c572c7555865d4af76988e30bf9ac
guillaume.lambert [Wed, 1 Dec 2021 14:53:50 +0000 (15:53 +0100)]
Migrate topology func. tests to RFC8040 Step 1
JIRA: TRNSPRTPCE-567
Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
Change-Id: I7f500261cb0a189a368ac4b985b9514b296b81f4
guillaume.lambert [Mon, 29 Nov 2021 13:38:38 +0000 (14:38 +0100)]
Fix remaining pylint warnings apart fixme & dup
JIRA: TRNSPRTPCE-320
Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
Change-Id: I256c36f1059783a26fa0e30292de3c2c1781376b
Guillaume Lambert [Wed, 1 Dec 2021 10:44:57 +0000 (10:44 +0000)]
Merge changes I018b69e8,Ia99c607c,Idc241d22
* changes:
Fix more and more pylint warnings
Fix more pylint warnings
Fix some pylint warnings
guillaume.lambert [Fri, 26 Nov 2021 11:49:20 +0000 (12:49 +0100)]
Fix more and more pylint warnings
JIRA: TRNSPRTPCE-320
Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
Change-Id: I018b69e8b73abba2faac4a1e5ae332010b13e9b3
guillaume.lambert [Fri, 26 Nov 2021 10:45:04 +0000 (11:45 +0100)]
Fix more pylint warnings
JIRA: TRNSPRTPCE-320
Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
Change-Id: Ia99c607c48ad4a6bb305bf800e8f54d1f741e4df
guillaume.lambert [Wed, 24 Nov 2021 08:40:30 +0000 (09:40 +0100)]
Fix some pylint warnings
JIRA: TRNSPRTPCE-320
Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
Change-Id: Idc241d222c0b52ce90318f1b63f6f9e0fc3b114b
Gilles Thouenon [Mon, 29 Nov 2021 07:19:53 +0000 (08:19 +0100)]
Bump netconf dependency to 2.0.11
Avoid having sshd hexadecimal traces in our logs.
JIRA: TRNSPRTPCE-565
Signed-off-by: Gilles Thouenon <gilles.thouenon@orange.com>
Change-Id: I50eb8d485eef4d17a41aaee1b77e2c9ee732d793
Christophe Betoule [Tue, 23 Nov 2021 13:41:43 +0000 (14:41 +0100)]
Bump netconf dependency to 2.0.10
JIRA: TRNSPRTPCE-565
Signed-off-by: Christophe Betoule <christophe.betoule@orange.com>
Change-Id: Ie552d9c91f01bb10cd2e57a7f463a24f6935aa33
guillaume.lambert [Thu, 28 Oct 2021 07:48:24 +0000 (09:48 +0200)]
Migrate portmapping functional tests to RFC8040
JIRA: TRNSPRTPCE-567
Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
Change-Id: Ie6150a68a4a588c06979b27a1753ee5cb9bc283c
guillaume.lambert [Fri, 29 Oct 2021 10:31:17 +0000 (12:31 +0200)]
Remove u prefix obsoleted by python 3
Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
Change-Id: Ib0913157fa97f418dd846124d4fdc3d97250ca0a
guillaume.lambert [Fri, 29 Oct 2021 09:51:54 +0000 (11:51 +0200)]
Enforce autopep8 via pre-commit
Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
Change-Id: Ia0021347c46488ecc2a922f4e370ca5ad4edafd9
guillaume.lambert [Fri, 29 Oct 2021 09:34:03 +0000 (11:34 +0200)]
Run pre-commit autoupdate
Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
Change-Id: I9dda524f19b15dbb6195e586ed93f2e04202a416
guillaume.lambert [Fri, 29 Oct 2021 09:30:37 +0000 (11:30 +0200)]
Ignore python local imports in PEP8 linters
To work correctly, test_utils imports must be after
sys.path.append('transportpce_tests/common/')
The " # nopep8" comment prevents autopep8 to move them before.
Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
Change-Id: Ifb91716a94acf20732ffc2e0f625b32b79c874d6
Gilles Thouenon [Wed, 15 Sep 2021 09:48:35 +0000 (11:48 +0200)]
New functional test suite of otn-swith 2.2.1
Create a new functional test suite testing the end-to-end 100GE service
management over two (or more) otn-switch. Two uses cases are verified:
- when two otn-switch are used as "AZ" node, at the termination of the
service
- when a thrid otn-switch is used as "intermediate" node, serving as an
otn-regenerator. In such a case, the 100GE/ODU4 service is supported by
two OTU4 server links.
Also update simulator configuration files to perform such a network
configuration with 3 ROADMs and 3 otn-switches. Adapt some functional
tests consequently.
Finally, rename tapi functional test to keep sequence logical.
JIRA: TRNSPRTPCE-530
Signed-off-by: Gilles Thouenon <gilles.thouenon@orange.com>
Change-Id: I117a1426d6ecabeeb2a170779846f08201f32d02
Gilles Thouenon [Mon, 15 Nov 2021 10:16:43 +0000 (11:16 +0100)]
Bump netconf dependency to 2.0.9
JIRA: TRNSPRTPCE-565
Signed-off-by: Gilles Thouenon <gilles.thouenon@orange.com>
Change-Id: If419f55de49d788cba7b9f8897fc3bf7106c7531
Gilles Thouenon [Thu, 16 Sep 2021 08:03:17 +0000 (10:03 +0200)]
Enable 100GE service over multiple OTU4 links
Creating/deleting a 100GE service over more than 2 otn-switches imposes
to be able to update bandwidth parameters of multiple supported OTU4
links in otn-topology. To that end, it is necessary to apply some
changes in the notification transmits from the renderer towards service
handler.
- introduce leaf-list link-id used in the case where we have more than 1
bidirection supported link
- adapt the updateOtnLinks method signature to take the list into acount
- add a new method in renderer/ModelMapingUtils to extract OTU links
directly from a service-path-description
- update import revision of transportpce-renderer model
JIRA: TRNSPRTPCE-531
Signed-off-by: Gilles Thouenon <gilles.thouenon@orange.com>
Change-Id: I401c76551e51666fa20c63ef8c2a141a6e064654
Gilles Thouenon [Mon, 13 Sep 2021 11:13:54 +0000 (13:13 +0200)]
Fix renderer for 100GE on intermediate OTN Switch
This issue appeared when a 100GE service is routed through an
intermediate otn-switch. The otn-service-path rpc was not filled
correctly.
Fix also the monitored mode of the ODU4-CTP termination point when
supporting the 100GE client signal.
JIRA: TRNSPRTPCE-499
Signed-off-by: Gilles Thouenon <gilles.thouenon@orange.com>
Change-Id: I22bcb38388c9adf9e046f01946afbe7ce53d348f
Gilles Thouenon [Mon, 13 Sep 2021 11:05:32 +0000 (13:05 +0200)]
Adapt PCE to compute a 100GE path on OTN Switch
Fixes some issues in PCE when an OTN switch is used as an intermediate
switch.
JIRA: TRNSPRTPCE-499
Signed-off-by: Gilles Thouenon <gilles.thouenon@orange.com>
Change-Id: Ica1468195c0e193d80dc38bd8f5dadebae0d8769
Gilles Thouenon [Thu, 9 Sep 2021 13:41:39 +0000 (15:41 +0200)]
Adapt renderer to manage 100GE service on Switch
- Add new method in OpenRoadmInterface221 to create ODU4 interface as
an HighOrder interface (to support 100GE flow)
- manage the creation/deletion of Ethernet, ODU4-Client, ODU4-Network
and odu-connection to support the 100GE service over an OTN switch
- manage the new 100GE_S service-type in OtnDeviceRendererService
- propagate the service-type inside the renderer in order to have to
determine it only once at the highest renderer level
(RendererServiceOperations)
JIRA: TRNSPRTPCE-499
Signed-off-by: Gilles Thouenon <gilles.thouenon@orange.com>
Change-Id: I23f4df43a66f3d4de8f75687219d3ffa0c148ba5
Gilles Thouenon [Thu, 9 Sep 2021 13:23:29 +0000 (15:23 +0200)]
Adapt network module to update OTU links only
Add a new updateOtnLink method in NetworkModelService and implement it
to update bandwidth parameters of OTU4 links only when creating/deleting
100GE service that is not supported over a structured ODU4. This is the
case when the service is terminated on an OTN Switch.
JIRA: TRNSPRTPCE-512
Signed-off-by: Gilles Thouenon <gilles.thouenon@orange.com>
Change-Id: I9db5ecaba843093b3a9543ef9e24b03ff3a227fb
Gilles Thouenon [Thu, 9 Sep 2021 13:02:32 +0000 (15:02 +0200)]
Fix javadoc in CrossConnect interface
JIRA: TRNSPRTPCE-511
Signed-off-by: Gilles Thouenon <gilles.thouenon@orange.com>
Change-Id: Ibce010eb83a1280264285070e584bb71f8fd12a9
Gilles Thouenon [Tue, 7 Sep 2021 12:24:47 +0000 (14:24 +0200)]
Introduce the 100GE_S service type in PCE
This service-type allows path computation for a 100GE service terminated
on a 100G OTN switch.
JIRA: TRNSPRTPCE-499
Signed-off-by: Gilles Thouenon <gilles.thouenon@orange.com>
Change-Id: I5085dfdcf2ed34b7df5ceec5a50651196f0bd866
Gilles Thouenon [Tue, 7 Sep 2021 12:11:25 +0000 (14:11 +0200)]
Introduce new ServiceType to use otn-switch
Will allow 100GE services supported by 100G OTN switch.
Add also UT for ServiceType class.
JIRA: TRNSPRTPCE-499
Signed-off-by: Gilles Thouenon <gilles.thouenon@orange.com>
Change-Id: Id111b1897c82ef26fd28d9df5033ee97cf97fffa
Gilles Thouenon [Thu, 7 Oct 2021 11:07:25 +0000 (13:07 +0200)]
Set xponder-type in portmapping
Set xponder-type for all ports of xponder to be able to distinguish
service-type 100GEs from 100GEm (and not only on network ports).
JIRA: TRNSPRTPCE-499
Signed-off-by: Gilles Thouenon <gilles.thouenon@orange.com>
Change-Id: I71391133ca3659fa8b3b316cafb34a8bac6a0040
Gilles Thouenon [Wed, 6 Oct 2021 15:50:31 +0000 (17:50 +0200)]
Make lcp hash computation method public
To make it available by other modules, especially at the renderer level
if we want to compute the hash for sapi/dapi at the service
configuration step.
JIRA: TRNSPRTPCE-537
Signed-off-by: Gilles Thouenon <gilles.thouenon@orange.com>
Change-Id: Ia1b32ce5725bbe21e76af08fd3a8247d7f9abb8a
Guillaume Lambert [Wed, 10 Nov 2021 19:19:33 +0000 (19:19 +0000)]
Merge "Fix functional tests 2.2.1 sequence"
Christophe Betoule [Mon, 25 Oct 2021 14:01:12 +0000 (16:01 +0200)]
Fix rule format for ServiceUInterfacePoint
- Align multi-layer topology SIP format to the one of the full
multi-layer topology.
- SIP format becomes an UUI derived from the combination of nodeId and
tp instead of an UUID derived from the nep UUID.
- Add UT consequently
JIRA: TRNSPRTPCE-562
Signed-off-by: Christophe Betoule <christophe.betoule@orange.com>
Change-Id: I08d2ac0c5e49a32235948bea824f301cab6679c2
Guillaume Lambert [Tue, 9 Nov 2021 19:49:16 +0000 (19:49 +0000)]
Merge "Update diagram and developer guide for Si and P"
orenais [Fri, 15 Oct 2021 13:27:22 +0000 (15:27 +0200)]
Update diagram and developer guide for Si and P
Change-Id: I269bf204d41d7dc711de955cdd03f5b700af604c
Christophe Betoule [Wed, 13 Oct 2021 15:28:26 +0000 (17:28 +0200)]
TAPI functional tests
test the connectivity service creation and deletion for a 10GE service
between 10G MXPDR (PHOTONIC_MEDIA, ODU, DSR)
JIRA: TRNSPRTPCE-468
Signed-off-by: Christophe Betoule <christophe.betoule@orange.com>
Change-Id: I24e193810c7a2d01fa0559995a41309e64a6204c
errea [Thu, 14 Oct 2021 15:12:04 +0000 (17:12 +0200)]
Enable UUID and name in TAPI RPCs
Improvement to enable the use of either UUID or name
when performing TAPI rpcs.
JIRA: TRNSPRTPCE-564
Signed-off-by: errea <errea@eurecom.fr>
Change-Id: I8d9a2c4c25514bad0be0115a53fd6fd243187780
Javier Errea [Mon, 11 Oct 2021 14:33:36 +0000 (16:33 +0200)]
Fix null Supported CEP Qual. on TAPI node creation
Added case for ODU0 supported interface in creation method
of Supported CEP Qual.
JIRA: TRNSPRTPCE-559
Signed-off-by: errea <errea@eurecom.fr>
Change-Id: I715c710af6518865ce8c798ace40d1a0579d90ec
Javier Errea [Fri, 8 Oct 2021 11:14:32 +0000 (13:14 +0200)]
Fix getTapiNode to avoid missing ONEPs
JIRA: TRNSPRTPCE-558
Change-Id: I36b7a3a93d51104681f60fdf5d536889cdb62683
Signed-off-by: errea <errea@eurecom.fr>
Javier Errea [Tue, 29 Jun 2021 14:00:49 +0000 (16:00 +0200)]
Fix wrong Supported CEP protocol qualifier
TAPI nodes supported CEP qual. set based on interface
capability of the corresponding Termination Point
JIRA: TRNSPRTPCE-557
Signed-off-by: errea <errea@eurecom.fr>
Change-Id: I567cbcf537b876f47af8fe8dfcfed7911e79e3f0
Javier Errea [Tue, 29 Jun 2021 10:03:58 +0000 (12:03 +0200)]
Junit tests for new TAPI module
- TAPI convert OR to TAPI test
- TAPI topology tests + utils
- TAPI Connectivity tests + utils
- TAPI provider test
- Fix TapiConnectivityImpl and TapiContext to enable tests
- Fix ConvertFullTopo OMS link creation
JIRA: TRNSPRTPCE-563
Signed-off-by: errea <errea@eurecom.fr>
Change-Id: Ie0796a438c26fed89997dbd2a73b979ede160517
Javier Errea [Tue, 29 Jun 2021 09:50:57 +0000 (11:50 +0200)]
Code refactoring for OR-TAPI mapping
- Nodes, NEPs, SIPs and Links have states according to OR objects
- Changed Name attribute of TAPI roadm NEPs -> testing purposes
JIRA: TRNSPRTPCE-467
Signed-off-by: errea <errea@eurecom.fr>
Change-Id: I4469e7244ed3a49b81b4dd2dac33814260eaa9a2
Guillaume Lambert [Fri, 29 Oct 2021 13:32:04 +0000 (13:32 +0000)]
Merge "Fix bug in OLM during spanloss computation"
Guillaume Lambert [Fri, 29 Oct 2021 12:23:18 +0000 (12:23 +0000)]
Merge changes I27d64e31,I9d7bba90
* changes:
Run autopep8 tox profile
Remove unused imports detected by pylint
Guillaume Lambert [Fri, 29 Oct 2021 12:21:13 +0000 (12:21 +0000)]
Merge "Bump upstream dependencies to P-SR1"
Gilles Thouenon [Wed, 27 Oct 2021 10:01:57 +0000 (12:01 +0200)]
Bump upstream dependencies to P-SR1
odlparent => 9.0.8
mdsal => 8.0.7
netconf => 2.0.7
JIRA: TRNSPRTPCE-565
Signed-off-by: Gilles Thouenon <gilles.thouenon@orange.com>
Change-Id: I426325d16e3e1f55b634728b686e348266a349f5
guillaume.lambert [Fri, 29 Oct 2021 07:32:59 +0000 (09:32 +0200)]
Fix functional tests 2.2.1 sequence
JIRA: TRNSPRTPCE-482
Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
Change-Id: Ia644743ef8fb939220f335b6c1100fef2aa11602
guillaume.lambert [Thu, 28 Oct 2021 08:50:05 +0000 (10:50 +0200)]
Run autopep8 tox profile
Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
Change-Id: I27d64e316a00de3ec21936f3427f1c63405e62da
errea [Fri, 15 Oct 2021 12:25:39 +0000 (14:25 +0200)]
Extend tapi feature documentation
- Add description of the tapi extension into the developer
guide and update tapi-topology figure
- Add comments on the Topology Management - Service Handler
interface
JIRA: TRNSPRTPCE-469
Change-Id: I229e34d64bb3548eda51f89c2f1caef3550b3251
Signed-off-by: errea <errea@eurecom.fr>
guillaume.lambert [Thu, 28 Oct 2021 07:52:14 +0000 (09:52 +0200)]
Remove unused imports detected by pylint
Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
Change-Id: I9d7bba90954b0018980104943bf346e7eb1cda2d
Gilles Thouenon [Wed, 20 Oct 2021 14:29:53 +0000 (16:29 +0200)]
Remove upstream dependencies version overriding
Remove some dependency versions that were overriding versions managed in
odlparent.
JIRA: TRNSPRTPCE-555
Signed-off-by: Gilles Thouenon <gilles.thouenon@orange.com>
Change-Id: I7e9e43edb2ca25be2594026316ef65b41fe15ffc
Guillaume Lambert [Thu, 28 Oct 2021 07:07:44 +0000 (07:07 +0000)]
Merge "Refactor Karaf builds for tests and tox.ini"
Guillaume Lambert [Thu, 28 Oct 2021 07:06:58 +0000 (07:06 +0000)]
Merge "Fix remaining PortMapping sonar issues"
guillaume.lambert [Mon, 25 Oct 2021 10:15:02 +0000 (12:15 +0200)]
Refactor Karaf builds for tests and tox.ini
- use dedicated env files for Karaf listening ports settings
- create tox profiles to (re)build Karaf folders dedicated to tests
- adapt tests launcher and build scripts accordingly
This should avoid weird race conditions that can happen when performing
several tests locally.
JIRA: TRNSPRTPCE-482
Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
Change-Id: Icfa0e09e65ed054155002b9e4b07370ca1ad0aaf
Gilles Thouenon [Thu, 21 Oct 2021 08:24:51 +0000 (10:24 +0200)]
Fix bug in OLM during spanloss computation
Prevent from getting NPE when OTS interface terminating the
roadm-to-roadm link under spanloss determination does not exist in the
device.
- remove invocation of getOtsInterfaceName method on an OtsPmHolder null
object, at the origin of the NPE thrown.
This check is superfluous since OtsPmHolder.getOtsInterfaceName() can
not be null if OtsPmHolder is not null.
- fix typo on OtsPmHolder variable names
- adapt LOG messages consequently
JIRA: TRNSPRTPCE-172
Signed-off-by: Gilles Thouenon <gilles.thouenon@orange.com>
Change-Id: Idec6fac25a33c7748ad4996e01211e04667b4fd5
guillaume.lambert [Thu, 21 Oct 2021 09:26:06 +0000 (11:26 +0200)]
Update PTL info
Gilles Thouenon has been approved as the new PTL of TransportPCE.
https: //wiki.opendaylight.org/display/ODL/2021+PTL+election
Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
Change-Id: I91e4d33ebd23b8c9c03a248719bfeee71621206f
guillaume.lambert [Tue, 19 Oct 2021 07:54:36 +0000 (09:54 +0200)]
Fix remaining PortMapping sonar issues
This refactoring intends to fix remaining sonar issues about
cyclomatic complexity and commented code in PortMapping classes.
To this purpose, it introduces a few intermediate functions.
JIRA: TRNSPRTPCE-355 TRNSPRTPCE-356
Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
Change-Id: I7e24dc8ae4841658370a07d73017a9ca49766536
Guillaume Lambert [Mon, 18 Oct 2021 09:35:37 +0000 (09:35 +0000)]
Merge changes Ic48b0970,Id372a645
* changes:
Add a feature to start swagger
Remove OpenROADM ospf YANG model rev 2020-05-29
Guillaume Lambert [Fri, 15 Oct 2021 19:34:05 +0000 (19:34 +0000)]
Merge changes I05cce46d,Ia329ea5f,I933c58d1
* changes:
Fix some small issues pointed by Sonar
PortMapping Refactoring step 5
PortMapping Refactoring step 4
Guillaume Lambert [Thu, 14 Oct 2021 18:13:25 +0000 (18:13 +0000)]
Merge "Improve container support in tox.ini"
guillaume.lambert [Fri, 3 Sep 2021 08:23:34 +0000 (10:23 +0200)]
Improve container support in tox.ini
- modify tox.ini to use dedicated scripts that can detect a local podman
installation and use it instead of docker.
- replace nbiotifications docker-compose YAML file by a standalone
container directly runnable with docker or podman.
Podman.io is a rootless and serverless alternative to Docker.io.
It avoids using sudo in many cases, what is a good thing.
It is now prefered to Docker.io by many linux distributions.
https://podman.io/
https://access.redhat.com/solutions/
3696691
https://thesynack.com/posts/docker-compose-podman/
https://martinheinz.dev/blog/35
JIRA: TRNSPRTPCE-527
Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
Change-Id: I593568b2e17bebe784eff7b3413d0d5b829f2ade
Gilles Thouenon [Wed, 13 Oct 2021 13:49:29 +0000 (15:49 +0200)]
Fix: Disconnection of netconf node
- Add protection to check that a node exists in TransportPCE datastores
before removing it. Appeared when the node connection remained in a
transient state, and that the node had not been created in PortMapping
and the different topologies.
- Add a new isNodeExist method in PortMapping to test presence or not of
a node in the datastore.
JIRA: TRNSPRTPCE-547
Signed-off-by: Gilles Thouenon <gilles.thouenon@orange.com>
Change-Id: I93744ea941c909c6a18e7ccc879801f83103efba
guillaume.lambert [Tue, 12 Oct 2021 19:59:53 +0000 (21:59 +0200)]
Fix some small issues pointed by Sonar
Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
Change-Id: I05cce46dfa32ed000cc5c3ce1b4a3d9d1b910029
guillaume.lambert [Mon, 11 Oct 2021 12:51:13 +0000 (14:51 +0200)]
PortMapping Refactoring step 5
This refactoring intends to optimize some parts of the code
and to fix sonar issues about cyclomatic complexity.
To this purpose, it introduces a few intermediate functions.
JIRA: TRNSPRTPCE-355 TRNSPRTPCE-356
Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
Change-Id: Ia329ea5ff3f5662ab701aadaf9cf31d9f744693a
guillaume.lambert [Sun, 10 Oct 2021 21:03:43 +0000 (23:03 +0200)]
PortMapping Refactoring step 4
This refactoring intends to optimize some parts of the code
and to fix sonar issues about cyclomatic complexity.
To this purpose, it introduces a few intermediate functions.
JIRA: TRNSPRTPCE-355 TRNSPRTPCE-356
Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
Change-Id: I933c58d12444f928fc0aca692f37423b205d3cd9
Guillaume Lambert [Thu, 30 Sep 2021 17:32:20 +0000 (19:32 +0200)]
Add a feature to start swagger
JIRA: TRNSPRTPCE-534
Signed-off-by: Guillaume Lambert <guillaume.lambert@orange.com>
Change-Id: Ic48b0970386074e83d99515630f9e15bae37bf78
guillaume.lambert [Fri, 8 Oct 2021 09:47:02 +0000 (11:47 +0200)]
Remove OpenROADM ospf YANG model rev 2020-05-29
This model is not used by the current codebase
and prevents swagger from working correctly.
JIRA: TRNSPRTPCE-545 TRNSPRTPCE-534
Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
Change-Id: Id372a645a9913be27660853f91ffd264d071291f
guillaume.lambert [Fri, 8 Oct 2021 10:04:05 +0000 (12:04 +0200)]
Use constants for PortMapping log messages Step 4
Few PortMapping log messages were redundant and needed to be realigned.
They were fixed previously but this created new string for the words
"create" and "update" and "found".
Sonar complains they are used multiples times.
Since these words are shared among all PortMappingVersion*** classes,
migrating them to constants in the PortMappingUtils class is preferable.
JIRA: TRNSPRTPCE-355 TRNSPRTPCE-356
Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
Change-Id: I71a5e8eb654256004f11d10e9f3d3273d79bcede
Guillaume Lambert [Fri, 8 Oct 2021 09:54:59 +0000 (09:54 +0000)]
Merge "PortMapping Refactoring step 3"
Gilles Thouenon [Wed, 6 Oct 2021 08:52:29 +0000 (10:52 +0200)]
Update version configurations
Phosphorus is going to be released.
These versions will apply to Sulfur development.
JIRA: TRNSPRTPCE-535
Signed-off-by: Gilles Thouenon <gilles.thouenon@orange.com>
Change-Id: I764d6fd09bf825f1a34611027a32eac4e65cf550
guillaume.lambert [Fri, 1 Oct 2021 15:31:15 +0000 (17:31 +0200)]
PortMapping Refactoring step 3
This refactoring intends to optimize some parts of the code
and to fix sonar issues about cyclomatic complexity.
To this purpose, it introduces a few intermediate functions.
JIRA: TRNSPRTPCE-355 TRNSPRTPCE-356
Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
Change-Id: I5c1ce21ad982581920c3b57f52987ef433b91dc3
guillaume.lambert [Wed, 29 Sep 2021 08:57:03 +0000 (10:57 +0200)]
PortMapping Refactoring step 2
This refactoring intends to optimize some parts of the code
and to fix sonar issues about cyclomatic complexity.
It introduces intermediate functions, sometimes by reevaluating log
levels and messages content.
JIRA: TRNSPRTPCE-355 TRNSPRTPCE-356
Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
Change-Id: I625598fd935c296f59c9ad42966d5353c21a59d8
guillaume.lambert [Fri, 17 Sep 2021 08:47:28 +0000 (10:47 +0200)]
PortMapping Refactoring step 1
This refactoring intends to optimize some parts of the code
and to fix sonar issues about cyclomatic complexity.
JIRA: TRNSPRTPCE-355 TRNSPRTPCE-356
Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
Change-Id: Ia82c6129d10becf97e161bf4eccb905c1fb850d7
Christophe Betoule [Tue, 21 Sep 2021 13:21:01 +0000 (15:21 +0200)]
B100G end-to-end functional tests
- test the service creation and deletion for a 400GE service between
two 400G TPDR
- test the service creation and deletion for 100GE MXPDR (OTUC4, ODUC4
and 100G)
JIRA: TRNSPRTPCE-506 TRNSPRTPCE-508
Signed-off-by: Christophe Betoule <christophe.betoule@orange.com>
Change-Id: I163dd7fe977e5c2579a4ec8035a41db405210ab0
Christophe Betoule [Tue, 21 Sep 2021 13:18:05 +0000 (15:18 +0200)]
Code consolidation for end-to-end B100G services
Code consolidation to operate the end-to-end creation and deletion of
a 400GE service over a 400G TPDR and a 100GE service on a 400Gbps MPDR
JIRA: TRNSPRTPCE-505 TRNSPRTPCE-507
Signed-off-by: Christophe Betoule <christophe.betoule@orange.com>
Change-Id: I121dcc5a99f5c1f46b1a070cfa927a7af949ab69
guillaume.lambert [Sun, 26 Sep 2021 18:56:56 +0000 (20:56 +0200)]
Use constants for PortMapping log messages Step 3
Few PortMapping log messages were redundant and needed to be realigned.
Some others were triggering Sonar issues.
Since these messages are shared among all PortMappingVersion*** classes,
migrating them to constants in the PortMappingUtils class is preferable.
JIRA: TRNSPRTPCE-355 TRNSPRTPCE-356
Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
Change-Id: I865145bc7207500d727e5778916d9f1f4879c1c0
guillaume.lambert [Wed, 22 Sep 2021 12:56:01 +0000 (14:56 +0200)]
Use constants for PortMapping log messages Step 2
Few PortMapping log messages were redundant and needed to be realigned.
Some others were triggering Sonar issues.
Since these messages are shared among all PortMappingVersion*** classes,
migrating them to constants in the PortMappingUtils class is preferable.
JIRA: TRNSPRTPCE-355 TRNSPRTPCE-356
Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
Change-Id: I2a0cb1788d1c078acdb448f995416f7e3ad79c3e
guillaume.lambert [Thu, 16 Sep 2021 09:56:41 +0000 (11:56 +0200)]
Use constants for PortMapping log messages Step 1
Few PortMapping log messages were redundant and needed to be realigned.
Some others were triggering Sonar issues.
Since these messages are shared among all PortMappingVersion*** classes,
migrating them to constants in the PortMappingUtils class is preferable.
JIRA: TRNSPRTPCE-355 TRNSPRTPCE-356
Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
Change-Id: I944596cc57ae4a352309aeb590b440eadc48bf8c
guillaume.lambert [Thu, 16 Sep 2021 09:56:41 +0000 (11:56 +0200)]
Fix most PortMapping Sonar issues
- use static HashMap instead of switch/case in MappingUtils
- return directly boolean expressions instead of using if-else blocks
- log every catched exceptions
- perform minor refactoring and realignments
JIRA: TRNSPRTPCE-355 TRNSPRTPCE-356
Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
Change-Id: I2f262d94c04d256fb473b94a3815486d5636a14e
guillaume.lambert [Fri, 17 Sep 2021 09:05:43 +0000 (11:05 +0200)]
Add a PortMappingUtils class
- rename FnvUtils class to PortMappingUtils
- move createXpdrLogicalConnectionPort to it
- rename fnv1_64 function name to fnv1size64 to fulfill sonar regex rule
- add a new function to generate Degree TTP names
and to fix a few sonar warnings
JIRA: TRNSPRTPCE-355 TRNSPRTPCE-356
Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
Change-Id: I8cac7d7fabdc5549e0fe92ddcd2da6d8bd907c87
Gilles Thouenon [Mon, 20 Sep 2021 11:35:37 +0000 (13:35 +0200)]
Bump upstream dependencies
Adopt:
- odlparent 9.0.6
- mdsal 8.0.5
- netconf 2.0.5
JIRA: TRNSPRTPCE-435
Signed-off-by: Gilles Thouenon <gilles.thouenon@orange.com>
Change-Id: I0a909fc07d1d86f8c38f74b4fe93decedad15c9a
Vachhani, Shweta (sv111y) [Thu, 12 Aug 2021 13:43:59 +0000 (09:43 -0400)]
Notification Stream selection update
- Update NetConfTopologyListener to read notification streams supported
by device.
- Update the code to look for device support for OPENROADM Stream.
- If OPENROADM stream is not supported by device, code will subscribe
to NETCONF stream
- Sample CONFIGs are updated to have NETCONF stream in device model
JIRA: TRNSPRTPCE-493
Signed-off-by: Vachhani, Shweta (sv111y) <sv111y@att.com>
Change-Id: Icb9b77c12597625b13b6b689d270813d601c3153
guillaume.lambert [Mon, 6 Sep 2021 09:10:03 +0000 (11:10 +0200)]
Fix hybrid functional tests race condition
JIRA: TRNSPRTPCE-493 TRNSPRTPCE-482
Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
Change-Id: I68ec9cd733860c620a7d7684960ff62cc2310867
guillaume.lambert [Fri, 27 Aug 2021 09:07:58 +0000 (11:07 +0200)]
Get rid of YangParserFactory
org.opendaylight.yangtools.yang.model.parser.api.YangParserFactory is
deprecated and marked for removals according to compilation warnings.
PCE Junit tests do not require anymore mocking this Object.
Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
Change-Id: I8f83089a3c6b10011ad9bb25a0e034d2f236f368
guillaume.lambert [Tue, 24 Aug 2021 10:44:47 +0000 (12:44 +0200)]
Fix unused dependencies warnings after bump to P
JIRA: TRNSPRTPCE-435
Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
Change-Id: I904740e44c78f530126e4dd713443d5628ba09e4
guillaume.lambert [Tue, 24 Aug 2021 10:04:49 +0000 (12:04 +0200)]
Fix/Ignore raw type warnings after Phosphorus bump
JIRA: TRNSPRTPCE-435
Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
Change-Id: I45ca9d8f3abceee8e53d5e90fd97f07299b6687d
guillaume.lambert [Mon, 23 Aug 2021 14:44:06 +0000 (16:44 +0200)]
Fix static methods warnings after Phosphorus bump
Static methods should be qualified by type name,
instead of by an expression.
JIRA: TRNSPRTPCE-435
Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
Change-Id: I2d298f7fd36af590e7745530a740efe32e23fd06
Gilles Thouenon [Mon, 13 Sep 2021 15:32:32 +0000 (15:32 +0000)]
Merge changes from topic "97346"
* changes:
Ignore fallthrough warning after Phosphorus bump
Ignore serializable warnings after Phosphorus bump
Phosphorus migration
Fix GNPy functional tests
Change absolute path of leafref in GNPy model
Refactor OLM timers management
guillaume.lambert [Fri, 20 Aug 2021 15:46:41 +0000 (17:46 +0200)]
Ignore fallthrough warning after Phosphorus bump
JIRA: TRNSPRTPCE-435
Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
Change-Id: I07ea123534c8cb369014dcabac335f774ba1f6a0
guillaume.lambert [Fri, 20 Aug 2021 15:35:04 +0000 (17:35 +0200)]
Ignore serializable warnings after Phosphorus bump
JIRA: TRNSPRTPCE-435
Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
Change-Id: I24bd33d9a5aee4b5cdabb7386d056b45a5d68000
Gilles Thouenon [Mon, 19 Jul 2021 13:58:00 +0000 (15:58 +0200)]
Phosphorus migration
Bump upstreams dependencies to:
- odlparent: 9.0.5
- mdsal: 8.0.4
- netconf: 2.0.3
Perform some code adaptations in all modules to allow project building.
- remove number of useless calls to .toString()
- fix issue regarding Tp Name in PCE now that Tp resource is correctly
recognized as a TpId instead of an Object (thanks to an improvement of
leafref management in mdsal)
Remove few useless dependencies.
Disable lighty.io runtime for functional tests
(no lighty version compatible with phosphorus dependencies yet)
Adapt GNPy UT resource file.
JIRA: TRNSPRTPCE-435
Signed-off-by: Gilles Thouenon <gilles.thouenon@orange.com>
Change-Id: Icedf25d2158f35902ff13dce4d137c6eb0a9cd8c
guillaume.lambert [Thu, 2 Sep 2021 12:23:44 +0000 (14:23 +0200)]
Fix GNPy functional tests
"A-to-Z" and "Z-to-A" items have been swapped in arrays returned by
the PCE computation API during the updates to handle high rates.
GNPy functional test must support any order.
JIRA: TRNSPRTPCE-403
Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
Change-Id: If4db8598366bd1387d05dd65220beda589dbb4c1
Gilles Thouenon [Thu, 2 Sep 2021 09:10:12 +0000 (11:10 +0200)]
Change absolute path of leafref in GNPy model
JIRA: TRNSPRTPCE-497
Signed-off-by: Gilles Thouenon <gilles.thouenon@orange.com>
Change-Id: Ief01620be3f2842664dcba6aa7c4851c92e327d5
Guillaume Lambert [Wed, 1 Sep 2021 12:29:27 +0000 (12:29 +0000)]
Merge changes Ic53c9f04,Iae5644f6,Ib3975607
* changes:
Refactor buildcontroller tox profile
Refactor OLM PowerMgmtImpl class
Add documentation to use tox and functional tests
guillaume.lambert [Tue, 31 Aug 2021 09:59:25 +0000 (11:59 +0200)]
Refactor OLM timers management
OLM timer values are defined by OpenROADM whitepaper specifications.
For this reason, they are hardcoded with constants in the current code.
Though, there are at least 2 reasons to make them configurable:
1- At least one vendor product needs more than the OpenROADM whitepaper
recommandation because it is not supporting GainLoss with
target-output-power.
2- The OlmUtils constants are patched in functional tests to speed-up
tests because the simulators needs less time to set the OLM up than
real devices.
As a consequence,
- remove OlmUtils timers constants
- remove related command to patch them in tests scripts
- create a new constructor PowerMgmtImpl to allow any timers values
- modify OLM OSGi blueprint to set default values for these timers
(Default values are the ones recommended in the OpenROADM whitepaper)
- modify lighty build to retrieve these timers from new CLI options
- adapt tests scripts and assembly ressources accordingly
JIRA: TRNSPRTPCE-496
Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
Change-Id: I71f9bdfd38c11ea3427ca2e661cd3590bc2863bf
guillaume.lambert [Thu, 26 Aug 2021 12:50:27 +0000 (14:50 +0200)]
Refactor buildcontroller tox profile
JIRA: TRNSPRTPCE-482
Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
Change-Id: Ic53c9f04ab7f35756792e615af299a98687bb288
guillaume.lambert [Thu, 26 Aug 2021 07:44:22 +0000 (09:44 +0200)]
Refactor Notification support for 7.1 devices
JIRA: TRNSPRTPCE-446
Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
Change-Id: I38320571aca256f0bbd40d09c9f90af5e9b8687c
Shweta Vachhani [Wed, 21 Apr 2021 18:10:35 +0000 (14:10 -0400)]
Notification support for 7.1 devices
1) New notification listeners classes for 7.1 model
2) Listener registration code for 7.1 listeners
JIRA: TRNSPRTPCE-446
Signed-off-by: Shweta Vachhani <sv111y@att.com>
Change-Id: I14a545bf7e48cadb8d16d038173f7b098c60fbc3
Thierry Jiao [Thu, 12 Aug 2021 08:32:14 +0000 (10:32 +0200)]
Update NBINotifications docs
Updates the illustration "Example:service-create workflow" and the
description
Signed-off-by: Thierry Jiao <thierry.jiao@orange.com>
Change-Id: Icfb5da8d9ac489e790a4530694c73550bf837a29
Thierry Jiao [Tue, 10 Aug 2021 09:21:36 +0000 (11:21 +0200)]
Refactor NBINotifications and serviceHandlerImpl
This refactoring renames the models in YANG nbi-notifications file.
It also corrects a few typos, notifications and simplifies conditions.
Signed-off-by: Thierry Jiao <thierry.jiao@orange.com>
Change-Id: Ia23d44b2a158b4828b68c4a9ab2df0dcb121f034
guillaume.lambert [Mon, 9 Aug 2021 10:06:27 +0000 (12:06 +0200)]
Refactor OLM PowerMgmtImpl class
The former implementation of OLM Power management ignored some spotbugs
warnings and triggered many alarms in SonarCloud, mainly about
commented-out lines of code and the SetPower method.
This method had 280 lines and its cyclomatic complexity was 43.
Current Sonar rules warns methods with more than 75 lines of code
and a cyclomatic complexity of 10.
As a consequence
- remove commented-out lines of code
- fix SpotBugs warnings and remove annotations to ignore them
- split the SetPower method into several pieces
- rework and optimize the code
- add TODO and FIXME comments for some parts of the code
that may need to be reconsidered in the future
JIRA: TRNSPRTPCE-211 TRNSPRTPCE-494
Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
Change-Id: Iae5644f66cd6de6e17f81de3cd61dcb546ac2dd1
guillaume.lambert [Thu, 12 Aug 2021 15:05:01 +0000 (17:05 +0200)]
Add documentation to use tox and functional tests
JIRA: TRNSPRTPCE-482
Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
Change-Id: Ib3975607aed1571961f54c151d908148326a0d14
guillaume.lambert [Tue, 6 Jul 2021 07:26:31 +0000 (09:26 +0200)]
Reenforce Lighty use in the gate
Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
Change-Id: I92e51984822ae392ae80d9f6e0814bcb049b9cef
guillaume.lambert [Tue, 6 Jul 2021 09:06:02 +0000 (11:06 +0200)]
Enforce sims download in the gate
There is no point to perform functional tests suites if the related sims
download previously failed because of connectivity issues.
Signed-off-by: guillaume.lambert <guillaume.lambert@orange.com>
Change-Id: I85496f08e33351042ece16db66ff9f310d353f13