Commit 5f4011fb authored by rameshnaraya's avatar rameshnaraya
Browse files

Replace NSLifecycleManagement_def.yaml

parent 4325553b
Pipeline #147 passed with stage
in 0 seconds
# Copyright (c) ETSI 2017
# https://forge.etsi.org/etsi-forge-copyright-notice.txt
definitions:
CreateNsRequest:
type: object
required:
- nsdId
- nsName
- nsDescription
properties:
nsdId:
description: >
Identifier of the NSD that defines the NS instance to be
created.
$ref: "SOL005_def.yaml#/definitions/Identifier"
nsName:
description: >
Human-readable name of the NS instance to be created.
type: string
nsDescription:
description: >
Human-readable description of the NS instance to be created.
type: string
NsInstance:
HealNsRequest:
description: >
This type represents a response for Query NS operation.
It shall comply with the provisions defined in Table 6.5.2.10-1.
This operation supports the healing of an NS instance,
either by healing the complete NS instance or by healing one of
more of the VNF instances that are part of this NS.
It shall comply with the provisions defined in Table 6.5.2.13-1.
type: object
required:
- id
- nsInstanceName
- nsInstanceDescription
- nsdId
- nsdInfoId
- nsState
properties:
id:
description: >
Identifier of the NS instance.
$ref: "SOL005_def.yaml#/definitions/Identifier"
nsInstanceName:
description: >
Human readable name of the NS instance.
type: string
nsInstanceDescription:
description: >
Human readable description of the NS instance.
type: string
nsdId:
description: >
Identifier of the NSD on which the NS instance is based.
$ref: "SOL005_def.yaml#/definitions/Identifier"
nsdInfoId:
description: >
Identifier of the NSD information object on which the
NS instance is based. This identifier was allocated by the NFVO.
$ref: "SOL005_def.yaml#/definitions/Identifier"
flavourId:
description: >
Identifier of the NS deployment flavor applied to
the NS instance. This attribute shall be present if the nsState attribute
value is INSTANTIATED.
$ref: "SOL005_def.yaml#/definitions/IdentifierInNsd"
vnfInstance:
description: >
Information on constituent VNF(s) of the NS instance.
type: array
items:
$ref: "#/definitions/VnfInstance"
pnfInfo:
description: >
Information on the PNF(s) that are part of the NS instance.
type: array
items:
$ref: "#/definitions/PnfInfo"
virtualLinkInfo:
description: >
Information on the VL(s) of the NS instance.
This attribute shall be present if the nsState attribute
value is INSTANTIATED and if the NS instance has
specified connectivity.
type: array
items:
$ref: "#/definitions/NsVirtualLinkInfo"
vnffgInfo:
description: >
Information on the VNFFG(s) of the NS instance.
type: array
items:
$ref: "#/definitions/VnffgInfo"
sapInfo:
description: >
Information on the SAP(s) of the NS instance.
type: array
items:
$ref: "#/definitions/SapInfo"
nestedNsInstanceId:
description: >
Identifier of the nested NS(s) of the NS instance.
type: array
items:
$ref: "SOL005_def.yaml#/definitions/Identifier"
nsState:
healNsData:
description: >
The state of the NS instance.
Permitted values:
NOT_INSTANTIATED: The NS instance is
terminated or not instantiated.
INSTANTIATED: The NS instance is instantiated.
type: string
enum:
- NOT_INSTANTIATED
- INSTANTIATED
nsScaleStatus:
Indicates the reason why a healing procedure is required.
$ref: "#/definitions/HealNsData"
healVnfData:
description: >
Status of each NS scaling aspect declared in the
applicable DF, how "big" the NS instance has been
scaled w.r.t. that aspect.
This attribute shall be present if the nsState attribute
value is INSTANTIATED..
Additional parameters passed by the NFVO as input to the healing
process, specific to the VNF being healed, as declared in the VNFD
as part of "HealVnfOpConfig".
type: array
items:
$ref: "#/definitions/NsScaleInfo"
additionalAffinityOrAntiAffinityRule:
description: >
Information on the additional affinity or anti-affinity
rule from NS instantiation operation. Shall not
conflict with rules already specified in the NSD.
type: array
items:
$ref: "#/definitions/AffinityOrAntiAffinityRule"
_links:
description: >
Links to resources related to this resource.
type: object
required:
- self
properties:
self:
description: >
URI of this resource.
$ref: "SOL005_def.yaml#/definitions/Link"
nestedNsInstances:
description: >
Links to resources related to this notification.
type: array
items:
$ref: "SOL005_def.yaml#/definitions/Link"
instantiate:
description: >
Link to the "instantiate" task resource, if the related
operation is possible based on the current status of
this NS instance resource (i.e. NS instance in
NOT_INSTANTIATED state).
$ref: "SOL005_def.yaml#/definitions/Link"
terminate:
description: >
Link to the "terminate" task resource, if the related
operation is possible based on the current status of
this NS instance resource (i.e. NS instance is in
INSTANTIATED state).
$ref: "SOL005_def.yaml#/definitions/Link"
update:
description: >
Link to the "update" task resource, if the related
operation is possible based on the current status of
this NS instance resource (i.e. NS instance is in
INSTANTIATED state).
$ref: "SOL005_def.yaml#/definitions/Link"
scale:
description: >
Link to the "scale" task resource, if the related
operation is supported for this NS instance, and is
possible based on the current status of this NS
instance resource (i.e. NS instance is in
INSTANTIATED state).
$ref: "SOL005_def.yaml#/definitions/Link"
heal:
description: >
Link to the "heal" task resource, if the related
operation is supported for this NS instance, and is
possible based on the current status of this NS
instance resource (i.e. NS instance is in
INSTANTIATED state).
$ref: "SOL005_def.yaml#/definitions/Link"
VnfInstance:
$ref: "#/definitions/HealVnfData"
NsLcmOpOcc:
description: >
This type represents a VNF instance.
This type represents a request a NS lifecycle operation occurrence.
It shall comply with the provisions defined in Table 6.5.2.3-1.
type: object
required:
- id
- vnfdId
- vnfProvider
- vnfProductName
- vnfSoftwareVersion
- vnfdVersion
- vnfPkgId
- instantiationState
- operationState
- stateEnteredTime
- nsInstanceId
- lcmOperationType
- startTime
- isAutomaticInvocation
- operationParams
- isCancelPending
properties:
id:
description: >
Identifier of the VNF instance.
Identifier of this NS lifecycle operation occurrence.
$ref: "SOL005_def.yaml#/definitions/Identifier"
vnfInstanceName:
operationState:
description: >
Name of the VNF instance.
This attribute can be modified with the PATCH method.
type: string
vnfInstanceDescription:
The state of the NS LCM operation.
$ref: "SOL005NSLifecycleManagement_def.yaml#/definitions/NsLcmOperationStateType"
stateEnteredTime:
description: >
Human-readable description of the VNF instance.
This attribute can be modified with the PATCH method.
Date-time when the current state was entered.
type: string
vnfdId:
format: date-time
nsInstanceId:
description: >
Identifier of the VNFD on which the VNF instance is based.
Identifier of the NS instance to which the operation applies.
$ref: "SOL005_def.yaml#/definitions/Identifier"
vnfProvider:
lcmOperationType:
description: >
Provider of the VNF and the VNFD. The value is copied from the VNFD.
type: string
vnfProductName:
Type of the actual LCM operation represented by this
lcm operation occurrence.
$ref: "SOL005NSLifecycleManagement_def.yaml#/definitions/NsLcmOpType"
startTime:
description: >
Name to identify the VNF Product. The value is copied from the VNFD.
Date-time of the start of the operation.
type: string
vnfSoftwareVersion:
description: >
Software version of the VNF. The value is copied from the VNFD.
$ref: "#/definitions/Version"
vnfdVersion:
description: >
Identifies the version of the VNFD. The value is copied from the VNFD.
$ref: "#/definitions/Version"
vnfPkgId:
description: >
Identifier of information held by the NFVO about
the specific VNF package on which the VNF is
based. This identifier was allocated by the NFVO.
This attribute can be modified with the PATCH
method.
$ref: "SOL005_def.yaml#/definitions/Identifier"
vnfConfigurableProperties:
format: date-time
isAutomaticInvocation:
description: >
Current values of the configurable properties of the VNF instance.
Configurable properties referred in this attribute are declared in
the VNFD.
ETSI GS NFV-SOL 001 specifies the structure and format of the VNFD
based on TOSCA specifications.
VNF configurable properties are sometimes also referred to as
configuration parameters applicable to a VNF. Some of these are set
prior to instantiation and cannot be modified if the VNF is
instantiated, some are set prior to instantiation (are part of
initial configuration) and can be modified later, and others can be
set only after instantiation. The applicability of certain
configuration may depend on the VNF and the required operation of
the VNF at a certain point in time.
These configurable properties include the following standard
attributes, which are declared in the VNFD if auto-scaling and/or
auto-healing are supported by the VNF:
* isAutoscaleEnabled: If present, the VNF supports auto-scaling. If
set to true, auto-scaling is currently enabled. If set to false,
auto-scaling is currently disabled.
* isAutohealEnabled: If present, the VNF supports auto-healing. If
set to true, auto-healing is currently enabled. If set to false,
auto-healing is currently disabled.
This attribute can be modified with the PATCH method.
Set to true if this NS LCM operation occurrence has
been automatically triggered by the NFVO. This occurs
in the case of auto-scaling, auto-healing and when a
nested NS is modified as a result of an operation on its
composite NS. Set to false otherwise.
type: boolean
operationParams:
description: >
Input parameters of the LCM operation. This attribute
shall be formatted according to the request data type of
the related LCM operation.
The following mapping between lcmOperationType and
the data type of this attribute shall apply:
- INSTANTIATE: InstantiateNsRequest
- SCALE: ScaleNsRequest
- UPDATE: UpdateNsRequest
- HEAL: HealNsRequest
- TERMINATE: TerminateNsRequest
$ref: "SOL005_def.yaml#/definitions/KeyValuePairs"
vimId:
isCancelPending:
description: >
Identifier of a VIM that manages resources for the VNF instance.
$ref: "SOL005_def.yaml#/definitions/Identifier"
instantiationState:
If the LCM operation occurrence is in "PROCESSING"
or "ROLLING_BACK" state and the operation is being
cancelled, this attribute shall be set to true. Otherwise, it
shall be set to false.
type: boolean
cancelMode:
description: >
The instantiation state of the VNF.
type: string
enum:
- NOT_INSTANTIATED
- INSTANTIATED
instantiatedVnfInfo:
The mode of an ongoing cancellation. Shall be present
when isCancelPending=true, and shall be absent otherwise.
$ref: "#/definitions/CancelModeType"
error:
description: >
If "operationState" is "FAILED_TEMP" or "FAILED" or "operationState"
is "PROCESSING" or "ROLLING_BACK" and previous value of
"operationState" was "FAILED_TEMP", this attribute shall be present
and contain error information, unless it has been requested to be
excluded via an attribute selector.
$ref: "SOL005_def.yaml#/definitions/ProblemDetails"
resourceChanges:
description: >
Information specific to an instantiated VNF instance. This attribute
shall be present if the instantiateState attribute value is INSTANTIATED.
This attribute contains information about the cumulative
changes to virtualised resources that were performed so
far by the LCM operation since its start, if applicable
type: object
required:
- flavourId
- vnfState
properties:
flavourId:
description: >
Identifier of the VNF deployment flavor applied to this VNF instance.
$ref: "SOL005_def.yaml#/definitions/IdentifierInVnfd"
vnfState:
affectedVnfs:
description: >
The state of the VNF instance.
$ref: "#/definitions/VnfOperationalStateType"
scaleStatus:
description: >
Scale status of the VNF, one entry per aspect. Represents for every
scaling aspect how "big" the VNF has been scaled w.r.t. that aspect.
Information about the VNF instances that were affected
during the lifecycle operation, if this notification
represents the result of a lifecycle operation..
type: array
items:
$ref: "#/definitions/VnfScaleInfo"
extCpInfo:
$ref: "SOL005NSLifecycleManagement_def.yaml#/definitions/AffectedVnf"
affectedPnfs:
description: >
Information about the external CPs exposed by the VNF instance.
Information about the PNF instances that were affected
during the lifecycle operation, if this notification
represents the result of a lifecycle operation.
type: array
minItems: 1
items:
type: object
required:
- id
- cpdId
properties:
id:
description: >
Identifier of the external CP instance and the related information instance.
$ref: "SOL005_def.yaml#/definitions/IdentifierInVnf"
cpdId:
description: >
Identifier of the external CPD, VnfExtCpd, in the VNFD.
$ref: "SOL005_def.yaml#/definitions/IdentifierInVnfd"
cpProtocolInfo:
description: >
Network protocol information for this CP.
type: array
items:
$ref: "#/definitions/CpProtocolInfo"
extLinkPortId:
description: >
Identifier of the "extLinkPortInfo" structure inside the the
"extVirtualLinkInfo" structure. Shall be present if the CP is
associated to a link port.
$ref: "SOL005_def.yaml#/definitions/Identifier"
extVirtualLinkInfo:
$ref: "SOL005NSLifecycleManagement_def.yaml#/definitions/AffectedPnf"
affectedVls:
description: >
Information about the external VLs the VNF instance is connected to.
Information about the VL instances that were affected
during the lifecycle operation, if this notification
represents the result of a lifecycle operation.
type: array
items:
$ref: "#/definitions/ExtVirtualLinkInfo"
extManagedVirtualLinkInfo:
$ref: "SOL005NSLifecycleManagement_def.yaml#/definitions/AffectedVl"
affectedVnffgs:
description: >
External virtual links the VNF instance is connected to.
Information about the VNFFG instances that were
affected during the lifecycle operation, if this notification
represents the result of a lifecycle operation. See note
type: array
items:
$ref: "#/definitions/ExtManagedVirtualLinkInfo"
monitoringParameters:
$ref: "SOL005NSLifecycleManagement_def.yaml#/definitions/AffectedVnffg"
affectedNss:
description: >
Active monitoring parameters.
Information about the nested NS instances that were
affected during the lifecycle operation, if this notification
represents the result of a lifecycle operation. See note.
type: array
items:
$ref: "#/definitions/MonitoringParameter"
localizationLanguage:
$ref: "SOL005NSLifecycleManagement_def.yaml#/definitions/AffectedNs"
affectedSaps:
description: >
Information about localization language of the VNF (includes e.g.
strings in the VNFD). The localization languages supported by a VNF
can be declared in the VNFD, and localization language selection can
take place at instantiation time.
The value shall comply with the format defined in IETF RFC 5646.
type: string
vnfcResourceInfo:
description: >
Information about the virtualised compute and storage resources used
by the VNFCs of the VNF instance.
Information about the nested NS instances that were
affected during the lifecycle operation, if this notification
represents the result of a lifecycle operation. See note.
type: array
items:
$ref: "#/definitions/VnfcResourceInfo"
virtualLinkResourceInfo:
$ref: "SOL005NSLifecycleManagement_def.yaml#/definitions/AffectedSap"
_links:
description: >
Links to resources related to this resource.
type: object
properties:
self:
description: >
Information about the virtualised network resources used by the VLs
of the VNF instance.
type: array
items:
$ref: "#/definitions/VnfVirtualLinkResourceInfo"
virtualStorageResourceInfo:
URI of this resource.
$ref: "SOL005_def.yaml#/definitions/Link"
nsInstance:
description: >
Information on the virtualised storage resource(s) used as storage for the VNF instance.
type: array
items:
$ref: "#/definitions/VirtualStorageResourceInfo"
metadata:
description: >
Additional VNF-specific metadata describing the VNF instance.
Metadata that are writeable are declared in the VNFD.
This attribute can be modified with the PATCH method.
$ref: "SOL005_def.yaml#/definitions/KeyValuePairs"
extensions:
description: >
VNF-specific attributes that affect the lifecycle management of this
VNF instance by the VNFM, or the lifecycle management scripts.
Extensions that are writeable are declared in the VNFD.
This attribute can be modified with the PATCH method.
$ref: "SOL005_def.yaml#/definitions/KeyValuePairs"
LccnLinks:
Link to the NS instance that the operation applies to.
$ref: "SOL005_def.yaml#/definitions/Link"
cancel:
description: >
Link to the task resource that represents the "cancel"
operation for this LCM operation occurrence, if
cancelling is currently allowed.
$ref: "SOL005_def.yaml#/definitions/Link"
retry:
description: >
Link to the task resource that represents the "cancel"
operation for this LCM operation occurrence,
if cancelling is currently allowed.
$ref: "SOL005_def.yaml#/definitions/Link"
rollback:
description: >
Link to the task resource that represents the "rollback"
operation for this LCM operation occurrence, if rolling
back is currently allowed.
$ref: "SOL005_def.yaml#/definitions/Link"
continue:
description: >
Link to the task resource that represents the "continue"
operation for this LCM operation occurrence, if rolling
back is currently allowed.
$ref: "SOL005_def.yaml#/definitions/Link"
fail:
description: >
Link to the task resource that represents the "fail"
operation for this LCM operation occurrence, if rolling
back is currently allowed.
$ref: "SOL005_def.yaml#/definitions/Link"
CancelMode:
description: >
This type represents the links to resources that a notification can contain.
This type represents a parameter to select the mode of canceling an ongoing NS LCM operation occurrence.
It shall comply with the provisions defined in Table 6.5.2.16-1..
type: object
required:
- nsInstance
properties:
nsInstance:
description: >
Link to the resource representing the NS instance to
which the notified change applies..
$ref: "SOL005_def.yaml#/definitions/Link"
subscription:
description: >
Link to the subscription that triggered this notification.
$ref: "SOL005_def.yaml#/definitions/Link"
lcOpOcc:
- cancelMode
properties:
cancelMode:
description: >
Link to the lifecycle operation occurrence that this
notification is related to. Shall be present if there is a
related lifecycle operation occurrence
$ref: "SOL005_def.yaml#/definitions/Link"
Version:
Cancellation mode to apply.
$ref: "#/definitions/CancelModeType"
CancelModeType:
description: >
A Version.
type: string
VnfOperationalStateType:
Cancellation mode.