}
}
},
- "/nslcm/v1/vnfs/{vnfInstanceId}/Notify": {
+ "/nslcm/v1/ns/{vnfmid}/vnfs/{vnfInstanceId}/Notify": {
"post": {
"tags": [
"NSLCM"
"description": "VNF LCM Notification API should be provided by NSLCM component",
"operationId": "VNF_LCM_Notification",
"parameters": [
+ {
+ "required": true,
+ "type": "string",
+ "description": "VNFM Instance Id",
+ "name": "vnfmid",
+ "in": "path"
+ },
{
"required": true,
"type": "string",
}
}
},
- "/nslcm/vl/vnfms/{vnfmid}":{
+ "/nslcm/v1/vnfms/{vnfmid}":{
"get": {
"tags": [
"NSLCM"
}
}
},
- "/nslcm/vl/vims/{vimid}":{
+ "/nslcm/v1/vims/{vimid}":{
"get": {
"tags": [
"NSLCM"
}
}
},
+ "JobStatus" : {
+ "description": "The status of the job",
+ "type": "string",
+ "enum": [
+ "started",
+ "processing",
+ "finished",
+ "error",
+ "timeout"
+ ]
+ },
"JobDetailInfo": {
"type": "object",
"properties": {
"type": "object",
"properties": {
"status": {
- "type": "string"
+ "$ref": "#/definitions/JobStatus",
+ "description": "The status of the job"
},
"progress": {
- "type": "string"
+ "type": "string",
+ "description": "The progress of the job. Value between 0 and 100."
},
"statusDescription": {
- "type": "string"
+ "type": "string",
+ "description": "The reason of the current status of the job."
},
"errorCode": {
"type": "string"
}
}
},
+ "ChangeType" : {
+ "description": "The type of the change",
+ "type": "string",
+ "enum": [
+ "VDU"
+ ]
+ },
"ResourceChange" : {
"type": "object",
"properties": {
"type": {
- "type": "string",
- "description": " The value should be VDU,VL,CP,Strorage."
+ "$ref": "#/definitions/ChangeType",
+ "description": "The type of the resource."
},
"resourceDefinitionId": {
+ "description": "The identifier of the resource within the grant request.",
"type": "string"
},
"vdu": {
+ "description": "The identifier of the VDU.",
"type": "string"
}
}
},
+ "OperationType" : {
+ "description": "The type of operation",
+ "type": "string",
+ "enum": [
+ "Terminal",
+ "Instantiate",
+ "Scalein",
+ "Scaleout",
+ "Scaledown",
+ "Scaleup",
+ "Heal"
+ ]
+ },
"GrantVNFRequest": {
"type": "object",
"properties": {
"type": "string"
},
"lifecycleOperation": {
- "type": "string",
- "description": "The value should be Instantiate,Scaleout,Scalein,Scaleup,Scaledown, Heal, Terminal"
+ "description" : "The type of the operation.",
+ "$ref": "#/definitions/OperationType"
},
"jobId": {
"type": "string"
},
"additionalParam": {
"type": "object",
- "description": "The data type is KeyValuePair. Additional parameters passed by the NFVO, specific to the VNF and the LCM operation."
+ "description": "Additional parameters passed to the NFVO, specific to the VNF and the LCM operation. The currently interpreted keys are the following: vimId"
}
}
},
"vim": {
"type": "object",
"properties": {
- "vimInfoId": {
- "type": "string"
- },
- "vimId": {
+ "vimid": {
"type": "string"
},
- "interfaceInfo": {
+ "accessinfo": {
"type": "object",
- "properties": {
- "vimType": {
- "type": "string",
- "description": "The vim Type value wil be openstack"
- },
- "apiVersion": {
- "type": "string",
- "description": "The api Version Type value will be "
- },
- "protocolType": {
- "type": "string",
- "description": "The protocol Type value will be http or https"
- }
- }
- },
- "accessInfo": {
- "type": "string",
"properties": {
"tenant": {
"type": "string",
- "description": "Tenant Name of tenant"
- },
- "username": {
- "type": "string",
- "description": "Username for login"
- },
- "password": {
- "type": "string",
- "description": "Password of login user"
+ "description": "The name of the tenant"
}
}
- },
- "interfaceEndpoint": {
- "type": "string",
- "description": "Information about the interface endpoint. It is a URL"
}
}
}
"$ref": "#/definitions/VnfNotificationType",
"description": "The type of the change"
},
- "vimid": {
+ "vimId": {
"type": "string",
"description": "Identifier of vim"
},
- "vmid": {
+ "vmId": {
"type": "string",
"description": "Identifier of virtual machine"
},
- "vmname": {
+ "vmName": {
"type": "string",
"description": "Name of virtual machine"
}
"type": "string",
"description": "Identifier of the VL instance"
},
- "vldid": {
+ "vldId": {
"type": "string",
"description": "Identifier of the VLD in the VNFD"
},
"resourceId": {
"type": "string",
"description": "Identifier of the resource in the scope of the VIM"
+ },
+ "resourceName": {
+ "type": "string",
+ "description": "Name of the resource in the scope of the VIM"
}
}
}
"type": "string",
"description": "Identifier of the VL instance"
},
- "cpinstanceid": {
+ "cpInstanceId": {
"type": "string",
"description": "Identifier of the connection point"
},
- "cpdid": {
+ "cpdId": {
"type": "string",
"description": "Identifier of the connection point in the VNFD"
},
"type": "object",
"description": "port Resource",
"properties": {
- "vimid": {
+ "vimId": {
"type": "string",
"description": "Identifier of the VIM"
},
- "resourceid": {
+ "resourceId": {
"type": "string",
"description": "Identifier of the resource in the scope of the VIM"
},
"AffectedVirtualStorage" : {
"type": "object"
},
- "VNFLCMNotification": {
+ "VnfLcmNotificationStatus" : {
+ "description": "The status of the operation",
+ "type": "string",
+ "enum": [
+ "result",
+ "start"
+ ]
+ },
+ "VNFLCMNotification": {
"type": "object",
"properties": {
"status": {
- "type": "string"
+ "description" : "The status of the operation that triggered the LCN.",
+ "$ref": "#/definitions/VnfLcmNotificationStatus"
},
"vnfInstanceId": {
"type": "string"
},
"operation": {
- "type": "string"
+ "description" : "The type of the operation that tiggered the LCN.",
+ "$ref": "#/definitions/OperationType"
},
"jobId": {
+ "description" : "The identifier fo the job that triggered the LCN.",
"type": "string"
},
"affectedVnfc": {
}
},
"additionalParam": {
- "type": "object"
+ "type": "object",
+ "description": "Additional parameters passed to the VNFM. The vimId may be passed in the additional parameter section by the NFVO to VNFM."
}
}
},
"extVirtualLinkInfo":{
"type": "object",
"properties": {
+ "resourceSubnetId": {
+ "type": "string",
+ "description": "The provider id of the subnet"
+ },
"vlInstanceId": {
- "type": "string"
+ "type": "string",
+ "description" : "The identifier of the virtual link"
},
- "networkId": {
- "type": "string"
+ "resourceId": {
+ "type": "string",
+ "description": "The provider id of the network"
},
"cpdId": {
- "type": "string"
+ "type": "string",
+ "description": "The identifier of the connection point descriptor"
},
"vim": {
- "$ref": "#/definitions/vimInfo"
+ "type": "object",
+ "properties": {
+ "vimid": {
+ "type": "string",
+ "description": "The identifier of the VIM"
+ }
+ }
}
}
},
-
"VnfInstantiateResponse": {
"type": "object",
"properties": {
}
}
},
+ "ScaleDirection" : {
+ "description": "The direction of the scaling",
+ "type": "string",
+ "enum": [
+ "SCALE_IN",
+ "SCALE_OUT"
+ ]
+ },
"VnfScaleRequest":{
"type": "object",
"properties": {
"type": {
- "type": "string",
- "description": "The VNF scale type value should be SCALE_OUT, SCALE_IN"
+ "description" : "The direction of the scaling.",
+ "$ref": "#/definitions/ScaleDirection"
},
"aspectId":{
"type": "string",
}
}
},
+ "VnfTerminationType": {
+ "description": "The type of the termination.",
+ "type": "string",
+ "enum": [
+ "graceful",
+ "forceful"
+ ]
+ },
"VnfTerminateRequest":{
"type": "object",
"properties": {
"terminationType": {
- "type": "string"
+ "description" : "The type of the termination",
+ "$ref": "#/definitions/VnfTerminationType"
},
"gracefulTerminationTimeout": {
+ "description": "The time interval(second) to wait for the VNF to be taken out of service during graceful termination.",
"type": "string"
- }
+ }
}
},
"JobInfo": {
}
},
"accessInfo": {
- "type": "string",
+ "type": "object",
"properties": {
"tenant": {
"type": "string",
"type": "object",
"description": "vnf package infomation",
"properties": {
- "csarId": {
+ "vnfPackageId": {
"type": "string",
- "description": "vnf package id, UUID"
+ "description": "vnf package id (csarId)"
+ },
+ "csarName": {
+ "type": "string",
+ "description": "The name of the csar"
},
"vnfdId": {
"type": "string",
"type": "string",
"description": "VNF descriptor vendor ID"
},
+ "vnfdModel": {
+ "type": "string",
+ "description": "The model of the VNF (JSON) encoded to string"
+ },
"vnfdVersion": {
"type": "string",
"description": "VNF descriptor version"
"type": "string",
"description": "VNF Software version"
},
- "downloadUri":{
+ "downloadUrl":{
"type": "string",
- "description": "The download uri of VNF package"
+ "description": "The URL from which the VNF package can be downloaded"
}
}
},
},
"name": {
"type": "string",
- "description": "vnfm name"
+ "description": "vim name"
},
"type": {
"type": "string",
- "description": "vnfm type"
+ "description": "vim type"
},
"url": {
"type": "string",
- "description": "vnfm url"
+ "description": "vim url"
},
"userName": {
"type": "string",
- "description": "vnfm login username"
+ "description": "vim login username"
},
"password": {
"type": "string",
- "description": "vnfm login password"
+ "description": "vim login password"
},
"vendor": {
"type": "string",
},
"version": {
"type": "string",
- "description": "vnfm version"
+ "description": "vim version"
},
"description": {
"type": "string",
- "description": "vnfm description"
+ "description": "vim description"
},
"createTime": {
"type": "string",
- "description": "vnfm info createTime"
+ "description": "vim info createTime"
+ },
+ "sslCacert": {
+ "type": "string",
+ "description": "The collection of trusted certificates towards the VIM connection."
+ },
+ "sslInsecure": {
+ "type": "string",
+ "description": "Whether to verify VIM's certificate"
+ },
+ "status": {
+ "type": "string",
+ "description": "The status of external system"
}
}
}