Deployment-Handler

API name

Swagger JSON

Swagger YAML

deployment-handler

link

link

Description

High-level API for deploying/undeploying composed DCAE services using Cloudify Manager.

License

Apache 2.0

DCAE-DEPLOYMENTS

operations on dcae-deployments

DELETE /dcae-deployments/{deploymentId}

Description

Uninstall the DCAE service and remove all associated data from the orchestrator.

Parameters

Name

Located in

Required

Type

Format

Properties

Description

deploymentId

path

Yes

string

Deployment identifier for the service to be uninstalled.

Request

Responses

202

Success: The dispatcher has initiated the uninstall operation.

Type: DCAEDeploymentResponse

Example:

{
    "links": {
        "self": "somestring",
        "status": "somestring"
    },
    "requestId": "somestring"
}
400

Bad request: See the message in the response for details.

Type: DCAEErrorResponse

Example:

{
    "message": "somestring",
    "status": 1
}
500

Problem on the server side. See the message in the response for more details.

Type: DCAEErrorResponse

Example:

{
    "message": "somestring",
    "status": 1
}
502

Error reported to the dispatcher by a downstream system. See the message in the response for more details.

Type: DCAEErrorResponse

Example:

{
    "message": "somestring",
    "status": 1
}
504

Error communicating with a downstream system. See the message in the response for more details.

Type: DCAEErrorResponse

Example:

{
    "message": "somestring",
    "status": 1
}

GET /dcae-deployments

Description

List service deployments known to the orchestrator, optionally restricted to a single service type

Parameters

Name

Located in

Required

Type

Format

Properties

Description

serviceTypeId

query

No

string

Service type identifier for the type whose deployments are to be listed

Request

Responses

200

Success. (Note that if no matching deployments are found, the request is still a success; the deployments array is empty in that case.)

Type: DCAEDeploymentsListResponse

Example:

{
    "deployments": [
        {
            "href": "somestring"
        },
        {
            "href": "somestring"
        }
    ],
    "requestId": "somestring"
}
500

Problem on the server side. See the message in the response for more details.

Type: DCAEErrorResponse

Example:

{
    "message": "somestring",
    "status": 1
}
502

Error reported to the dispatcher by a downstream system. See the message in the response for more details.

Type: DCAEErrorResponse

Example:

{
    "message": "somestring",
    "status": 1
}
504

Error communicating with a downstream system. See the message in the response for more details.

Type: DCAEErrorResponse

Example:

{
    "message": "somestring",
    "status": 1
}

GET /dcae-deployments/{deploymentId}/operation/{operationId}

Description

Get status of a deployment operation

Parameters

Name

Located in

Required

Type

Format

Properties

Description

deploymentId

path

Yes

string

operationId

path

Yes

string

Request

Responses

200

Status information retrieved successfully

Type: DCAEOperationStatusResponse

Example:

{
    "error": "somestring",
    "links": {
        "self": "somestring",
        "uninstall": "somestring"
    },
    "operationType": "somestring",
    "requestId": "somestring",
    "status": "somestring"
}
404

The operation information does not exist (possibly because the service has been uninstalled and deleted).

Type: DCAEErrorResponse

Example:

{
    "message": "somestring",
    "status": 1
}
500

Problem on the server side. See the message in the response for more details.

Type: DCAEErrorResponse

Example:

{
    "message": "somestring",
    "status": 1
}
502

Error reported to the dispatcher by a downstream system. See the message in the response for more details.

Type: DCAEErrorResponse

Example:

{
    "message": "somestring",
    "status": 1
}
504

Error communicating with a downstream system. See the message in the response for more details.

Type: DCAEErrorResponse

Example:

{
    "message": "somestring",
    "status": 1
}

PUT /dcae-deployments/{deploymentId}

Description

Request deployment of a DCAE service

Parameters

Name

Located in

Required

Type

Format

Properties

Description

deploymentId

path

Yes

string

Unique deployment identifier assigned by the API client.

Request

Body

Request for deploying a DCAE service.

Name

Required

Type

Format

Properties

Description

inputs

No

Object containing inputs needed by the service blueprint to create an instance of the service. Content of the object depends on the service being deployed.

serviceTypeId

Yes

string

The service type identifier (a unique ID assigned by DCAE inventory) for the service to be deployed.

Inputs schema:

Object containing inputs needed by the service blueprint to create an instance of the service. Content of the object depends on the service being deployed.

{
    "inputs": {},
    "serviceTypeId": "somestring"
}

Responses

202
Success: The content that was posted is valid, the dispatcher has

found the needed blueprint, created an instance of the topology in the orchestrator, and started an installation workflow.

Type: DCAEDeploymentResponse

Example:

{
    "links": {
        "self": "somestring",
        "status": "somestring"
    },
    "requestId": "somestring"
}
400

Bad request: See the message in the response for details.

Type: DCAEErrorResponse

Example:

{
    "message": "somestring",
    "status": 1
}
409

A service with the specified deployment Id already exists. Using PUT to update the service is not a supported operation.

Type: DCAEErrorResponse

Example:

{
    "message": "somestring",
    "status": 1
}
415

Bad request: The Content-Type header does not indicate that the content is ‘application/json’

Type: DCAEErrorResponse

Example:

{
    "message": "somestring",
    "status": 1
}
500

Problem on the server side. See the message in the response for more details.

Type: DCAEErrorResponse

Example:

{
    "message": "somestring",
    "status": 1
}
502

Error reported to the dispatcher by a downstream system. See the message in the response for more details.

Type: DCAEErrorResponse

Example:

{
    "message": "somestring",
    "status": 1
}
504

Error communicating with a downstream system. See the message in the response for more details.

Type: DCAEErrorResponse

Example:

{
    "message": "somestring",
    "status": 1
}

INFO

version and links

GET /

Description

Returns version information and links to API operations

Request

Responses

200

Success

Response Schema:

Name

Required

Type

Format

Properties

Description

apiVersion

No

string

version of API supported by this server

links

No

links

Links to API resources

serverVersion

No

string

version of software running on this server

Links schema:

Links to API resources

Name

Required

Type

Format

Properties

Description

events

No

string

path for the events endpoint

info

No

string

path for the server information endpoint

Example:

{
    "apiVersion": "somestring",
    "links": {
        "events": "somestring",
        "info": "somestring"
    },
    "serverVersion": "somestring"
}

POLICY

policy update API consumed by policy-handler and debug API to find policies on components

GET /policy/components

Description

debug API to find policies on components

Request

Responses

200

deployment-handler found components with or without policies in cloudify

POST /policy

Description

policy update API consumed by policy-handler

Request

Body

request to update policies on DCAE components.

Name

Required

Type

Format

Properties

Description

catch_up

Yes

boolean

flag to indicate whether the request contains all the policies in PDP or not

errored_policies

No

whether policy-engine returned an error on the policy.

errored_scopes

No

array of string

on cartchup - list of policy scope_prefix values on wchich the policy-engine experienced an error other than not-found data.

latest_policies

Yes

dictionary of (policy_id -> DCAEPolicy object).

removed_policies

Yes

whether policy was removed from policy-engine.

scope_prefixes

No

array of string

on catchup - list of all scope_prefixes used by the policy-handler to retrieve the policies from policy-engine.

Errored_policies schema:

whether policy-engine returned an error on the policy. dictionary of (policy_id -> true). In example: replace additionalProp1,2,3 with policy_id1,2,3 values

Map of {“key”:”boolean”}

Latest_policies schema:

dictionary of (policy_id -> DCAEPolicy object). In example: replace additionalProp1,2,3 with policy_id1,2,3 values

Map of {“key”:”DCAEPolicy”}

Removed_policies schema:

whether policy was removed from policy-engine. dictionary of (policy_id -> true). In example: replace additionalProp1,2,3 with policy_id1,2,3 values

Map of {“key”:”boolean”}

{
    "catch_up": true,
    "errored_policies": {},
    "errored_scopes": [
        "somestring",
        "somestring"
    ],
    "latest_policies": {
        "DCAEPolicy": {
            "policy_body": {
                "config": {},
                "policyName": "somestring",
                "policyVersion": "somestring"
            },
            "policy_id": "somestring"
        }
    },
    "removed_policies": {},
    "scope_prefixes": [
        "somestring",
        "somestring"
    ]
}

Responses

200

deployment-handler always responds with ok to /policy before processing the request

Data Structures

DCAEDeploymentRequest Model Structure

Request for deploying a DCAE service.

Name

Required

Type

Format

Properties

Description

inputs

No

Object containing inputs needed by the service blueprint to create an instance of the service.

serviceTypeId

Yes

string

The service type identifier (a unique ID assigned by DCAE inventory) for the service to be deployed.

Inputs schema:

Object containing inputs needed by the service blueprint to create an instance of the service. Content of the object depends on the service being deployed.

DCAEDeploymentResponse Model Structure

Response body for a PUT or DELETE to /dcae-deployments/{deploymentId}

Name

Required

Type

Format

Properties

Description

links

Yes

links

Links that the API client can access.

requestId

Yes

string

Unique identifier for the request

Links schema:

Links that the API client can access.

Name

Required

Type

Format

Properties

Description

self

No

string

Link used to retrieve information about the service being deployed

status

No

string

Link used to retrieve information about the status of the installation workflow

DCAEDeploymentsListResponse Model Structure

Object providing a list of deployments

Name

Required

Type

Format

Properties

Description

deployments

Yes

array of deployments

requestId

Yes

string

Unique identifier for the request

Deployments schema:

Name

Required

Type

Format

Properties

Description

href

No

string

URL for the service deployment

DCAEErrorResponse Model Structure

Object reporting an error.

Name

Required

Type

Format

Properties

Description

message

No

string

Human-readable description of the reason for the error

status

Yes

integer

HTTP status code for the response

DCAEOperationStatusResponse Model Structure

Response body for a request for status of an installation or uninstallation operation.

Name

Required

Type

Format

Properties

Description

error

No

string

If status is ‘failed’, this field will be present and contain additional information about the reason the operation failed.

links

No

links

If the operation succeeded, links that the client can follow to take further action. Note that a successful ‘uninstall’ operation removes the DCAE service instance completely, so there are no possible further actions, and no links.

operationType

Yes

string

Type of operation being reported on. (‘install’ or ‘uninstall’)

requestId

Yes

string

A unique identifier assigned to the request. Useful for tracing a request through logs.

status

Yes

string

Status of the installation or uninstallation operation. Possible values are ‘processing’,

Links schema:

If the operation succeeded, links that the client can follow to take further action. Note that a successful ‘uninstall’ operation removes the DCAE service instance completely, so there are no possible further actions, and no links.

Name

Required

Type

Format

Properties

Description

self

No

string

Link used to retrieve information about the service.

uninstall

No

string

Link used to trigger an ‘uninstall’ operation for the service. (Use the DELETE method.)

DCAEPolicy Model Structure

policy object

Name

Required

Type

Format

Properties

Description

policy_body

Yes

DCAEPolicyBody

policy_id

Yes

string

unique identifier of policy regardless of its version

DCAEPolicyBody Model Structure

policy_body - the whole object received from policy-engine

Name

Required

Type

Format

Properties

Description

config

Yes

config

the policy-config - the config data provided by policy owner

policyName

Yes

string

unique policy name that contains the version and extension

policyVersion

Yes

string

stringified int that is autoincremented by policy-engine

Config schema:

the policy-config - the config data provided by policy owner

DCAEPolicyRequest Model Structure

request to update policies on DCAE components.

Name

Required

Type

Format

Properties

Description

catch_up

Yes

boolean

flag to indicate whether the request contains all the policies in PDP or not

errored_policies

No

whether policy-engine returned an error on the policy.

errored_scopes

No

array of string

on cartchup - list of policy scope_prefix values on wchich the policy-engine experienced an error other than not-found data.

latest_policies

Yes

dictionary of (policy_id -> DCAEPolicy object).

removed_policies

Yes

whether policy was removed from policy-engine.

scope_prefixes

No

array of string

on catchup - list of all scope_prefixes used by the policy-handler to retrieve the policies from policy-engine.

Errored_policies schema:

whether policy-engine returned an error on the policy. dictionary of (policy_id -> true). In example: replace additionalProp1,2,3 with policy_id1,2,3 values

Map of {“key”:”boolean”}

Latest_policies schema:

dictionary of (policy_id -> DCAEPolicy object). In example: replace additionalProp1,2,3 with policy_id1,2,3 values

Map of {“key”:”DCAEPolicy”}

Removed_policies schema:

whether policy was removed from policy-engine. dictionary of (policy_id -> true). In example: replace additionalProp1,2,3 with policy_id1,2,3 values

Map of {“key”:”boolean”}