Commit 519da48b authored by govindarajul's avatar govindarajul Committed by garciadeblas
Browse files

Feature 10911-Vertical scaling of VM instances from OSM



Added implementation code for Vertical Scaling of VDUs in OSM NBI.

Change-Id: I13a30ec3da9eccaf04219023f33ec0a6e6061f0e
Signed-off-by: default avatargovindarajul <Jayaprakash.g@tataelxsi.co.in>
parent e3dca38f
Loading
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -30,6 +30,7 @@ from osm_nbi.validation import (
    ns_heal,
    nsi_instantiate,
    ns_migrate,
    ns_verticalscale,
)
from osm_nbi.base_topic import (
    BaseTopic,
@@ -1167,6 +1168,7 @@ class NsLcmOpTopic(BaseTopic):
        "heal": ns_heal,
        "terminate": ns_terminate,
        "migrate": ns_migrate,
        "verticalscale": ns_verticalscale,
    }

    def __init__(self, db, fs, msg, auth):
+4 −0
Original line number Diff line number Diff line
@@ -461,6 +461,10 @@ valid_url_methods = {
                        "METHODS": ("POST",),
                        "ROLE_PERMISSION": "ns_instances:id:update:",
                    },
                    "verticalscale": {
                        "METHODS": ("POST",),
                        "ROLE_PERMISSION": "ns_instances:id:verticalscale:"
                           },
                },
            },
            "ns_lcm_op_occs": {
+23 −0
Original line number Diff line number Diff line
@@ -613,6 +613,29 @@ ns_heal = {
    "additionalProperties": False,
}

ns_verticalscale = {
    "title": "vertial scale input schema",
    "$schema": "http://json-schema.org/draft-04/schema#",
    "type": "object",
    "properties": {
        "lcmOperationType": string_schema,
        "nsInstanceId": id_schema,
        "vnfInstanceId": id_schema,
        "migrateToHost": string_schema,
        "vdu": {
            "type": "object",
                "properties": {
                    "vduId": name_schema,
                    "vduCountIndex": integer0_schema,
                },
                "required": ["vduId"],
                "additionalProperties": False,
        },
    },
    "required": ["vnfInstanceId"],
    "additionalProperties": False
}

schema_version = {"type": "string", "enum": ["1.0"]}
schema_type = {"type": "string"}
vim_type = shortname_schema  # {"enum": ["openstack", "openvim", "vmware", "opennebula", "aws", "azure", "fos"]}