What's on this page

Process

Lifecycle changes within LM that move instances from one state to another are implemented by Processes.

Associated with each example is a table explaining the fields in the example. This includes the name of the field, a brief description and whether the field is mandatory. Whether a field is required or not is based on the context of the examples. The underlying API definition may mark a field as optional, but in some contexts, the fields must be supplied.

In the examples below field names shown in italics are example names and not the real one to be used in messages.

Get a single LM Process

Get a process with the given unique id

Request Format

Aspect Value
Endpoint URL /api/processes/{processId}
HTTP Method GET
Parameters processId – the unique ID of the process to return the information about.

Response Format

Aspect Value
Response Code 200 – OK 404 – Specified Process could not be found.

For a 40x, 50x or any other error response please see error response codes.

Example Response

Content Type: application/json

{

​    "id" : "1b9c6e04-1cce-4cb6-8c30-ffda960964ec",

​    "assemblyId" : "fd262ceb-9cdc-480a-aba4-691ba50febd6",

​    "assemblyName" : "BasicTestAssembly",

​    "assemblyType" : "assembly::t_bta_noStopStart::1.0",

​    "lifecycleAction" : "Heal",

​    "intent" : {

​        "assemblyName" : "BasicTestAssembly",

​        …

​    },

​    "intentType" : "HealAssembly",

​    "status" : "Completed",

​    "startTime" : "2018-08-08T16:29:23.218+01:00",

​    "endTime" : "2018-08-08T16:29:23.714+01:00",

​    "context" : {

​        …

​    },

​    "previousInstance" : { … },

​    "desiredInstance" : { … },

​    "executionPlan" : { … }

}

 

The content of some of the above fields has been shortened and replaced with ellipses as it will vary greatly depending on the exact lifecycle change required.

Response properties

Field Description Mandatory
id Unique identifier for the Process (GUID) Yes
assemblyId Unique identifier for the Assembly being used by the process (GUID) Yes
assemblyName Textual name of the Assembly being used by the Process Yes
assemblyType Textual name of the Assembly Type Yes
lifecycleAction The Lifecycle action being performed by the Process Yes
intent Definition of the lifecycle change that the Process shall perform/has performed. The properties within this entry will therefore vary for each different Intent. Yes
assemblyName The name of the Assembly that is involved in the lifecycle change. Yes
intentType The type of lifecycle change performed/will be performed by the Process. Yes
status Current state of the Process. Supported values are: “Planned”, “Pending”, “In Progress”, “Completed”, “Cancelled” and “Failed” Yes
startTime Time the Process started expressed in ISO 1806 format. This time is taken from the server on which LM is running. If the Process is yet to run then this property will not be present. No
endTime Time the Process finished expressed in ISO 1806 format. This time is taken from the server on which LM is running. If the Process has not completed or been cancelled, then this property will not be present. No
context Any additional contextual parameters required by the Process (typically empty) No
previousInstance The state of the Assembly instance that the Process shall start with. Yes
desiredInstance The desired state of the Assembly instance that the Process shall migrate the Assembly to using the Execution Plan. Yes
executionPlan The definition of the Process and the list of Tasks the Process shall execute to achieve the required lifecycle change. Yes

Search for a Process

Return a list of processes based on a set of query parameters. The Query parameters are supplied as URL parameters.

Request Format

Aspect Value
Endpoint URL /api/processes?
HTTP Method GET
Parameters None

Request parameters

Field Description Mandatory
assemblyId The unique id of the assembly being used by the Process(es). No
assemblyName Textual name of the assembly being used by the Process(es). This is Case Sensitive. The “*” wildcard characters is supported anywhere within the text string and matches any number of characters. No
assemblyType The Type of Assembly. This is Case Sensitive and must be an exact match. No wildcards are supported. No
startDateTime The time the process must have started after, expressed in ISO 1806 format. No
endDateTime The time the process must have ended before, expressed in ISO 1806 format. No
processStatuses A comma-separated list of process states, at least one of which the Process must be in. No
intentTypes A comma-separated list of Intent Types, at least one of which the Process must be using. No
limit The maximum number of matching Processes to be returned by this query. If this is not supplied then all matching Processes will be returned. No

Response Format

Aspect Value
Response Code 200 - OK

For a 40x, 50x or any other error response please see error response codes.

If no matches are found, then an empty JSON result set shall be returned.

Example Response

Content Type: application/json

{

​    "id": " 8e266bc5-e613-4b0d-9ae0-50db6454b026",

​    "parentVnf": " 8e678bc5-e625-6b0d-9ae0-50ab6454t676",

​    "name": " asterisk",

​    "description": "A voice resource",

​    "version": "1.0"

}

Response properties

Field Description Mandatory
id Unique identifier for the VNFC Descriptor Yes
parentVnf Identifier for the parent VNF No
name Name of the VNFC Descriptor Yes
description Description of the VNFC Descriptor No
version Version of the VNFC Descriptor Yes