Commit 05e2c170 authored by Elian Kraja's avatar Elian Kraja Committed by Michele Carignani

Updating from v2.0.9 to v2.1.1. Cause 8: MEC service management API

parent a431da9b
Pipeline #3590 passed with stage
in 0 seconds
This diff is collapsed.
......@@ -18,17 +18,8 @@ ${SERVICE_ID} e0deee2b-6e50-4f33-ab09-8bf0585025d3
${NON_EXISTENT_SERVICE_ID} NON_EXISTENT_SERVICE_ID
${INVALID_ETAG} INVALID_ETAG
# ${SUBSCRIPTION_TYPE} MobilityProcedureSubscription
# ${SUBSCRIPTION_ID} e0deee2b-6e50-4f33-ab09-8bf0585025d3
# ${NON_EXISTENT_SUBSCRIPTION_ID} NON_EXISTENT_SUBSCRIPTION_ID
# ${NON_EXISTENT_APP_MOBILITY_SERVICE_ID} NON_EXISTENT_APP_MOBILITY_SERVICE_ID
## this parameter should be the same as in jsons/ServiceInfo.json on param serName
${NEW_SERVICE_NAME} NEW_SERVICE_NAME
# # Notifications variables
# ${MOCK_SERVER_JAR} ../../../bin/mockserver-netty-5.5.0-jar-with-dependencies.jar
# ${callback_port} 9091
# ${callback_uri} http://172.22.1.7:${callback_port}
# ${callback_endpoint} /amsi/subscriptions
# ${callback_endpoint_error} /subs_404
# ${total_polling_time} 2 min
# ${polling_interval} 10 sec
\ No newline at end of file
## this parameter should be the same as in jsons/ServiceInfoUpdated.json on param sversion
${SVC_NEW_VERSION} v2.0
\ No newline at end of file
{
"serName": "NEW_SERVICE_NAME",
"version": "reprehenderit Ut non commodo",
"state": "INACTIVE",
"transportInfo": {
"id": "labore ut Excepteur sunt ipsum",
"name": "in minim enim",
"type": "MB_ROUTING",
"protocol": "veniam aliqua cillum in",
"version": "exercitation pariatur",
"endpoint": {
"addresses": [
{
"host": "sint culpa laboris",
"port": 10968
}
]
},
"security": {
"oAuth2Info": {
"grantTypes": [
"OAUTH2_IMPLICIT_GRANT",
"OAUTH2_IMPLICIT_GRANT",
"OAUTH2_CLIENT_CREDENTIALS"
],
"tokenEndpoint": "https://RXjkuoqKaR.nskcJZJsyoIFJ0k86hJdxq.eTHEGqxAybM3DEZlUlYQpZ47s6RR+O9gyFrLbO92,9"
}
},
"description": "dolor occaecat pariatur ex do"
},
"serializer": "XML",
"serInstanceId": "cillum nostrud minim consectetur proident",
"serCategory": {
"href": "http://VWwswcAtAylGx.usasPjZ+bqQIHCMc7FfToVvk2M.SYAWYvSDKGSRL7Z.rxyfC0goFNZtoGJrlFc89,",
"id": "consectetur et eiusmod",
"name": "ea ipsum irure mollit et",
"version": "et"
},
"scopeOfLocality": "ZONE",
"consumedLocalOnly": true,
"isLocal": false
}
\ No newline at end of file
{
"Name": "WRONG_PARAMETER_NAME",
"version": "reprehenderit Ut non commodo",
"state": "INACTIVE",
"transportInfo": {
"id": "labore ut Excepteur sunt ipsum",
"name": "in minim enim",
"type": "MB_ROUTING",
"protocol": "veniam aliqua cillum in",
"version": "exercitation pariatur",
"endpoint": {
"addresses": [
{
"host": "sint culpa laboris",
"port": 10968
}
]
},
"security": {
"oAuth2Info": {
"grantTypes": [
"OAUTH2_IMPLICIT_GRANT",
"OAUTH2_IMPLICIT_GRANT",
"OAUTH2_CLIENT_CREDENTIALS"
],
"tokenEndpoint": "https://RXjkuoqKaR.nskcJZJsyoIFJ0k86hJdxq.eTHEGqxAybM3DEZlUlYQpZ47s6RR+O9gyFrLbO92,9"
}
},
"description": "dolor occaecat pariatur ex do"
},
"serializer": "XML",
"serInstanceId": "cillum nostrud minim consectetur proident",
"serCategory": {
"href": "http://VWwswcAtAylGx.usasPjZ+bqQIHCMc7FfToVvk2M.SYAWYvSDKGSRL7Z.rxyfC0goFNZtoGJrlFc89,",
"id": "consectetur et eiusmod",
"name": "ea ipsum irure mollit et",
"version": "et"
},
"scopeOfLocality": "ZONE",
"consumedLocalOnly": true,
"isLocal": false
}
\ No newline at end of file
{
"serName": "NEW_SERVICE_NAME",
"version": "v2.0",
"state": "INACTIVE",
"transportInfo": {
"id": "labore ut Excepteur sunt ipsum",
"name": "in minim enim",
"type": "MB_ROUTING",
"protocol": "veniam aliqua cillum in",
"version": "exercitation pariatur",
"endpoint": {
"addresses": [
{
"host": "sint culpa laboris",
"port": 10968
}
]
},
"security": {
"oAuth2Info": {
"grantTypes": [
"OAUTH2_IMPLICIT_GRANT",
"OAUTH2_IMPLICIT_GRANT",
"OAUTH2_CLIENT_CREDENTIALS"
],
"tokenEndpoint": "https://RXjkuoqKaR.nskcJZJsyoIFJ0k86hJdxq.eTHEGqxAybM3DEZlUlYQpZ47s6RR+O9gyFrLbO92,9"
}
},
"description": "dolor occaecat pariatur ex do"
},
"serializer": "XML",
"serInstanceId": "cillum nostrud minim consectetur proident",
"serCategory": {
"href": "http://VWwswcAtAylGx.usasPjZ+bqQIHCMc7FfToVvk2M.SYAWYvSDKGSRL7Z.rxyfC0goFNZtoGJrlFc89,",
"id": "consectetur et eiusmod",
"name": "ea ipsum irure mollit et",
"version": "et"
},
"scopeOfLocality": "ZONE",
"consumedLocalOnly": true,
"isLocal": false
}
\ No newline at end of file
{
"serName": "NEW_SERVICE_NAME",
"a_version": "v2.0",
"state": "INACTIVE",
"transportInfo": {
"id": "labore ut Excepteur sunt ipsum",
"name": "in minim enim",
"type": "MB_ROUTING",
"protocol": "veniam aliqua cillum in",
"version": "exercitation pariatur",
"endpoint": {
"addresses": [
{
"host": "sint culpa laboris",
"port": 10968
}
]
},
"security": {
"oAuth2Info": {
"grantTypes": [
"OAUTH2_IMPLICIT_GRANT",
"OAUTH2_IMPLICIT_GRANT",
"OAUTH2_CLIENT_CREDENTIALS"
],
"tokenEndpoint": "https://RXjkuoqKaR.nskcJZJsyoIFJ0k86hJdxq.eTHEGqxAybM3DEZlUlYQpZ47s6RR+O9gyFrLbO92,9"
}
},
"description": "dolor occaecat pariatur ex do"
},
"serializer": "XML",
"serInstanceId": "cillum nostrud minim consectetur proident",
"serCategory": {
"href": "http://VWwswcAtAylGx.usasPjZ+bqQIHCMc7FfToVvk2M.SYAWYvSDKGSRL7Z.rxyfC0goFNZtoGJrlFc89,",
"id": "consectetur et eiusmod",
"name": "ea ipsum irure mollit et",
"version": "et"
},
"scopeOfLocality": "ZONE",
"consumedLocalOnly": true,
"isLocal": false
}
\ No newline at end of file
{
"description": "This type represents the general information of a MEC service.",
"type": "object",
"required": [
"serName",
"version",
"state",
"transportInfo",
"serializer"
],
"properties": {
"serInstanceId": {
"description": "Identifier of the service instance assigned by the MEC platform.",
"type": "string",
"readOnly": true,
"example": "ServiceInstance123"
},
"serName": {
"description": "The name of the service. This is how the service producing MEC application identifies the service instance it produces.",
"type": "string",
"example": "ExampleService"
},
"serCategory": {
"description": "This type represents the category reference",
"type": "object",
"required": [
"href",
"id",
"name",
"version"
],
"properties": {
"href": {
"description": "Reference of the catalogue",
"type": "string",
"format": "uri",
"example": "/example/catalogue1"
},
"id": {
"description": "Unique identifier of the category",
"type": "string",
"example": "id12345"
},
"name": {
"description": "Name of the category, example values include RNI, Location & Bandwidth Management",
"type": "string",
"example": "RNI"
},
"version": {
"description": "Category version",
"type": "string",
"example": "version1"
}
}
},
"version": {
"description": "Service version",
"type": "string",
"example": "ServiceVersion1"
},
"state": {
"description": "This enumeration defines the possible states of a service.",
"type": "string",
"enum": [
"ACTIVE",
"INACTIVE"
],
"example": "ACTIVE"
},
"transportInfo": {
"description": "This type represents the general information of a MEC service.",
"type": "object",
"required": [
"id",
"name",
"type",
"protocol",
"version",
"endpoint",
"security"
],
"properties": {
"id": {
"description": "The identifier of this transport",
"type": "string",
"example": "TransId12345"
},
"name": {
"description": "The name of this transport",
"type": "string",
"example": "REST"
},
"description": {
"description": "Human-readable description of this transport",
"type": "string",
"example": "REST API"
},
"type": {
"description": "The enumeration TransportType represents types of transports",
"type": "string",
"enum": [
"REST_HTTP",
"MB_TOPIC_BASED",
"MB_ROUTING",
"MB_PUBSUB",
"RPC",
"RPC_STREAMING",
"WEBSOCKET"
],
"example": "REST_HTTP"
},
"protocol": {
"description": "The name of the protocol used. Shall be set to HTTP for a REST API.",
"type": "string",
"example": "HTTP"
},
"version": {
"description": "The version of the protocol used",
"type": "string",
"example": "2.0"
},
"endpoint": {
"description": "This type represents information about a transport endpoint",
"type": "object",
"oneOf": [{
"description": "Entry point information of the service as string, formatted according to URI syntax",
"type": "object",
"required": [
"uris"
],
"properties": {
"uris": {
"type": "array",
"minItems": 0,
"items": {
"description": "Entry point information of the service",
"type": "string",
"format": "uri",
"example": "/mecSerMgmtApi/service/EntryPoint"
}
}
}
},
{
"description": "Entry point information of the service as one or more pairs of IP address and port",
"type": "object",
"required": [
"addresses"
],
"properties": {
"addresses": {
"type": "array",
"minItems": 0,
"items": {
"description": "A IP address and port pair",
"type": "object",
"required": [
"host",
"port"
],
"properties": {
"host": {
"description": "Host portion of the address",
"type": "string",
"example": "192.0.2.0"
},
"port": {
"description": "Port portion of the address",
"type": "integer",
"format": "uint32",
"example": 8080
}
}
}
}
}
},
{
"description": "Entry point information of the service in a format defined by an implementation, or in an external specification.",
"type": "object",
"required": [
"alternative"
],
"properties": {
"alternative": {
"type": "object"
}
}
}
]
},
"security": {
"description": "This type represents security information related to a transport",
"type": "object",
"properties": {
"oAuth2Info": {
"description": "Parameters related to use of OAuth 2.0",
"required": [
"grantTypes",
"tokenEndpoint"
],
"properties": {
"grantTypes": {
"description": "List of supported OAuth 2.0 grant types.",
"type": "array",
"minItems": 1,
"maxItems": 4,
"items": {
"description": "OAuth 2.0 grant type",
"type": "string",
"enum": [
"OAUTH2_AUTHORIZATION_CODE",
"OAUTH2_IMPLICIT_GRANT",
"OAUTH2_RESOURCE_OWNER",
"OAUTH2_CLIENT_CREDENTIALS"
],
"example": "OAUTH2_CLIENT_CREDENTIALS"
}
},
"tokenEndpoint": {
"description": "The token endpoint",
"type": "string",
"format": "uri",
"example": "/mecSerMgmtApi/security/TokenEndPoint"
}
},
"type": "object"
}
}
},
"implSpecificInfo": {
"description": "Additional implementation specific details of the transport",
"type": "object"
}
}
},
"serializer": {
"description": "The enumeration represents types of serializers",
"type": "string",
"enum": [
"JSON",
"XML",
"PROTOBUF3"
],
"example": "JSON"
},
"scopeOfLocality": {
"description": "The scope of locality as expressed by \"consumedLocalOnly\" and \"isLocal\". If absent, defaults to MEC_HOST",
"type": "string",
"enum": [
"MEC_SYSTEM",
"MEC_HOST",
"NFVI_POP",
"ZONE",
"ZONE_GROUP",
"NFVI_NODE"
],
"example": "MEC_SYSTEM"
},
"consumedLocalOnly": {
"description": "Indicate whether the service can only be consumed by the MEC applications located in the same locality (as defined by scopeOfLocality) as this service instance.",
"type": "boolean",
"example": false
},
"isLocal": {
"description": "Indicate whether the service is located in the same locality (as defined by scopeOfLocality) as the consuming MEC application.",
"type": "boolean",
"example": true
}
}
}
\ No newline at end of file
{
"type": "array",
"items": {
"objects": {
"description": "This type represents the general information of a MEC service.",
"type": "object",
"required": [
"serInstanceId",
"serName",
"version",
"state",
"transportInfo",
......@@ -11,39 +12,264 @@
],
"properties": {
"serInstanceId": {
"type": "string"
"description": "Identifier of the service instance assigned by the MEC platform.",
"type": "string",
"readOnly": true,
"example": "ServiceInstance123"
},
"serName": {
"type": "string"
"description": "The name of the service. This is how the service producing MEC application identifies the service instance it produces.",
"type": "string",
"example": "ExampleService"
},
"serCategory": {
"type": "string"
"description": "This type represents the category reference",
"type": "object",
"required": [
"href",
"id",
"name",
"version"
],
"properties": {
"href": {
"description": "Reference of the catalogue",
"type": "string",
"format": "uri",
"example": "/example/catalogue1"
},
"id": {
"description": "Unique identifier of the category",
"type": "string",
"example": "id12345"
},
"name": {
"description": "Name of the category, example values include RNI, Location & Bandwidth Management",
"type": "string",
"example": "RNI"
},
"version": {
"description": "Category version",
"type": "string",
"example": "version1"
}
}
},
"version": {
"type": "string"
"description": "Service version",
"type": "string",
"example": "ServiceVersion1"
},
"state": {
"description": "This enumeration defines the possible states of a service.",
"type": "string",
"enum": [
"ACTIVE",
"INACTIVE"
]
],
"example": "ACTIVE"
},
"transportInfo": {
"type": "string"
"description": "This type represents the general information of a MEC service.",
"type": "object",
"required": [
"id",
"name",
"type",
"protocol",
"version",
"endpoint",
"security"
],
"properties": {
"id": {
"description": "The identifier of this transport",
"type": "string",
"example": "TransId12345"
},
"name": {
"description": "The name of this transport",
"type": "string",
"example": "REST"
},
"description": {
"description": "Human-readable description of this transport",
"type": "string",
"example": "REST API"
},
"type": {
"description": "The enumeration TransportType represents types of transports",
"type": "string",
"enum": [
"REST_HTTP",
"MB_TOPIC_BASED",
"MB_ROUTING",
"MB_PUBSUB",
"RPC",
"RPC_STREAMING",
"WEBSOCKET"
],
"example": "REST_HTTP"
},
"protocol": {
"description": "The name of the protocol used. Shall be set to HTTP for a REST API.",
"type": "string",
"example": "HTTP"
},
"version": {
"description": "The version of the protocol used",
"type": "string",
"example": "2.0"
},
"endpoint": {
"description": "This type represents information about a transport endpoint",
"type": "object",
"oneOf": [
{
"description": "Entry point information of the service as string, formatted according to URI syntax",
"type": "object",
"required": [
"uris"
],
"properties": {
"uris": {
"type": "array",
"minItems": 0,
"items": {
"description": "Entry point information of the service",
"type": "string",
"format": "uri",
"example": "/mecSerMgmtApi/service/EntryPoint"
}
}
}
},
{
"description": "Entry point information of the service as one or more pairs of IP address and port",
"type": "object",
"required": [
"addresses"
],
"properties": {
"addresses": {
"type": "array",
"minItems": 0,
"items": {
"description": "A IP address and port pair",
"type": "object",
"required": [
"host",
"port"
],
"properties": {
"host": {
"description": "Host portion of the address",
"type": "string",
"example": "192.0.2.0"
},
"port": {
"description": "Port portion of the address",
"type": "integer",
"format": "uint32",
"example": 8080
}
}
}
}
}
},
{
"description": "Entry point information of the service in a format defined by an implementation, or in an external specification.",
"type": "object",
"required": [
"alternative"
],
"properties": {
"alternative": {
"type": "object"
}
}
}
]
},
"security": {
"description": "This type represents security information related to a transport",
"type": "object",
"properties": {
"oAuth2Info": {
"description": "Parameters related to use of OAuth 2.0",
"required": [
"grantTypes",
"tokenEndpoint"
],
"properties": {
"grantTypes": {
"description": "List of supported OAuth 2.0 grant types.",
"type": "array",
"minItems": 1,
"maxItems": 4,
"items": {
"description": "OAuth 2.0 grant type",
"type": "string",
"enum": [
"OAUTH2_AUTHORIZATION_CODE",
"OAUTH2_IMPLICIT_GRANT",
"OAUTH2_RESOURCE_OWNER",
"OAUTH2_CLIENT_CREDENTIALS"
],
"example": "OAUTH2_CLIENT_CREDENTIALS"
}