{ "description": "This operation supports the update of a NS instance, It shall comply with the provisions defined in Table 6.5.2.12-1.\n", "type": "object", "required": [ "updateType" ], "properties": { "updateType": { "description": "The type of update. It determines also which one of the following parameters is present in the operation. Possible values include: * ADD_VNF: Adding existing VNF instance(s) * REMOVE_VNF: Removing VNF instance(s) * INSTANTIATE_VNF: Instantiating new VNF(s) * CHANGE_VNF_DF: Changing VNF DF * OPERATE_VNF: Changing VNF state, * MODIFY_VNF_INFORMATION: Modifying VNF information and/or the configurable properties of VNF instance(s) * CHANGE_EXTERNAL_VNF_CONNECTIVITY: Changing the external connectivity of VNF instance(s)ADD_SAP: Adding SAP(s) * REMOVE_SAP: Removing SAP(s) * ADD_NESTED_NS: Adding existing NS instance(s) as nested NS(s) * REMOVE_NESTED_NS: Removing existing nested NS instance(s) * ASSOC_NEW_NSD_VERSION: Associating a new NSD version to the NS instance * MOVE_VNF: Moving VNF instance(s) from one origin NS instance to another target NS instance * ADD_VNFFG: Adding VNFFG(s) * REMOVE_VNFFG: Removing VNFFG(s) * UPDATE_VNFFG: Updating VNFFG(s) * CHANGE_NS_DF: Changing NS DF * ADD_PNF: Adding PNF * MODIFY_PNF: Modifying PNF * REMOVE_PNF: Removing PNF\n", "type": "string", "enum": [ "ADD_VNF", "REMOVE_VNF", "INSTANTIATE_VNF", "CHANGE_VNF_DF", "OPERATE_VNF", "MODIFY_VNF_INFORMATION", "CHANGE_EXTERNAL_VNF_CONNECTIVITY", "REMOVE_SAP", "ADD_NESTED_NS", "REMOVE_NESTED_NS", "ASSOC_NEW_NSD_VERSION", "MOVE_VNF", "ADD_VNFFG", "REMOVE_VNFFG", "UPDATE_VNFFG", "CHANGE_NS_DF", "ADD_PNF", "MODIFY_PNF", "REMOVE_PNF" ] }, "addVnfIstance": { "description": "Identifies an existing VNF instance to be added to the NS instance. It shall be present only if updateType = \"ADD_VNF\".\n", "type": "array", "items": { "$ref": "#/definitions/VnfInstanceData" } }, "removeVnfInstanceId": { "description": "Identifies an existing VNF instance to be removed from the NS instance. It contains the identifier(s) of the VNF instances to be removed. It shall be present only if updateType = \"REMOVE_VNF.\" Note: If a VNF instance is removed from a NS and this NS was the last one for which this VNF instance was a part, the VNF instance is terminated by the NFVO.\n", "type": "array", "items": { "$ref": "SOL005_def.yaml#/definitions/Identifier" } }, "instantiateVnfData": { "description": "Identifies the new VNF to be instantiated. It can be used e.g. for the bottom-up NS creation. It shall be present only if updateType = \"INSTANTIATE_VNF\".\n", "type": "array", "items": { "$ref": "#/definitions/InstantiateVnfData" } }, "changeVnfFlavourData": { "description": "Identifies the new DF of the VNF instance to be changed to. It shall be present only if updateType = \"CHANGE_VNF_DF\".\n", "type": "array", "items": { "$ref": "#/definitions/ChangeVnfFlavourData" } }, "operateVnfData": { "description": "Identifies the state of the VNF instance to be changed. It shall be present only if updateType = \"OPERATE_VNF\".\n", "type": "array", "items": { "$ref": "#/definitions/OperateVnfData" } }, "modifyVnfInfoData": { "description": "Identifies the VNF information parameters and/or the configurable properties of VNF instance to be modified. It shall be present only if updateType = \"MODIFY_VNF_INFORMATION\".\n", "type": "array", "items": { "$ref": "#/definitions/ModifyVnfInfoData" } }, "changeExtVnfConnectivityData": { "description": "Specifies the new external connectivity data of the VNF instance to be changed. It shall be present only if updateType = \"CHANGE_EXTERNAL_VNF_CONNECTIVITY\".\n", "type": "array", "items": { "$ref": "#/definitions/ChangeExtVnfConnectivityData" } }, "addSap": { "description": "Identifies a new SAP to be added to the NS instance. It shall be present only if updateType = \"ADD_SAP.\"\n", "type": "array", "items": { "$ref": "#/definitions/SapData" } }, "removeSapId": { "description": "The identifier an existing SAP to be removed from the NS instance. It shall be present only if updateType = \"REMOVE_SAP.\"\n", "type": "array", "items": { "$ref": "SOL005_def.yaml#/definitions/Identifier" } }, "addNestedNsId": { "description": "The identifier of an existing nested NS instance to be added to (nested within) the NS instance. It shall be present only if updateType = \"ADD_NESTED_NS\".\n", "type": "array", "items": { "$ref": "SOL005_def.yaml#/definitions/Identifier" } }, "removeNestedNsId": { "description": "The identifier of an existing nested NS instance to be removed from the NS instance. It shall be present only if updateType = \"REMOVE_NESTED_NS\".\n", "type": "array", "items": { "$ref": "SOL005_def.yaml#/definitions/IdentifierInNs" } }, "assocNewNsdVersionData": { "description": "Specify the new NSD to be used for the NS instance. It shall be present only if updateType = ASSOC_NEW_NSD_VERSION\".\n", "$ref": "#/definitions/AssocNewNsdVersionData" }, "moveVnfInstanceData": { "description": "Specify existing VNF instance to be moved from one NS instance to another NS instance. It shall be present only if updateType = MOVE_VNF\".\n", "type": "array", "items": { "$ref": "#/definitions/MoveVnfInstanceData" } }, "addVnffg": { "description": "Specify the new VNFFG to be created to the NS Instance. It shall be present only if updateType = \"ADD_VNFFG\".\n", "type": "array", "items": { "$ref": "#/definitions/AddVnffgData" } }, "removeVnffgId": { "description": "Identifier of an existing VNFFG to be removed from the NS Instance. It shall be present only if updateType = \"REMOVE_VNFFG\".\n", "type": "array", "items": { "$ref": "SOL005_def.yaml#/definitions/Identifier" } }, "updateVnffg": { "description": "Specify the new VNFFG Information data to be updated for a VNFFG of the NS Instance. It shall be present only if updateType = \"UPDATE_VNFFG\".\n", "type": "array", "items": { "$ref": "#/definitions/UpdateVnffgData" } }, "changeNsFlavourData": { "description": "Specifies the new DF to be applied to the NS instance. It shall be present only if updateType = \"CHANGE_NS_DF\".\n", "$ref": "#/definitions/ChangeNsFlavourData" }, "addPnfData": { "description": "specifies the PNF to be added into the NS instance. It shall be present only if updateType = \"ADD_PNF\".\n", "type": "array", "items": { "$ref": "#/definitions/AddPnfData" } }, "modifyPnfData": { "description": "Specifies the PNF to be modified in the NS instance. It shall be present only if updateType = \"MODIFY_PNF\".\n", "type": "array", "items": { "$ref": "#/definitions/ModifyPnfData" } }, "removePnfId": { "description": "Identifier of the PNF to be deleted from the NS instance. It shall be present only if updateType = \"REMOVE_PNF\".\n", "type": "array", "items": { "$ref": "SOL005_def.yaml#/definitions/Identifier" } }, "updateTime": { "description": "Timestamp indicating the update time of the NS, i.e. the NS will be updated at this timestamp. Cardinality \"0\" indicates the NS update takes place immediately.\n", "$ref": "SOL005_def.yaml#/definitions/DateTime" } } }