Add change vnf flavour biz
[vfc/gvnfm/vnflcm.git] / lcm / lcm / nf / const.py
index f45e9f6..e61c5a2 100644 (file)
 # limitations under the License.
 import json
 
+from lcm.pub.config import config
 from lcm.pub.utils.jobutil import enum
 
-HEAL_ACTION_TYPE = enum(START="vmCreate", RESTART="vmReset")
-ACTION_TYPE = enum(START=1, STOP=2, REBOOT=3)
-GRANT_TYPE = enum(INSTANTIATE="Instantiate", TERMINATE="Terminate", HEAL_CREATE="Heal Create", HEAL_RESTART="Heal Restart", OPERATE="Operate")
-VNF_STATUS = enum(NULL='null', INSTANTIATING="instantiating", INACTIVE='inactive', ACTIVE="active",
-                  FAILED="failed", TERMINATING="terminating", SCALING="scaling", OPERATING="operating",
-                  UPDATING="updating", HEALING="healing")
+HEAL_ACTION_TYPE = enum(
+    START="vmCreate",
+    RESTART="vmReset"
+)
+
+ACTION_TYPE = enum(
+    START=1,
+    STOP=2,
+    REBOOT=3
+)
+
+GRANT_TYPE = enum(
+    INSTANTIATE="INSTANTIATE",
+    TERMINATE="TERMINATE",
+    HEAL_CREATE="Heal Create",
+    HEAL_RESTART="Heal Restart",
+    SCALE_IN="SCALE_IN",
+    SCALE_OUT="SCALE_OUT",
+    CHANGE_FLAVOUR="CHANGE_FLAVOUR",
+    OPERATE="OPERATE",
+    CHANGE_CONNECTIVITY="CHANGE_CONNECTIVITY",
+)
+
+VNF_STATUS = enum(
+    NULL='null',
+    INSTANTIATING="instantiating",
+    INACTIVE='inactive',
+    ACTIVE="active",
+    FAILED="failed",
+    TERMINATING="terminating",
+    SCALING="scaling",
+    OPERATING="operating",
+    UPDATING="updating",
+    HEALING="healing"
+)
+
+OPERATION_TYPE = enum(
+    INSTANTIATE="INSTANTIATE",
+    SCALE="SCALE",
+    SCALE_TO_LEVEL="SCALE_TO_LEVEL",
+    CHANGE_FLAVOUR="CHANGE_FLAVOUR",
+    TERMINATE="TERMINATE",
+    HEAL="HEAL",
+    OPERATE="OPERATE",
+    CHANGE_EXT_CONN="CHANGE_EXT_CONN",
+    MODIFY_INFO="MODIFY_INFO"
+)
+
+INSTANTIATION_STATE = enum(
+    NOT_INSTANTIATED="NOT_INSTANTIATED",
+    INSTANTIATED="INSTANTIATED"
+)
+
+LCM_NOTIFICATION_STATUS = enum(START="START", RESULT="RESULT")
+
+OPERATION_STATE_TYPE = enum(
+    STARTING="STARTING",
+    PROCESSING="PROCESSING",
+    COMPLETED="COMPLETED",
+    FAILED_TEMP="FAILED_TEMP",
+    FAILED="FAILED",
+    ROLLING_BACK="ROLLING_BACK",
+    ROLLED_BACK="ROLLED_BACK"
+)
+
+RESULT_RANGE = (
+    OPERATION_STATE_TYPE.COMPLETED,
+    OPERATION_STATE_TYPE.FAILED_TEMP,
+    OPERATION_STATE_TYPE.FAILED,
+    OPERATION_STATE_TYPE.ROLLED_BACK
+)
+
+RUNNING_RANGE = (
+    OPERATION_STATE_TYPE.STARTING,
+    OPERATION_STATE_TYPE.PROCESSING,
+    OPERATION_STATE_TYPE.ROLLING_BACK
+)
+
+FINAL_STATE_RANGE = (
+    OPERATION_STATE_TYPE.COMPLETED,
+    OPERATION_STATE_TYPE.FAILED,
+    OPERATION_STATE_TYPE.ROLLED_BACK
+)
+
+CHANGE_TYPE = enum(
+    ADDED='ADDED',
+    REMOVED='REMOVED',
+    MODIFIED='MODIFIED',
+    TEMPORARY='TEMPORARY',
+    LINK_PORT_ADDED='LINK_PORT_ADDED',
+    LINK_PORT_REMOVED='LINK_PORT_REMOVED'
+)
 
 RESOURCE_MAP = {'Storage': 'volumn', 'Network': 'network', 'SubNetwork': 'subnet', 'Port': 'port',
                 'Flavour': 'flavor', 'Vm': 'vm'}
 
+URL_PREFIX = "http://%s:%s/api/vnflcm/v1" % (config.MSB_SERVICE_IP, config.MSB_SERVICE_PORT)
+
 ROOT_URI = "api/vnflcm/v1/subscriptions/"
 
 AUTH_TYPES = ["BASIC", "OAUTH2_CLIENT_CREDENTIALS", "TLS_CERT"]
@@ -42,25 +131,25 @@ NOTIFICATION_TYPES = [
 ]
 
 LCM_OPERATION_TYPES = [
-    "INSTANTIATE",
-    "SCALE",
-    "SCALE_TO_LEVEL",
-    "CHANGE_FLAVOUR",
-    "TERMINATE",
-    "HEAL",
-    "OPERATE",
-    "CHANGE_EXT_CONN",
-    "MODIFY_INFO"
+    OPERATION_TYPE.INSTANTIATE,
+    OPERATION_TYPE.SCALE,
+    OPERATION_TYPE.SCALE_TO_LEVEL,
+    OPERATION_TYPE.CHANGE_FLAVOUR,
+    OPERATION_TYPE.TERMINATE,
+    OPERATION_TYPE.HEAL,
+    OPERATION_TYPE.OPERATE,
+    OPERATION_TYPE.CHANGE_EXT_CONN,
+    OPERATION_TYPE.MODIFY_INFO
 ]
 
 LCM_OPERATION_STATE_TYPES = [
-    "STARTING",
-    "PROCESSING",
-    "COMPLETED",
-    "FAILED_TEMP",
-    "FAILED",
-    "ROLLING_BACK",
-    "ROLLED_BACK"
+    OPERATION_STATE_TYPE.STARTING,
+    OPERATION_STATE_TYPE.PROCESSING,
+    OPERATION_STATE_TYPE.COMPLETED,
+    OPERATION_STATE_TYPE.FAILED_TEMP,
+    OPERATION_STATE_TYPE.FAILED,
+    OPERATION_STATE_TYPE.ROLLING_BACK,
+    OPERATION_STATE_TYPE.ROLLED_BACK
 ]
 
 
@@ -214,9 +303,9 @@ vnfd_model_dict = {
                 "local_storage_id1",
                 "local_storage_id2"
             ],
-            "volume_storages": [
+            "virtual_storages": [
                 {
-                    "volume_storage_id": "volume_storage1",
+                    "virtual_storage_id": "volume_storage1",
                     "location": "/usr/data",
                     "device": "/dev/hda1"
                 }
@@ -299,13 +388,6 @@ vnfd_model_dict = {
                 }
             },
             "artifacts": [
-                {
-                    "artifact_name": "software_version_file",
-                    "type": "tosca.artifacts.Deployment",
-                    "file": "AppSoftwares/zte-cn-xgw-V5.16.11_NFV-version.zip",
-                    "repository": "",
-                    "deploy_path": ""
-                }
             ]
         }
     ],
@@ -314,7 +396,7 @@ vnfd_model_dict = {
             "volume_storage_id": "volume_storage1",
             "description": "",
             "properties": {
-                "size": "100 GB",
+                "size": "\"100 GB\"",
                 "volume_id": "",
                 "volume_name": "volumeStorage1",
                 "custom_volume_type": "type1",
@@ -468,6 +550,15 @@ c1_data_get_tenant_id = {
         }
     ]
 }
+c1_data_get_tenant_id_1 = {
+    "tenants": [
+        {
+            "id": "1",
+            "name": "tenantname"
+        }
+    ]
+}
+
 
 # create_volume
 c2_data_create_volume = {
@@ -639,7 +730,7 @@ vnfdModel = {
                 },
                 "volume_name": "test",
                 "custom_volume_type": "test",
-                "size": "10 GB",
+                "size_of_storage": "\"10 GB\"",
             },
             "image_file": "test",
         },
@@ -697,7 +788,7 @@ vnfdModel = {
                 "virtual_network_interface_requirements": [
                     {
                         "network_interface_requirements": {
-                            "interfaceType": '{"schema-version": "0", "schema-location":"", "platform-id": "generic", "mandatory": false, "configuration-value": "SR-IOV"}'
+                            "interfaceType": '{"schemaVersion": "0", "schemaLocation":"", "platformId": "generic", "mandatory": false, "configurationValue": "SR-IOV"}'
                         },
                         "support_mandatory": False,
                         "name": "SRIOV_Port",
@@ -715,6 +806,17 @@ vnfdModel = {
                     "vimid": "test",
                     "tenant": "chinamobile",
                     "availability_zone": "test",
+                    "vnfId": "",
+                    "vnfName": "",
+                    "cloudOwner": "",
+                    "cloudRegionId": "",
+                    "vduInfo": [
+                        {
+                            "vduName": "VDU_vbng_0",
+                            "flavorId": "12345",
+                            "directive": ""
+                        }
+                    ]
                 },
                 "name": "test",
                 "inject_files": [],
@@ -734,10 +836,11 @@ vnfdModel = {
                     },
                 },
             },
-            "virtual_storage": {
+            "virtual_storages": [{
+                "virtual_storage_id": "test",
                 "type_of_storage": "ephemeral",
                 "size_of_storage": "10 GB",
-            },
+            }],
             "type": "tosca.nodes.nfv.Vdu.Compute",
             "artifacts": [
                 {