Commit f4c064b9 authored by Muhammad Hamza's avatar Muhammad Hamza
Browse files

fix minor issues in AppPkgMgmt API

parent 3c748872
Loading
Loading
Loading
Loading
+39 −35
Original line number Diff line number Diff line
@@ -1707,9 +1707,9 @@
          "extendedResourceRequests": {
            "type": "array",
            "items": {
              "type": "object",
              "$ref": "#/components/schemas/KeyValuePairs"
            },
            "description": "An array of key-value pairs of extended resources required by the container see note."
            }
          },
          "additionalProperties": {
            "type": "string",
@@ -1844,9 +1844,9 @@
          "vduCpuRequirements": {
            "type": "array",
            "items": {
              "type": "object",
              "$ref": "#/components/schemas/KeyValuePairs"
            },
            "description": "Array of key-value pair requirements on the Compute (CPU) for the VDU."
            }
          },
          "virtualCpuPinning": {
            "$ref": "#/components/schemas/VirtualCpuPinningData"
@@ -1864,10 +1864,9 @@
          "vduStorageRequirements": {
            "type": "array",
            "items": {
              "type": "object",
              "description": "An array of key-value pairs that articulate the storage deployment requirements."
              "$ref": "#/components/schemas/KeyValuePairs"
            },
            "description": "Array of key-value pair requirements on the storage for the VDU."
            "description": "An array of key-value pairs that articulate the storage deployment requirements."
          },
          "rdmaEnabled": {
            "type": "boolean",
@@ -1979,12 +1978,13 @@
            "description": "Amount of virtual memory in MB."
          },
          "virtualMemOversubscriptionPolicy": {
            "description": "The memory core oversubscription policy in terms of virtual memory to physical memory on the platform."
            "type": "string",
            "description": "The memory core oversubscription policy in terms of virtual memory to physical memory\non the platform. The cardinality can be 0 during the allocation request, if no particular\nvalue is requested.\n"
          },
          "vduMemRequirements": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/KeyValuePair"
              "$ref": "#/components/schemas/KeyValuePairs"
            },
            "description": "Array of key-value pair requirements on the memory for the VDU."
          },
@@ -1993,6 +1993,7 @@
            "description": "Specifies the memory allocation to be cognisant of the relevant process/core allocation."
          },
          "hugePagesRequirements": {
            "type": "string",
            "description": "Specifies requirements on the huge pages resources for the virtual memory."
          }
        }
@@ -2023,13 +2024,15 @@
          },
          "targetPerformanceParameters": {
            "type": "array",
            "description": "Specifies specific attributes, dependent on the requested additional capability type.",
            "items": {
              "$ref": "#/components/schemas/KeyValuePair"
              "$ref": "#/components/schemas/KeyValuePairs"
            }
          }
        }
      },
      "KeyValuePair": {
      "KeyValuePairs": {
        "description": "This data type represents a list of key-value pairs. The order of the pairs in the list is not\nsignificant. In JSON, a set of key-value pairs is represented as an object. It shall comply with\nthe provisions defined in clause 4 of IETF RFC 8259.\n",
        "type": "object",
        "properties": {
          "key": {
@@ -2063,8 +2066,8 @@
        "title": "AppExternalCpd",
        "type": "object",
        "properties": {
          "inherited_attributes": {
            "type": "object",
          "inheritedAttributes": {
            "type": "string",
            "description": "All attributes inherited from Cpd. See note 2."
          },
          "virtualNetworkInterfaceRequirements": {
@@ -2082,7 +2085,7 @@
            "description": "Additional service identification data of the external CP. For the definition of AdditionalServiceData, refer to clause 7.1.18.3 of ETSI GS NFV IFA 011 [1]."
          }
        },
        "description": "NOTE 1: An AppD conformant to the present document shall not specify \"virtualNetworkInterfaceRequirements\" in AppExternalCpd corresponding to primary container cluster network interfaces.\nNOTE 2: For CPs exposed by MEC Applications realized only by one or set of OS containers and used by the OS containers to connect to the primary container cluster external network, the ability to configure virtualised \n        resources based on cpRole and trunkMode attributes might not be supported by all container technologies.\n"
        "description": "The AppExternalCpd data type supports the specification of MEC application requirements related to external \nconnection point.\n\nNOTE 1: An AppD conformant to the present document shall not specify \"virtualNetworkInterfaceRequirements\"\nin AppExternalCpd corresponding to primary container cluster network interfaces.\n\nNOTE 2: For CPs exposed by MEC Applications realized only by one or set of OS containers and used by\nthe OS containers to connect to the primary container cluster external network, the ability to configure\nvirtualised resources based on cpRole and trunkMode attributes might not be supported by all container technologies.\n"
      },
      "AdditionalServiceData": {
        "type": "object",
@@ -2096,11 +2099,11 @@
            "minItems": 1
          },
          "serviceData": {
            "type": "object",
            "type": "string",
            "description": "Service matching information exposed by the VirtualCp. See note."
          }
        },
        "description": "NOTE: This attribute shall only be present if additional information is needed to identify the service termination within \n      the VNF, such as for example a url path information in an HTTP request required to allow a single VirtualCp IP \n      address to be used for several HTTP based services that use the same portnumber. \n"
        "description": "This information element describes the additional service data of the VirtualCp used to expose\nproperties of the VirtualCp to NFV-MANO.\n\nIf the VirtualCp is exposed by a VNF component realized by one or a set of OS containers,\nthe properties are mirrored from the declarative descriptor of the corresponding MCIO where available. \n\nNOTE: This attribute shall only be present if additional information is needed to identify the\nservice termination within the VNF, such as for example a url path information in an HTTP request\nrequired to allow a single VirtualCp IP address to be used for several HTTP based services that\nuse the same portnumber. \n"
      },
      "ServicePortData": {
        "type": "object",
@@ -2250,11 +2253,11 @@
      },
      "AppPkgInfoModifications": {
        "title": "AppPkgInfoModifications",
        "required": ["operationState"],
        "required": ["OperationalState"],
        "type": "object",
        "properties": {
          "operationState": {
            "$ref": "#/components/schemas/OperationState"
          "OperationalState": {
            "$ref": "#/components/schemas/OperationalState2"
          }
        },
        "description": "'The data type represents the operational state for an application package resource'"
@@ -2263,7 +2266,7 @@
        "title": "AppPkg.OperationalState",
        "enum": ["ENABLED", "DISABLED"],
        "type": "string",
        "description": "Operational state of the onboarded application package: •ENABLED: the application package can be used for instantiation of new application instances. •DISABLED: the application package cannot be used for further application instantiation requests.",
        "description": "Operational state of the onboarded application package:\nENABLED: the application package can be used for instantiation of new application instances.\nDISABLED: the application package cannot be used for further application instantiation requests.\n",
        "examples": ["ENABLED"]
      },
      "OnboardingState": {
@@ -2508,9 +2511,7 @@
            "description": "Match the version of the application descriptor."
          },
          "operationalState": {
            "type": "string",
            "description": "Match particular operational state of the application package. May be present if the \"subscriptionType\" attribute contains the value \"AppPackageChangeSubscription\", and shall be absent otherwise.",
            "enum": ["ENABLED", "DISABLED"]
            "$ref": "#/components/schemas/OperationalState3"
          },
          "usageState": {
            "type": "string",
@@ -2567,12 +2568,6 @@
        },
        "description": "NOTE: It is for further study how to convey appPkgPath, and align with ETSI GS NFV-SOL 005 [i.7].\n"
      },
      "KeyValuePairs": {
        "type": "object",
        "additionalProperties": {
          "type": "object"
        }
      },
      "LinkType": {
        "title": "LinkType",
        "required": ["href"],
@@ -2630,14 +2625,23 @@
      },
      "OperationalState": {
        "title": "OperationalState",
        "enum": ["DISABLED", "ENABLED"],
        "description": "Operational state of the application package:\n\nENABLED: the application package can be used for instantiation of new application instances.\nDISABLED: the application package cannot be used for further application instantiation requests.\n",
        "type": "string",
        "enum": ["DISABLED", "ENABLED"],
        "examples": ["DISABLED"]
      },
      "OperationState": {
        "title": "OperationState",
      "OperationalState2": {
        "title": "OperationalState",
        "description": "New value of the \"operationalState\" attribute of the \"OnboardedAppPkgInfo\" structure.\n\nPermitted values\nDISABLED: to disable the individual application package.\nENABLED: to enable the individual application package.\n",
        "type": "string",
        "enum": ["DISABLED", "ENABLED"],
        "examples": ["ENABLED"]
      },
      "OperationalState3": {
        "title": "OperationalState",
        "description": "Match particular operational state of the application package.\n\nENABLED: the application package can be used for instantiation of new application instances.\nDISABLED: the application package cannot be used for further application instantiation requests.\n\nMay be present if the \"subscriptionType\" attribute contains the value \"AppPackageChangeSubscription\",\nand shall be absent otherwise.\n",
        "type": "string",
        "enum": ["ENABLED", "DISABLED"],
        "examples": ["DISABLED"]
      }
    },
+84 −38
Original line number Diff line number Diff line
@@ -1294,7 +1294,7 @@ components:
        extendedResourceRequests:
          type: array
          items:
            type: object
            $ref: '#/components/schemas/KeyValuePairs'
          description:  An array of key-value pairs of extended resources required by the container see note.
        additionalProperties:
          type: string
@@ -1405,7 +1405,7 @@ components:
        vduCpuRequirements:
          type: array
          items:
            type: object
            $ref: '#/components/schemas/KeyValuePairs'
          description: Array of key-value pair requirements on the Compute (CPU) for the VDU.
        virtualCpuPinning:
          $ref: '#/components/schemas/VirtualCpuPinningData'
@@ -1421,9 +1421,8 @@ components:
        vduStorageRequirements:
          type: array
          items:
            type: object
            $ref: '#/components/schemas/KeyValuePairs'
          description: An array of key-value pairs that articulate the storage deployment requirements.
          description: Array of key-value pair requirements on the storage for the VDU.
        rdmaEnabled:
          type: boolean
          description: Indicate if the storage support RDMA.
@@ -1524,16 +1523,21 @@ components:
          type: number
          description: Amount of virtual memory in MB.
        virtualMemOversubscriptionPolicy:
          description: The memory core oversubscription policy in terms of virtual memory to physical memory on the platform.
          type: string
          description: |
            The memory core oversubscription policy in terms of virtual memory to physical memory
            on the platform. The cardinality can be 0 during the allocation request, if no particular
            value is requested.
        vduMemRequirements:
          type: array
          items:
            $ref: '#/components/schemas/KeyValuePair'
            $ref: '#/components/schemas/KeyValuePairs'
          description: Array of key-value pair requirements on the memory for the VDU.
        numaEnabled:
          type: boolean
          description: Specifies the memory allocation to be cognisant of the relevant process/core allocation.
        hugePagesRequirements:
          type: string
          description: Specifies requirements on the huge pages resources for the virtual memory.

    RequestedAdditionalCapabilityData:
@@ -1557,10 +1561,15 @@ components:
          description: Specifies the preferred version of the requested additional capability
        targetPerformanceParameters:
          type: array
          description: Specifies specific attributes, dependent on the requested additional capability type. 
          items:
            $ref: '#/components/schemas/KeyValuePair'
            $ref: '#/components/schemas/KeyValuePairs'

    KeyValuePair:
    KeyValuePairs:
      description: |
        This data type represents a list of key-value pairs. The order of the pairs in the list is not
        significant. In JSON, a set of key-value pairs is represented as an object. It shall comply with
        the provisions defined in clause 4 of IETF RFC 8259.
      type: object
      properties:
        key:
@@ -1588,12 +1597,13 @@ components:
          items:
            type: string
            format: not-specified
    
    AppExternalCpd:
      title: AppExternalCpd
      type: object
      properties:
        inherited_attributes:
          type: object
        inheritedAttributes:
          type: string
          description: All attributes inherited from Cpd. See note 2.
        virtualNetworkInterfaceRequirements:
          type: array
@@ -1606,9 +1616,15 @@ components:
            $ref: '#/components/schemas/AdditionalServiceData'
          description: Additional service identification data of the external CP. For the definition of AdditionalServiceData, refer to clause 7.1.18.3 of ETSI GS NFV IFA 011 [1].
      description: |
        NOTE 1: An AppD conformant to the present document shall not specify "virtualNetworkInterfaceRequirements" in AppExternalCpd corresponding to primary container cluster network interfaces.
        NOTE 2: For CPs exposed by MEC Applications realized only by one or set of OS containers and used by the OS containers to connect to the primary container cluster external network, the ability to configure virtualised 
                resources based on cpRole and trunkMode attributes might not be supported by all container technologies.
        The AppExternalCpd data type supports the specification of MEC application requirements related to external 
        connection point.
        
        NOTE 1: An AppD conformant to the present document shall not specify "virtualNetworkInterfaceRequirements"
        in AppExternalCpd corresponding to primary container cluster network interfaces.
        
        NOTE 2: For CPs exposed by MEC Applications realized only by one or set of OS containers and used by
        the OS containers to connect to the primary container cluster external network, the ability to configure
        virtualised resources based on cpRole and trunkMode attributes might not be supported by all container technologies.

    AdditionalServiceData:
      type: object
@@ -1621,12 +1637,19 @@ components:
            $ref: '#/components/schemas/ServicePortData'
          minItems: 1
        serviceData:
          type: object
          type: string
          description:  Service matching information exposed by the VirtualCp. See note.
      description: |
        NOTE: This attribute shall only be present if additional information is needed to identify the service termination within 
              the VNF, such as for example a url path information in an HTTP request required to allow a single VirtualCp IP 
              address to be used for several HTTP based services that use the same portnumber. 
        This information element describes the additional service data of the VirtualCp used to expose
        properties of the VirtualCp to NFV-MANO.
        
        If the VirtualCp is exposed by a VNF component realized by one or a set of OS containers,
        the properties are mirrored from the declarative descriptor of the corresponding MCIO where available. 

        NOTE: This attribute shall only be present if additional information is needed to identify the
        service termination within the VNF, such as for example a url path information in an HTTP request
        required to allow a single VirtualCp IP address to be used for several HTTP based services that
        use the same portnumber. 

    ServicePortData:
      type: object
@@ -1763,11 +1786,11 @@ components:
    AppPkgInfoModifications:
      title: AppPkgInfoModifications
      required:
      - operationState
      - OperationalState
      type: object
      properties:
        operationState:
          $ref: '#/components/schemas/OperationState'
        OperationalState:
          $ref: '#/components/schemas/OperationalState2'
      description: "'The data type represents the operational state for an application package resource'"
    
    AppPkg.OperationalState:
@@ -1776,7 +1799,10 @@ components:
      - ENABLED
      - DISABLED
      type: string
      description: 'Operational state of the onboarded application package: •ENABLED: the application package can be used for instantiation of new application instances. •DISABLED: the application package cannot be used for further application instantiation requests.'
      description: |
        Operational state of the onboarded application package:
        ENABLED: the application package can be used for instantiation of new application instances.
        DISABLED: the application package cannot be used for further application instantiation requests.
      examples:
      - ENABLED
    
@@ -1999,11 +2025,7 @@ components:
          type: string
          description: Match the version of the application descriptor.
        operationalState:
          type: string
          description: Match particular operational state of the application package. May be present if the "subscriptionType" attribute contains the value "AppPackageChangeSubscription", and shall be absent otherwise.
          enum:
            - ENABLED
            - DISABLED
          $ref: '#/components/schemas/OperationalState3'
        usageState:
          type: string
          description: Match particular usage state of the application package. May be present if the "subscriptionType" attribute contains the value "AppPackageChangeSubscription", and shall be absent otherwise.
@@ -2057,11 +2079,6 @@ components:
      description: |
        NOTE: It is for further study how to convey appPkgPath, and align with ETSI GS NFV-SOL 005 [i.7].

    KeyValuePairs:
      type: object
      additionalProperties:
        type: object

    LinkType:
      title: LinkType
      required:
@@ -2111,18 +2128,47 @@ components:

    OperationalState:
      title: OperationalState
      description: |
        Operational state of the application package:

        ENABLED: the application package can be used for instantiation of new application instances.
        DISABLED: the application package cannot be used for further application instantiation requests.
      type: string
      enum:
      - DISABLED
      - ENABLED
      type: string
      examples:
      - DISABLED
    OperationState:
      title: OperationState
    
    OperationalState2:
      title: OperationalState
      description: |
        New value of the "operationalState" attribute of the "OnboardedAppPkgInfo" structure.
        
        Permitted values
        DISABLED: to disable the individual application package.
        ENABLED: to enable the individual application package.
      type: string
      enum:
      - DISABLED
      - ENABLED
      examples:
      - ENABLED

    OperationalState3:
      title: OperationalState
      description: |
        Match particular operational state of the application package.
        
        ENABLED: the application package can be used for instantiation of new application instances.
        DISABLED: the application package cannot be used for further application instantiation requests.

        May be present if the "subscriptionType" attribute contains the value "AppPackageChangeSubscription",
        and shall be absent otherwise.
      type: string
      enum:
        - ENABLED
        - DISABLED
      examples:
        - DISABLED