NFV - Network Functions Virtualisation issueshttps://forge.etsi.org/rep/groups/nfv/-/issues2021-03-18T05:55:00Zhttps://forge.etsi.org/rep/nfv/SOL006/-/issues/33fix AffinityOrAntiAffinityGroup element information in vnfd and nsd2021-03-18T05:55:00Zppreefix AffinityOrAntiAffinityGroup element information in vnfd and nsdv3.5.1ppreeppreehttps://forge.etsi.org/rep/nfv/api-tests/-/issues/156SOL005 Subscription end point is not available for POST response .2021-06-03T08:49:17ZnairaSOL005 Subscription end point is not available for POST response .As part of SOL005 instance creation request , NFVO will create the instance id internally and will do a POST on the subscription end point .
In our testing we created subscription first in NFVO with the generated URL by robo framework
...As part of SOL005 instance creation request , NFVO will create the instance id internally and will do a POST on the subscription end point .
In our testing we created subscription first in NFVO with the generated URL by robo framework
admin@ncs% run show nfv subscriptions
nfv subscriptions ns-subscriptions ns-subscription 06c5a548-24ac-4e10-a99c-95efd15f7c44
callback-uri http://tap.plugtests.net:8111/ecdc80be-5125-45ce-ab04-aa1c99fe8dac
Then we run create instance test
Instance id was created in NFVO and send it to robo as part of API response .
admin@ncs% show nfv ns-info
ns-info b082f6bd-4104-446c-9390-d694572695b5 {
ns-name testNS;
description "NS test from Etsi";
nsd vcu-vcu-nsd;
vnfm-type sol3;
state do-not-instantiate;
}
Same time NFVO will send NsIdentifierCreationNotification to the end point POST to http://tap.plugtests.net:8111/ecdc80be-5125-45ce-ab04-aa1c99fe8dac.
This failed in NFVO. But robo test framework is expecting this notification and it is failing. Attached the logs
On instance:
{'_links': {'instantiate': {'href': 'http://0.0.0.0:9191/nslcm/v1/ns_instances/b082f6bd-4104-446c-9390-d694572695b5/instantiate'},
'self': {'href': 'http://0.0.0.0:9191/nslcm/v1/ns_instances/b082f6bd-4104-446c-9390-d694572695b5'}},
'id': 'b082f6bd-4104-446c-9390-d694572695b5',
'nsInstanceDescription': 'NS test from Etsi',
'nsInstanceName': 'testNS',
'nsState': 'NOT_INSTANTIATED',
'nsdId': 'vcu-vcu-nsd',
'nsdInfoId': 'vcu-vcu-nsd'}
14:07:12.050 FAIL ValidationError: Validation error for schema NsIdentifierCreationNotification.schema.json: 'subscriptionId' is a required property
[6a69eb0e-7199-43b7-81dd-203fd3cb3ce9.NSLifecycleManagement-API.CreateNSInstanceWorkflow.output.xml](/uploads/f34587a436c176c3e4f8decd1f0c9799/6a69eb0e-7199-43b7-81dd-203fd3cb3ce9.NSLifecycleManagement-API.CreateNSInstanceWorkflow.output.xml)
[6a69eb0e-7199-43b7-81dd-203fd3cb3ce9.NSLifecycleManagement-API.CreateNSInstanceWorkflow.report.html](/uploads/03d23c120af61550b0db2d96a79d7df5/6a69eb0e-7199-43b7-81dd-203fd3cb3ce9.NSLifecycleManagement-API.CreateNSInstanceWorkflow.report.html)https://forge.etsi.org/rep/nfv/api-tests/-/issues/157Unknown parameter value appeared when testing SOL003 VNFPackageManagementAPI ...2021-09-23T01:43:12ZyaoyuyUnknown parameter value appeared when testing SOL003 VNFPackageManagementAPI V2.6.1When testing case 'GET Individual VNF Package Artifact with Range Request and NFVO supporting Range Requests' in VNFPackageArtifacts.robot.
It failed because Content-length(51) is not eqaul to the length parameter's value(1024).
but the ...When testing case 'GET Individual VNF Package Artifact with Range Request and NFVO supporting Range Requests' in VNFPackageArtifacts.robot.
It failed because Content-length(51) is not eqaul to the length parameter's value(1024).
but the value i set to the length parameter is 51, not 1024.
If i run it in local with the same configueration, it can pass[][de6ee3b3-5e77-4c82-ba60-752982a34149.VNFPackageManagement-API.VNFPackageArtifacts.log.html](/uploads/9610bce6031d663f9f5f6a047086f329/de6ee3b3-5e77-4c82-ba60-752982a34149.VNFPackageManagement-API.VNFPackageArtifacts.log.html)[configuration.txt](/uploads/4bebedcb73d62e8363b03380c4a3bc6a/configuration.txt)https://forge.etsi.org/rep/nfv/api-tests/-/issues/158"=" should not be included in Content range SOL003/SOL005 VNFPackageManagemen...2021-06-03T08:49:17Zyaoyuy"=" should not be included in Content range SOL003/SOL005 VNFPackageManagementAPI V2.6.1When testing APIs with range request, ['Content-Range'] should be equal to ${range}
```
Check HTTP Response Header Content-Range Is Present and Matches the requested range
Log Check Content-Range HTTP Header
Should Contain ...When testing APIs with range request, ['Content-Range'] should be equal to ${range}
```
Check HTTP Response Header Content-Range Is Present and Matches the requested range
Log Check Content-Range HTTP Header
Should Contain ${response['headers']} Content-Range
Should Be Equal As Strings ${response['headers']['Content-Range']} ${range}
Log Header Content-Range is present
```
But in 'Content-Range',"=" should not be included.
(according to the rfc file https://datatracker.ietf.org/doc/rfc7233/?include_text=1)
eg.Content-Range: bytes 21010-47021/47022
Range: bytes=21010-47021/47022https://forge.etsi.org/rep/nfv/api-tests/-/issues/159FileNotFoundError: No such file or directory:"schema//Subscriptions.schema.js...2021-06-03T08:49:17ZyaoyuyFileNotFoundError: No such file or directory:"schema//Subscriptions.schema.json" SOL003 VNFLifecycleMangagementAPI v2.6.1When testing subscriptions, we get an error with FileNotFoundError: No such file or directory:"schema//Subscriptions.schema.json".
And checked in the schema folder, there's no file with name Subscriptions.schema.json but have a subscript...When testing subscriptions, we get an error with FileNotFoundError: No such file or directory:"schema//Subscriptions.schema.json".
And checked in the schema folder, there's no file with name Subscriptions.schema.json but have a subscriptions.schema.json.
Maybe the parameter is wrong?https://forge.etsi.org/rep/nfv/api-tests/-/issues/160SOL002/VNFLifecycleManagement/IndividualVNFInstance/2.6.1 DELETE queries with...2021-09-20T10:03:29ZvignaudSOL002/VNFLifecycleManagement/IndividualVNFInstance/2.6.1 DELETE queries with Content-Type: application/merge-patch+jsonHi,
When running the complete test IndividualVNFInstance.robot the 2 latest queries are DELETE one. And both are called with the header of a PATCH :
![image](/uploads/9cd1e5a24af0e54342cac66ac669331c/image.png) [log.html](/uploads/b527cf...Hi,
When running the complete test IndividualVNFInstance.robot the 2 latest queries are DELETE one. And both are called with the header of a PATCH :
![image](/uploads/9cd1e5a24af0e54342cac66ac669331c/image.png) [log.html](/uploads/b527cfc3344885165a53ae6c4f826aec/log.html)https://forge.etsi.org/rep/nfv/api-tests/-/issues/161SOL002 / IndividualVnfLcmOperationOccurence / 2.6.1 Multiple problems with PA...2021-06-03T08:49:17ZvignaudSOL002 / IndividualVnfLcmOperationOccurence / 2.6.1 Multiple problems with PATCH methodsHi,
According SOL002 v2.6.1 §5.4.3.3.4 The method PATCH exists.
Note that the patch method is using a vnfLcmOpOccId
> Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfLcmOpOccId}
According SOL002 v2.6.1 §5.4.3.3.5 The metho...Hi,
According SOL002 v2.6.1 §5.4.3.3.4 The method PATCH exists.
Note that the patch method is using a vnfLcmOpOccId
> Patch ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfLcmOpOccId}
According SOL002 v2.6.1 §5.4.3.3.5 The method DELETE exists.
And same strange Id
> Delete ${apiRoot}/${apiName}/${apiVersion}/vnf_instances/${vnfLcmOpOccId}https://forge.etsi.org/rep/nfv/api-tests/-/issues/162SOL005 IndividualNSDescriptor nsdUsageState is retreived on a 4042021-06-03T08:49:17ZvignaudSOL005 IndividualNSDescriptor nsdUsageState is retreived on a 404In `GET Individual Network Service Descriptor Information with invalid resource identifier` test case fail because
`Resolving variable '${response['body']['nsdUsageState']}' failed: KeyError: 'nsdUsageState'`
Of course it does not exi...In `GET Individual Network Service Descriptor Information with invalid resource identifier` test case fail because
`Resolving variable '${response['body']['nsdUsageState']}' failed: KeyError: 'nsdUsageState'`
Of course it does not exist on a ProblemDetails response.
[log.html](/uploads/4085f817643c1c793a5cc186e5a6389f/log.html)https://forge.etsi.org/rep/nfv/api-tests/-/issues/163SOL005 NSDManagement IndividualSubscription PUT & PATCH methods fail to evalu...2021-03-04T08:26:19ZvignaudSOL005 NSDManagement IndividualSubscription PUT & PATCH methods fail to evaluate JsonThose methods fail with error message :
`Evaluating expression 'json.loads('''{'id': '527bb09d-29e2-4025-962e-1e21134a6836', <...SNIP...>''')' failed: JSONDecodeError: Expecting property name enclosed in double quotes: line 1 column 2 ...Those methods fail with error message :
`Evaluating expression 'json.loads('''{'id': '527bb09d-29e2-4025-962e-1e21134a6836', <...SNIP...>''')' failed: JSONDecodeError: Expecting property name enclosed in double quotes: line 1 column 2 (char 1)`
[log.html](/uploads/38b97df5a0ca96e185e8c0d123fc86bf/log.html)https://forge.etsi.org/rep/nfv/api-tests/-/issues/165Using the same parameter when checking full size and Content-length SOL003 v2...2021-06-03T08:49:17ZyaoyuyUsing the same parameter when checking full size and Content-length SOL003 v2.6.1 VNFPackageManagementAPISame parameter is used to check for the file size and range size.and they can only be eqaul if the range size is same with the file size.
eg. the file size is 51 and the request range is range :bytes=0-50
so the response in Content-R...Same parameter is used to check for the file size and range size.and they can only be eqaul if the range size is same with the file size.
eg. the file size is 51 and the request range is range :bytes=0-50
so the response in Content-Range will be bytes 0-50/51
and the Content-Length will be 51 too
Another situation is the file size is 1000 and the request range is range :bytes=0-50
so the response in Content-Range will be bytes 0-50/1000
and the Content-Length will be 51
The parameter used to be ${full_size} and ${length} but it is changed now.
```
Check HTTP Response Header Content-Range Is Present and Matches the requested range
Log Check Content-Range HTTP Header
Should Contain ${response['headers']} Content-Range
Should Be Equal As Strings ${response['headers']['Content-Range']} bytes ${range}/${full_length}
Log Header Content-Range is present
Check HTTP Response Header Content-Length Is Present and Matches the requested range length
Log Check Content-Length HTTP Header
Should Contain ${response['headers']} Content-Length
Should Be Equal As Integers ${response['headers']['Content-Length']} ${full_length}
Log Header Content-Length is present
```https://forge.etsi.org/rep/nfv/api-tests/-/issues/166Wrong data type for links SOL005 VNFPackageManagementAPI v2.6.12021-06-03T08:49:17ZyaoyuyWrong data type for links SOL005 VNFPackageManagementAPI v2.6.1Test failed beacause meeting the error as followed:
ValidationError: Validation error for schema links.schema.json: {'self': {'href': '/vnfpkgm/v1/vnf_packages/04d7a289-50d7-42c6-bcab-795712f0c3a5'}, 'packageContent': {'href': '/vnfpkgm/...Test failed beacause meeting the error as followed:
ValidationError: Validation error for schema links.schema.json: {'self': {'href': '/vnfpkgm/v1/vnf_packages/04d7a289-50d7-42c6-bcab-795712f0c3a5'}, 'packageContent': {'href': '/vnfpkgm/v1/vnf_packages/04d7a289-50d7-42c6-bcab-795712f0c3a5/package_content'}} is not of type 'array'
refered to the links.schema.json file, the code is
`"type": "array",`
but according to the sol specification (SOL005 v2.6.1 9.5.2.5 Type: VnfPkgInfo), the links's data type should be Structure (inlined)
[249cd2b9-168c-4272-80ff-0d348154432c.VNFPackageManagement-API.VNFPackages.log.html](/uploads/0e4260747fe1eabc4af0a4475b20f9de/249cd2b9-168c-4272-80ff-0d348154432c.VNFPackageManagement-API.VNFPackages.log.html)https://forge.etsi.org/rep/nfv/api-tests/-/issues/167POST Terminate a vnfInstance Conflict returned http code 202 SOL003 VNFLifecy...2021-06-03T08:49:17ZyaoyuyPOST Terminate a vnfInstance Conflict returned http code 202 SOL003 VNFLifecycleManagementAPI v2.6.1According to the specifitiaction, when termanting a not-instantiate state vnf instance, it should return http code 409, while the code check if it is 202.
specificaition SOL003 V2.6.1 Chapter 5.4.8.3.1
Typically, this is due to the fact...According to the specifitiaction, when termanting a not-instantiate state vnf instance, it should return http code 409, while the code check if it is 202.
specificaition SOL003 V2.6.1 Chapter 5.4.8.3.1
Typically, this is due to the fact that the "Individual VNF
instance" resource is in NOT_INSTANTIATED state,
that another lifecycle management operation is
ongoing, or that a required (see note) child attribute of
the "extensions" attribute has not been set.https://forge.etsi.org/rep/nfv/api-tests/-/issues/168TST issue in '/vnflcm/{apiMajorVersion}/vnf_lcm_op_occs SOL003 v2.6.1 api2021-03-09T14:17:25ZguptanavTST issue in '/vnflcm/{apiMajorVersion}/vnf_lcm_op_occs SOL003 v2.6.1 apiwhen testing **/vnflcm/{apiMajorVersion}/vnf_lcm_op_occs SOL003** api
HTTP return code is 200 but test suite is fail as it is expecting 202 return code
[ocss_TST_ISSUE.txt](/uploads/e8d79d9fe5cd48e124226acae9be210b/ocss_TST_ISSUE.txt)when testing **/vnflcm/{apiMajorVersion}/vnf_lcm_op_occs SOL003** api
HTTP return code is 200 but test suite is fail as it is expecting 202 return code
[ocss_TST_ISSUE.txt](/uploads/e8d79d9fe5cd48e124226acae9be210b/ocss_TST_ISSUE.txt)https://forge.etsi.org/rep/nfv/SOL005/-/issues/18SOL005NSFaultManagement_def.yaml: faultDetails should be an array2021-09-28T14:56:38ZhegdesaSOL005NSFaultManagement_def.yaml: faultDetails should be an arrayPlease refer to the following line: https://forge.etsi.org/rep/nfv/SOL005/blob/master/src/SOL005/NSFaultManagement/definitions/SOL005NSFaultManagement_def.yaml#L101
`faultDetails` should be an array of strings, instead of a string.
Pag...Please refer to the following line: https://forge.etsi.org/rep/nfv/SOL005/blob/master/src/SOL005/NSFaultManagement/definitions/SOL005NSFaultManagement_def.yaml#L101
`faultDetails` should be an array of strings, instead of a string.
Page 245 of the [SOL005 specification](https://www.etsi.org/deliver/etsi_gs/NFV-SOL/001_099/005/02.07.01_60/gs_NFV-SOL005v020701p.pdf) has the following, which indicates a cardinality on `faultDetails`:
```
| faultDetails | String | 0..N | Provides additional information about the fault. |
```https://forge.etsi.org/rep/nfv/api-tests/-/issues/169SOL005 NS LCM Individual NSInstance v2.7.1 - delete with conflict cannot be r...2021-03-03T17:59:25ZGiacomo BerniniSOL005 NS LCM Individual NSInstance v2.7.1 - delete with conflict cannot be run due to previous test executionThis test uses a single nsInstanceId variable, however, when it gets deleted at the “delete” test, then it can’t be found at the “delete conflict” testThis test uses a single nsInstanceId variable, however, when it gets deleted at the “delete” test, then it can’t be found at the “delete conflict” testhttps://forge.etsi.org/rep/nfv/SOL006/-/issues/34VnfLcmOperation coordination based on IFA011ed3512021-10-28T05:13:11ZppreeVnfLcmOperation coordination based on IFA011ed351Changes implemented from IFA011ed351 Cross stages alignment w.r.t. LCM coordinationChanges implemented from IFA011ed351 Cross stages alignment w.r.t. LCM coordinationv3.5.1ppreeppreehttps://forge.etsi.org/rep/nfv/api-tests/-/issues/170SOL002 /vnflcm/{apiMajorVersion}/vnf_instances POST, /vnflcm/{apiMajorVersion...2021-05-28T07:11:16ZguptanavSOL002 /vnflcm/{apiMajorVersion}/vnf_instances POST, /vnflcm/{apiMajorVersion}/vnf_instances GET and /vnflcm/{apiMajorVersion}/vnf_instances/${vnfInstanceId} GET V2.6.1When testing cases
* '**Create a new vnfInstance**' some validation error for schema vnfInstance.schema.json: '*vnfPkgInfoId*' is a required property comes but HTTP return status is 201
* '**GET information about multiple VNF insta...When testing cases
* '**Create a new vnfInstance**' some validation error for schema vnfInstance.schema.json: '*vnfPkgInfoId*' is a required property comes but HTTP return status is 201
* '**GET information about multiple VNF instances**' some validation error for schema vnfInstance.schema.json: '*vnfPkgInfoId*' is a required property comes but HTTP return status is 201
* '**Get Information about an individual VNF Instance**' some validation error for schema vnfInstance.schema.json: '*vnfPkgInfoId*' is a required property comes but HTTP return status is 200
*Attached are complete logs of the same* :
[82461eeb-3b91-49b0-b713-9f177d06e830.VNFLifecycleManagement-API.VNFInstances.log.html](/uploads/fe2c3cf96711fd950ab429de66f8d8e4/82461eeb-3b91-49b0-b713-9f177d06e830.VNFLifecycleManagement-API.VNFInstances.log.html)[d7ccf875-e3c1-4823-a5fa-6f6e21790574.VNFLifecycleManagement-API.IndividualVNFInstance.log.html](/uploads/bdde85d95aa68e13898197f9a2b25354/d7ccf875-e3c1-4823-a5fa-6f6e21790574.VNFLifecycleManagement-API.IndividualVNFInstance.log.html)https://forge.etsi.org/rep/nfv/api-tests/-/issues/171SOL002 /vnflcm/{apiMajorVersion}/vnf_lcm_op_occs, /vnflcm/{apiMajorVersion}/v...2021-05-28T07:11:07ZguptanavSOL002 /vnflcm/{apiMajorVersion}/vnf_lcm_op_occs, /vnflcm/{apiMajorVersion}/vnf_lcm_op_occs/${vnfLcmOpOccId}, /vnflcm/{apiMajorVersion}/subscriptions and /vnflcm/{apiMajorVersion}/subscriptions/${subscriptionId} GET V2.6.1When testing cases
* '**GET status information about multiple VNF LCM operation occurrences**'
* '**Get information about multiple VNF instances**
* '**GET Subscriptions**'
* '**GET Individual Subscription**'
they all got fai...When testing cases
* '**GET status information about multiple VNF LCM operation occurrences**'
* '**Get information about multiple VNF instances**
* '**GET Subscriptions**'
* '**GET Individual Subscription**'
they all got failed with error message 'FileNotFoundError: [Errno 2] No such file or directory: 'schemas//VnfLcmOpOcc.schema.json'.' comes.
*Attached are complete logs of the same* :
[1011cde5-cbc8-4e78-abae-7f1e04825cde.VNFLifecycleManagement-API.VnfLcmOperationOccurences.log.html](/uploads/2ca2ec54d04c7e8bd9ad493b66a4a1a2/1011cde5-cbc8-4e78-abae-7f1e04825cde.VNFLifecycleManagement-API.VnfLcmOperationOccurences.log.html)[e040fbc1-df19-4e79-a62a-1920dc7d9649.VNFLifecycleManagement-API.IndividualVnfLcmOperationOccurence.log.html](/uploads/ac24de9919bac234e6149aa8ad3294c6/e040fbc1-df19-4e79-a62a-1920dc7d9649.VNFLifecycleManagement-API.IndividualVnfLcmOperationOccurence.log.html)[a1d86506-aee1-4893-ba5b-368a4e0a2f8c.VNFLifecycleManagement-API.Subscriptions.log.html](/uploads/59eb245f335e2fa95b7c48e37c9c0b83/a1d86506-aee1-4893-ba5b-368a4e0a2f8c.VNFLifecycleManagement-API.Subscriptions.log.html)[8fd09181-deab-44dd-84f4-b5d96f391396.VNFLifecycleManagement-API.IndividualSubscription.log.html](/uploads/708c1228e41dbbcf897ede19b5953c51/8fd09181-deab-44dd-84f4-b5d96f391396.VNFLifecycleManagement-API.IndividualSubscription.log.html)https://forge.etsi.org/rep/nfv/api-tests/-/issues/172SOL002 /vnflcm/{apiMajorVersion}/subscriptions POST V2.6.12021-03-18T06:28:46ZguptanavSOL002 /vnflcm/{apiMajorVersion}/subscriptions POST V2.6.1When testing cases' **POST Create a new subscription**' it got failed with error message 'FileNotFoundError: [Errno 2] No such file or directory: 'schemas//VnfLcmOpOcc.schema.json'.' comes.
*Attached are complete logs of the same* :
[...When testing cases' **POST Create a new subscription**' it got failed with error message 'FileNotFoundError: [Errno 2] No such file or directory: 'schemas//VnfLcmOpOcc.schema.json'.' comes.
*Attached are complete logs of the same* :
[a1d86506-aee1-4893-ba5b-368a4e0a2f8c.VNFLifecycleManagement-API.Subscriptions.log.html](/uploads/2ac94ad8afddc6eb3f47fb87a88c9567/a1d86506-aee1-4893-ba5b-368a4e0a2f8c.VNFLifecycleManagement-API.Subscriptions.log.html)https://forge.etsi.org/rep/nfv/api-tests/-/issues/173SOL002 and SOL003 /vnflcm/{apiMajorVersion}/subscriptions/${subscriptionId} D...2021-05-28T07:11:32ZguptanavSOL002 and SOL003 /vnflcm/{apiMajorVersion}/subscriptions/${subscriptionId} DELETE V2.6.1When testing cases' '**DELETE an individual subscription**' HIVE TAP return 204 but expected is 405
*Attached are complete logs of the same* :
[8fd09181-deab-44dd-84f4-b5d96f391396.VNFLifecycleManagement-API.IndividualSubscription.log...When testing cases' '**DELETE an individual subscription**' HIVE TAP return 204 but expected is 405
*Attached are complete logs of the same* :
[8fd09181-deab-44dd-84f4-b5d96f391396.VNFLifecycleManagement-API.IndividualSubscription.log.html](/uploads/8bc7401b73e41327fb16f4f1bbe40ba7/8fd09181-deab-44dd-84f4-b5d96f391396.VNFLifecycleManagement-API.IndividualSubscription.log.html)
[fd116d50-052f-475c-9fb0-5fc382afdd73.VNFLifecycleManagement-API.IndividualSubscription.log.html](/uploads/275995211db731eeaf15f81f8536e16d/fd116d50-052f-475c-9fb0-5fc382afdd73.VNFLifecycleManagement-API.IndividualSubscription.log.html)