API du service d'orchestration v1

Le service d'orchestration permet de démarrer différentes topologies d'applications cloud basé sur des modèles. Ce service est aussi connu sur OpenStack sous le nom de Heat.

API versions

GET
/
List versions

Lists information about all Orchestration API versions.

 
Normal response codes
200
{
    "versions": [
        {
            "status": "CURRENT",
            "id": "v1.0",
            "links": [
                {
                    "href": "https://orchestration.fr1.cloudwatt.com/v1/",
                    "rel": "self"
                }
            ]
        }
    ]
}

This operation does not accept a request body.

Stacks

POST
/v1/​{tenant_id}​/stacks
Create stack

Creates a stack.

 
Normal response codes
201
Request parameters
Parameter Style Type Description
tenant_id URI String

The unique identifier of the tenant or account.

stack_name plain String

A name for the new stack. The value must be unique within a project. The name must start with an ASCII letter and can contain ASCII letters, digits, underscores, periods, and hyphens. Specifically, the name must match the regular expression ^[a-zA-Z][a-zA-Z0-9_.-]*$.

Deleting or abandoning a stack may not make the stack name available for reuse, or the ability to reuse a stack name could be delayed for an unspecified time.

template_url (Optional) plain String

A URI to the location containing the stack template to instantiate. See the description of the template property for information about the expected template content located at the URI.

This parameter is only required when the template parameter is omitted. The value is ignored if the template property is also specified.

template (Optional) plain String

The stack template to instantiate. This parameter is always provided as a string in the JSON request body. The content of the string is an Orchestration template, and may be provided in either YAML or JSON syntax. Complete details about the syntax of an Orchestration template are provided in the Heat Orchestration Template (HOT) specification.

This parameter is only required when the template_url parameter is omitted. If both are specified, this value overrides any value provided for template_url.

Response parameters
Parameter Style Type Description
stack_name plain String

The name of the stack to create.

template_url plain String

The URL of the template to instantiate. This value is ignored if the template is supplied inline.

template plain String

A JSON template to instantiate. This value takes precedence over the template URL if both are supplied.

environment plain String

A JSON environment for the stack.

files plain String

A map of file names (Provider resource templates, as referenced in the environment) to JSON template bodies.

param_name-n plain String

User-defined parameter names to pass to the template.

param_value-n plain String

User-defined parameter values to pass to the template.

timeout_mins plain String

The timeout for stack creation in minutes.

disable_rollback (Optional) plain String

Controls whether a failure during stack creation causes deletion of all previously-created resources in that stack. The default is True; a failure does not cause deletions.

{
    "disable_rollback": true,
    "stack_name": "teststack",
    "template": {
        "heat_template_version": "2013-05-23",
        "description": "Simple template to test heat commands",
        "parameters": {
            "flavor": {
                "default": "m1.tiny",
                "type": "string"
            }
        },
        "resources": {
            "hello_world": {
                "type":"OS::Nova::Server",
                "properties": {
                    "key_name": "heat_key",
                    "flavor": {
                        "get_param": "flavor"
                    },
                    "image": "40be8d1a-3eb9-40de-8abd-43237517384f",
                    "user_data": "#!/bin/bash -xv\necho \"hello world\" > /root/hello-world.txt\n"
                }
            }
        }
    }
}
{
    "stack": {
        "id": "3095aefc-09fb-4bc7-b1f0-f21a304e864c",
        "links": [
            {
                "href": "https://orchestration.fr1.cloudwatt.com/v1/eb1c63a4f77141548385f113a28f0f52/stacks/simple_stack/3095aefc-09fb-4bc7-b1f0-f21a304e864c",
                "rel": "self"
            }
        ]
    }
}
POST
/v1/​{tenant_id}​/stacks
Adopt stack

Creates a stack from existing resources.

 
Normal response codes
201
Request parameters
Parameter Style Type Description
tenant_id URI String

The unique identifier of the tenant or account.

stack_name plain String

A name for the new stack. The value must be unique within a project. The name must start with an ASCII letter and can contain ASCII letters, digits, underscores, periods, and hyphens. Specifically, the name must match the regular expression ^[a-zA-Z][a-zA-Z0-9_.-]*$.

Deleting or abandoning a stack may not make the stack name available for reuse, or the ability to reuse a stack name could be delayed for an unspecified time.

template_url (Optional) plain String

A URI to the location containing the stack template to instantiate. See the description of the template property for information about the expected template content located at the URI.

This parameter is only required when the template parameter is omitted. The value is ignored if the template property is also specified.

template (Optional) plain String

The stack template to instantiate. This parameter is always provided as a string in the JSON request body. The content of the string is an Orchestration template, and may be provided in either YAML or JSON syntax. Complete details about the syntax of an Orchestration template are provided in the Heat Orchestration Template (HOT) specification.

This parameter is only required when the template_url parameter is omitted. If both are specified, this value overrides any value provided for template_url.

environment plain String

A JSON environment for the stack.

files plain String

A map of file names (Provider resource templates, as referenced in the environment) for JSON template bodies.

param_name-n plain String

User-defined parameter names to pass to the template.

param_value-n plain String

User-defined parameter values to pass to the template.

timeout_mins plain String

The timeout for stack creation in minutes.

adopt_stack_data plain String

Existing resources data to adopt a stack. Data returned by abandon stack could be provided as adopt_stack_data.

disable_rollback (Optional) plain String

Enables or disables deletion of all stack resources when a stack creation fails. Default is True; all resources are not deleted when stack creation fails.

{
    "stack_name": "{stack_name}",
    "template_url": "{template_url}",
    "timeout_mins": "{timeout_mins}",
    "adopt_stack_data": "{adopt_stack_data}"
}
{
    "stack": {
        "id": "5333af0c-cc26-47ee-ac3d-8784cefafbd7",
        "links": [
            {
                "href": "https://orchestration.fr1.cloudwatt.com/v1/eb1c63a4f77141548385f113a28f0f52/stacks/simple_stack/5333af0c-cc26-47ee-ac3d-8784cefafbd7",
                "rel": "self"
            }
        ]
    }
}
GET
/v1/​{tenant_id}​/stacks
List stack data

Lists active stacks.

 
Normal response codes
200
Request parameters
Parameter Style Type Description
tenant_id URI String

The unique identifier of the tenant or account.

status (Optional) query String

Filters the stack list by the specified status. You can use this filter multiple times to filter by multiple statuses.

name (Optional) query String

Filters the stack list by the specified name.

limit (Optional) query String

Limits the number of stacks that appear on a page to this value. The typical pattern of limit and marker is to make an initial limited request and then to use the ID of the last stack from the response as the marker parameter in a subsequent limited request.

marker (Optional) query String

Specifies the ID of the last-seen stack. The typical pattern of limit and marker is to make an initial limited request and then to use the ID of the last stack from the response as the marker parameter in a subsequent limited request.

show_deleted (Optional) query String

Specifies whether to include deleted stacks in the stack list. Set to False by default, so that deleted stacks are not shown in the results of the GET request unless you set this value to True.

sort_keys (Optional) query String

Sorts the stack list by one of these attributes: name, status, created_at, or updated_at.

sort_dir (Optional) query String

The sort direction of the stack list. Either asc (ascending) or desc (descending).

{
    "stacks": [
        {
            "creation_time": "2014-06-03T20:59:46Z",
            "description": "sample stack",
            "id": "3095aefc-09fb-4bc7-b1f0-f21a304e864c",
            "links": [
                {
                    "href": "https://orchestration.fr1.cloudwatt.com/v1/eb1c63a4f77141548385f113a28f0f52/stacks/simple_stack/3095aefc-09fb-4bc7-b1f0-f21a304e864c",
                    "rel": "self"
                }
            ],
            "stack_name": "simple_stack",
            "stack_status": "CREATE_COMPLETE",
            "stack_status_reason": "Stack CREATE completed successfully",
            "updated_time": ""
        }
    ]
}
GET
/v1/​{tenant_id}​/stacks/​{stack_name}​
Find stack

Finds the canonical URL for a specified stack.

 

Also works with verbs other than GET, so you can perform PUT and DELETE operations on a current stack. Set your client to follow redirects. Note that when redirecting, the request method should not change, as defined in RFC2626. However, in many clients the default behavior is to change the method to GET when you receive a 302 because this behavior is ubiquitous in web browsers.

Normal response codes
302
Request parameters
Parameter Style Type Description
tenant_id URI String

The unique identifier of the tenant or account.

stack_name URI String

The name of a stack.

{
    "stack": {
        "capabilities": [],
        "creation_time": "2014-06-04T20:36:12Z",
        "description": "sample stack",
        "disable_rollback": true,
        "id": "5333af0c-cc26-47ee-ac3d-8784cefafbd7",
        "links": [
            {
                "href": "https://orchestration.fr1.cloudwatt.com/v1/eb1c63a4f77141548385f113a28f0f52/stacks/simple_stack/5333af0c-cc26-47ee-ac3d-8784cefafbd7",
                "rel": "self"
            }
        ],
        "notification_topics": [],
        "outputs": [],
        "parameters": {
            "OS::stack_id": "5333af0c-cc26-47ee-ac3d-8784cefafbd7",
            "OS::stack_name": "simple_stack"
        },
        "stack_name": "simple_stack",
        "stack_status": "CREATE_COMPLETE",
        "stack_status_reason": "Stack CREATE completed successfully",
        "template_description": "sample stack",
        "timeout_mins": null,
        "updated_time": null
    }
}

This operation does not accept a request body and does not return a response body.

GET
/v1/​{tenant_id}​/stacks/​{stack_name}​/​{stack_id}​
Show stack details

Shows details for a specified stack.

 
Normal response codes
200
Request parameters
Parameter Style Type Description
tenant_id URI String

The unique identifier of the tenant or account.

stack_name URI String

The name of a stack.

stack_id URI String

The unique identifier for a stack.

{
    "stack": {
        "capabilities": [],
        "creation_time": "2014-06-03T20:59:46Z",
        "description": "sample stack",
        "disable_rollback": "True",
        "id": "3095aefc-09fb-4bc7-b1f0-f21a304e864c",
        "links": [
            {
                "href": "https://orchestration.fr1.cloudwatt.com/v1/eb1c63a4f77141548385f113a28f0f52/stacks/simple_stack/3095aefc-09fb-4bc7-b1f0-f21a304e864c",
                "rel": "self"
            }
        ],
        "notification_topics": [],
        "outputs": [],
        "parameters": {
            "OS::stack_id": "3095aefc-09fb-4bc7-b1f0-f21a304e864c",
            "OS::stack_name": "simple_stack"
        },
        "stack_name": "simple_stack",
        "stack_status": "CREATE_COMPLETE",
        "stack_status_reason": "Stack CREATE completed successfully",
        "template_description": "sample stack",
        "timeout_mins": "",
        "updated_time": ""
    }
}

This operation does not accept a request body.

PUT
/v1/​{tenant_id}​/stacks/​{stack_name}​/​{stack_id}​
Update stack

Updates a specified stack.

 
Normal response codes
202
Request parameters
Parameter Style Type Description
tenant_id URI String

The unique identifier of the tenant or account.

stack_name URI String

The name of a stack.

stack_id URI String

The unique identifier for a stack.

template_url (Optional) plain String

A URI to the location containing the updated stack template. See the description of the template property for information about the expected template content located at the URI.

This parameter is only required when the template parameter is omitted. The value is ignored if the template property is also specified.

template (Optional) plain String

The updated stack template. This parameter is always provided as a string in the JSON request body. The content of the string is an Orchestration template, and may be provided in either YAML or JSON syntax. Complete details about the syntax of an Orchestration template are provided in the Heat Orchestration Template (HOT) specification.

This parameter is only required when the template_url parameter is omitted. If both are specified, this value overrides any value provided for template_url.

environment plain String

A JSON environment for the stack.

files plain String

A map of file names (Provider resource templates, as referenced in the environment) to JSON template bodies.

param_name-n plain String

User-defined parameter names to pass to the template.

param_value-n plain String

User-defined parameter values to pass to the template.

timeout_mins plain String

The timeout for stack creation in minutes.

{
    "template": {
        "heat_template_version": "2013-05-23",
        "description": "Create a simple stack",
        "parameters": {
            "flavor": {
                "default": "m1.tiny",
                "type": "string"
            }
        },
        "resources": {
            "hello_world": {
                "type": "OS::Nova::Server",
                "properties": {
                    "key_name": "heat_key",
                    "flavor": {
                        "get_param": "flavor"
                    },
                    "image": "40be8d1a-3eb9-40de-8abd-43237517384f",
                    "user_data": "#!/bin/bash -xv\necho \"hello world\" > /root/hello-world.txt\n"
                }
            }
        }
    },
    "parameters": {
        "flavor": "m1.small"
    }
}

This operation does not return a response body.

DELETE
/v1/​{tenant_id}​/stacks/​{stack_name}​/​{stack_id}​
Delete stack

Deletes a specified stack.

 
Normal response codes
204
Request parameters
Parameter Style Type Description
tenant_id URI String

The unique identifier of the tenant or account.

stack_name URI String

The name of a stack.

stack_id URI String

The unique identifier for a stack.

This operation does not accept a request body and does not return a response body.

POST
/v1/​{tenant_id}​/stacks/preview
Preview stack

Previews a stack.

 
Normal response codes
200
Request parameters
Parameter Style Type Description
tenant_id URI String

The unique identifier of the tenant or account.

stack_name plain String

A name for the preview stack. The value must be unique within a project. The name must start with an ASCII letter and can contain ASCII letters, digits, underscores, periods, and hyphens. Specifically, the name must match the regular expression ^[a-zA-Z][a-zA-Z0-9_.-]*$.

The stack name provided for the preview operation may be used for future calls to preview and/or create a stack.

template_url (Optional) plain String

A URI to the location containing the stack template to preview. See the description of the template property for information about the expected template content located at the URI.

This parameter is only required when the template parameter is omitted. The value is ignored if the template property is also specified.

template (Optional) plain String

The stack template to preview. This parameter is always provided as a string in the JSON request body. The content of the string is an Orchestration template, and may be provided in either YAML or JSON syntax. Complete details about the syntax of an Orchestration template are provided in the Heat Orchestration Template (HOT) specification.

This parameter is only required when the template_url parameter is omitted. If both are specified, this value overrides any value provided for template_url.

environment plain String

A JSON environment for the stack.

files plain String

A map of file names (Provider resource templates, as referenced in the environment) to JSON template bodies.

param_name-n plain String

User-defined parameter names to pass to the template.

param_value-n plain String

User-defined parameter values to pass to the template.

timeout_mins plain String

The timeout for stack creation in minutes. During a stack preview, this value is only used as part of stack validation.

disable_rollback (Optional) plain String

Controls whether a failure during stack creation causes deletion of all previously-created resources in that stack. This value is not used during a stack preview and only exists for symmetry with stack create.

Response parameters
Parameter Style Type Description
parent plain xsd:string

The Stack ID of the parent stack, if this is a nested stack.

{
    "disable_rollback": true,
    "stack_name": "teststack",
    "template": {
        "heat_template_version": "2013-05-23",
        "description": "Simple template to test heat commands",
        "parameters": {
            "flavor": {
                "default": "m1.tiny",
                "type": "string"
            }
        },
        "resources": {
            "hello_world": {
                "type":"OS::Nova::Server",
                "properties": {
                    "key_name": "heat_key",
                    "flavor": {
                        "get_param": "flavor"
                    },
                    "image": "40be8d1a-3eb9-40de-8abd-43237517384f",
                    "user_data": "#!/bin/bash -xv\necho \"hello world\" > /root/hello-world.txt\n"
                }
            }
        }
    }
}
{
    "stack": {
        "id": "None",
        "parent": null,
        "stack_name": "sample_stack",
        "description": "Sample template description.",
        "template_description": "Sample template description.",
        "timeout_mins": 60,
        "disable_rollback": true,
        "capabilities": [],
        "notification_topics": [],
        "creation_time": "2014-02-19T16:04:56Z",
        "updated_time": "2014-02-19T16:04:56Z",
        "stack_status": "_",
        "stack_status_reason": "",
        "parameters": {
            "AWS::Region": "ap-southeast-1",
            "AWS::StackId": "arn:openstack:heat::2e327e5e7fa94b25a44be66fd9d1ec4d:stacks/sample_stack/None",
            "AWS::StackName": "sample_stack",
            "DBName": "wordpress",
            "DBPassword": "******",
            "DBRootPassword": "******",
            "DBUsername": "******",
            "InstanceType": "m1.small",
            "KeyName": "heat_key",
            "LinuxDistribution": "F17"
        },
        "links": [
            {
                "href": "https://orchestration.fr1.cloudwatt.com/v1/2e327e5e7fa94b25a44be66fd9d1ec4d/stacks/sample_stack/None",
                "rel": "self"
            }
        ],
        "resources": [
            {
                "stack_name": "sample_stack",
                "resource_name": "WikiDatabase-1",
                "resource_type": "AWS::EC2::Instance",
                "description": "",
                "resource_action": "INIT",
                "resource_status": "COMPLETE",
                "resource_status_reason": "",
                "physical_resource_id": "",
                "required_by": [],
                "resource_identity": {
                    "path": "/resources/WikiDatabase-1",
                    "stack_id": "None",
                    "stack_name": "sample_stack",
                    "tenant": "2e327e5e7fa94b25a44be66fd9d1ec4d"
                },
                "stack_identity": {
                    "path": "",
                    "stack_id": "None",
                    "stack_name": "sample_stack",
                    "tenant": "2e327e5e7fa94b25a44be66fd9d1ec4d"
                },
                "updated_time": "2014-02-19T16:04:56Z",
                "metadata": {
                    "AWS::CloudFormation::Init": {
                        "config": {
                            "packages": {
                                "yum": {
                                    "httpd": [],
                                    "mysql": [],
                                    "mysql-server": [],
                                    "wordpress": []
                                }
                            },
                            "services": {
                                "systemd": {
                                    "httpd": {
                                        "enabled": "true",
                                        "ensureRunning": "true"
                                    },
                                    "mysqld": {
                                        "enabled": "true",
                                        "ensureRunning": "true"
                                    }
                                }
                            }
                        }
                    }
                }
            },
            {
                "other resources...": "other resources..."
            }
        ]
    }
}
DELETE
/v1/​{tenant_id}​/stacks/​{stack_name}​/​{stack_id}​/abandon
Abandon stack

Deletes a specified stack but leaves its resources intact, and returns data describing the stack and its resources.

 
Normal response codes
200
Request parameters
Parameter Style Type Description
tenant_id URI String

The unique identifier of the tenant or account.

stack_name URI String

The name of a stack.

stack_id URI String

The unique identifier for a stack.

{
    "status": "COMPLETE",
    "name": "g",
    "dry_run": true,
    "template": {
        "outputs": {
            "instance_ip": {
                "value": {
                    "str_replace": {
                        "params": {
                            "username": "ec2-user",
                            "hostname": {
                                "get_attr": [
                                    "server",
                                    "first_address"
                                ]
                            }
                        },
                        "template": "ssh username@hostname"
                    }
                }
            }
        },
        "heat_template_version": "2013-05-23",
        "resources": {
            "server": {
                "type": "OS::Nova::Server",
                "properties": {
                    "key_name": {
                        "get_param": "key_name"
                    },
                    "image": {
                        "get_param": "image"
                    },
                    "flavor": {
                        "get_param": "flavor"
                    }
                }
            }
        },
        "parameters": {
            "key_name": {
                "default": "heat_key",
                "type": "string"
            },
            "image": {
                "default": "fedora-amd64",
                "type": "string"
            },
            "flavor": {
                "default": "m1.small",
                "type": "string"
            }
        }
    },
    "action": "CREATE",
    "id": "16934ca3-40e0-4fb2-a289-a700662ec05a",
    "resources": {
        "server": {
            "status": "COMPLETE",
            "name": "server",
            "resource_data": {},
            "resource_id": "39d5dad7-7d7a-4cc8-bd84-851e9e2ff4ea",
            "action": "CREATE",
            "type": "OS::Nova::Server",
            "metadata": {}
        }
    }
}

This operation does not accept a request body.

POST
/v1/​{tenant_id}​/stacks/​{stack_name}​/​{stack_id}​/snapshots
Snapshot stack

Takes a snapshot of all the resources in the stack.

 
Normal response codes
200
Request parameters
Parameter Style Type Description
tenant_id URI String

The unique identifier of the tenant or account.

stack_name URI String

The name of a stack.

stack_id URI String

The unique identifier for a stack.

name plain String

The (optional) name of the snapshot.

{
    "id": "13c3a4b5-0585-440e-85a4-6f96b20e7a78",
    "name": "vol_snapshot",
    "status": "IN_PROGRESS",
    "status_reason": null,
    "data": null
}
GET
/v1/​{tenant_id}​/stacks/​{stack_name}​/​{stack_id}​/snapshots
List snapshots

List the snapshots of a stack.

 
Normal response codes
200
Request parameters
Parameter Style Type Description
tenant_id URI String

The unique identifier of the tenant or account.

stack_name URI String

The name of a stack.

stack_id URI String

The unique identifier for a stack.

{
    "snapshots": [
        {
            "id": "7c4e1ef4-bf1b-41ab-a0c8-ce01f4ffdfa1",
            "name": "vol_snapshot",
            "status": "IN_PROGRESS",
            "status_reason": null,
            "data": null
        }
    ]
}

This operation does not accept a request body.

GET
/v1/​{tenant_id}​/stacks/​{stack_name}​/​{stack_id}​/snapshots/​{snapshot_id}​
Show snapshot

Show the details of a snapshot.

 
Normal response codes
200
Request parameters
Parameter Style Type Description
tenant_id URI String

The unique identifier of the tenant or account.

stack_name URI String

The name of a stack.

stack_id URI String

The unique identifier for a stack.

snapshot_id URI String

The ID of a snapshot.

{
    "snapshot": {
        "id": "7c4e1ef4-bf1b-41ab-a0c8-ce01f4ffdfa1",
        "name": "vol_snapshot",
        "status": "COMPLETE",
        "status_reason": "Stack SNAPSHOT completed successfully",
        "data": {
            "status": "COMPLETE",
            "name": "stack_vol1",
            "stack_user_project_id": "fffa11067b1c48129ddfb78fba2bf09f",
            "environment": {
                "parameters": {},
                "resource_registry": {
                    "resources": {}
                }
            },
            "template": {
                "heat_template_version": "2013-05-23",
                "resources": {
                    "volume": {
                        "type": "OS::Cinder::Volume",
                        "properties": {
                            "size": 1
                        }
                    }
                }
            },
            "action": "SNAPSHOT",
            "project_id": "ecdb08032cd042179692a1b148f6565e",
            "id": "656452c2-e151-40da-8704-c844e69b485c",
            "resources": {
                "volume": {
                    "status": "COMPLETE",
                    "name": "volume",
                    "resource_data": {
                        "backup_id": "99108cf8-398f-461b-a043-bdceb7c9f572"
                    },
                    "resource_id": "3ab8cf79-807b-4c40-b743-0655f91e072f",
                    "action": "SNAPSHOT",
                    "type": "OS::Cinder::Volume",
                    "metadata": {}
                }
            }
        }
    }
}

This operation does not accept a request body.

POST
/v1/​{tenant_id}​/stacks/​{stack_name}​/​{stack_id}​/snapshots/​{snapshot_id}​
Restore snapshot

Restore a stack snapshot.

 
Normal response codes
202
Request parameters
Parameter Style Type Description
tenant_id URI String

The unique identifier of the tenant or account.

stack_name URI String

The name of a stack.

stack_id URI String

The unique identifier for a stack.

snapshot_id URI String

The ID of a snapshot.

This operation does not accept a request body and does not return a response body.

DELETE
/v1/​{tenant_id}​/stacks/​{stack_name}​/​{stack_id}​/snapshots/​{snapshot_id}​
Delete snapshot

Delete a stack snapshot.

 
Normal response codes
204
Request parameters
Parameter Style Type Description
tenant_id URI String

The unique identifier of the tenant or account.

stack_name URI String

The name of a stack.

stack_id URI String

The unique identifier for a stack.

snapshot_id URI String

The ID of a snapshot.

This operation does not accept a request body and does not return a response body.

Stack actions

Performs non-lifecycle operations on the stack. Specify the action in the request body.

POST
/v1/​{tenant_id}​/stacks/​{stack_name}​/​{stack_id}​/actions
Suspend stack

Suspends a stack.

 
Normal response codes
201
Request parameters
Parameter Style Type Description
tenant_id URI String

The unique identifier of the tenant or account.

stack_name URI String

The name of a stack.

stack_id URI String

The unique identifier for a stack.

suspend plain String

Specify the suspend action in the request body.

{
    "suspend": null
}

This operation does not return a response body.

POST
/v1/​{tenant_id}​/stacks/​{stack_name}​/​{stack_id}​/actions
Resume stack

Resumes a suspended stack.

 
Normal response codes
201
Request parameters
Parameter Style Type Description
tenant_id URI String

The unique identifier of the tenant or account.

stack_name URI String

The name of a stack.

stack_id URI String

The unique identifier for a stack.

resume plain String

Specify the resume action in the request body.

{
    "resume": null
}

This operation does not return a response body.

Stack resources

GET
/v1/​{tenant_id}​/stacks/​{stack_name}​/resources
Find stack resources

Finds the canonical URL for the resource list of a specified stack.

 
Normal response codes
302
Request parameters
Parameter Style Type Description
tenant_id URI String

The unique identifier of the tenant or account.

stack_name URI String

The name of a stack.

This operation does not accept a request body and does not return a response body.

GET
/v1/​{tenant_id}​/stacks/​{stack_name}​/​{stack_id}​/resources
List resources

Lists resources in a stack.

 
Normal response codes
200
Request parameters
Parameter Style Type Description
tenant_id URI String

The unique identifier of the tenant or account.

stack_name URI String

The name of a stack.

stack_id URI String

The unique identifier for a stack.

nested_depth (Optional) query String

Also includes resources from nested stacks up to nested_depth levels of recursion.

GET
/v1/​{tenant_id}​/stacks/​{stack_name}​/​{stack_id}​/resources/​{resource_name}​
Show resource data

Shows data for a specified resource.

 
Normal response codes
200
Request parameters
Parameter Style Type Description
tenant_id URI String

The unique identifier of the tenant or account.

stack_name URI String

The name of a stack.

stack_id URI String

The unique identifier for a stack.

resource_name URI String

The name of a resource in the stack.

This operation does not accept a request body.

GET
/v1/​{tenant_id}​/stacks/​{stack_name}​/​{stack_id}​/resources/​{resource_name}​/metadata
Show resource metadata

Shows metadata for a specified resource.

 
Normal response codes
200
Request parameters
Parameter Style Type Description
tenant_id URI String

The unique identifier of the tenant or account.

stack_name URI String

The name of a stack.

stack_id URI String

The unique identifier for a stack.

resource_name URI String

The name of a resource in the stack.

{
    "metadata": {
        "some_key": "some_value",
        "some_other_key": "some_other_value"
    }
}

This operation does not accept a request body.

POST
/v1/​{tenant_id}​/stacks/​{stack_name}​/​{stack_id}​/resources/​{resource_name}​/signal
Send a signal to a resource

Sends a signal to a specified resource.

 

Some resources cannot receive signals. If you send them a signal, they return a 400 error response code. The contents of the POST request body depends on the resource to which you send a signal.

Normal response codes
200
Request parameters
Parameter Style Type Description
tenant_id URI String

The unique identifier of the tenant or account.

stack_name URI String

The name of a stack.

stack_id URI String

The unique identifier for a stack.

resource_name URI String

The name of a resource in the stack.

This operation does not accept a request body and does not return a response body.

GET
/v1/​{tenant_id}​/resource_types
List resource types

Lists the supported template resource types.

 
Normal response codes
200
Request parameters
Parameter Style Type Description
tenant_id URI String

The unique identifier of the tenant or account.

This operation does not accept a request body.

GET
/v1/​{tenant_id}​/resource_types/​{type_name}​
Show resource schema

Shows the interface schema for a specified resource type.

 
Normal response codes
200
Request parameters
Parameter Style Type Description
tenant_id URI String

The unique identifier of the tenant or account.

type_name URI String

The name of a resource type.

{
    "attributes": {
        "an_attribute": {
            "description": "An attribute description ."
        }
    },
    "properties": {
        "a_property": {
            "update_allowed": false,
            "required": true,
            "type": "string",
            "description": "A resource description."
        }
    },
    "resource_type": "OS::Heat::AResourceName"
}

This operation does not accept a request body.

GET
/v1/​{tenant_id}​/resource_types/​{type_name}​/template
Show resource template

Shows the template representation for a specified resource type.

 
Normal response codes
200
Request parameters
Parameter Style Type Description
tenant_id URI String

The unique identifier of the tenant or account.

type_name URI String

The name of a resource type.

This operation does not accept a request body.

Stack events

GET
/v1/​{tenant_id}​/stacks/​{stack_name}​/events
Find stack events

Finds the canonical URL for the event list of a specified stack.

 
Normal response codes
302
Request parameters
Parameter Style Type Description
tenant_id URI String

The unique identifier of the tenant or account.

stack_name URI String

The name of a stack.

This operation does not accept a request body and does not return a response body.

GET
/v1/​{tenant_id}​/stacks/​{stack_name}​/​{stack_id}​/events
List stack events

Lists events for a specified stack.

 
Normal response codes
200
Request parameters
Parameter Style Type Description
tenant_id URI String

The unique identifier of the tenant or account.

stack_name URI String

The name of a stack.

stack_id URI String

The unique identifier for a stack.

resource_action (Optional) query String

Filters the event list by the specified resource_action. You can use this filter multiple times to filter by multiple resource actions: CREATE, DELETE, UPDATE, ROLLBACK, SUSPEND, RESUME or ADOPT.

resource_status (Optional) query String

Filters the event list by the specified resource_status. You can use this filter multiple times to filter by multiple resource statuses: IN_PROGRESS, COMPLETE or FAILED.

resource_name (Optional) query String

Filters the event list by the specified resource_name. You can use this filter multiple times to filter by multiple resource names.

resource_type (Optional) query String

Filters the event list by the specified resource_type. You can use this filter multiple times to filter by multiple resource types: OS::Nova::Server, OS::Cinder::Volume, OS::Neutron::Port, and so on.

limit (Optional) query String

Limits the number of events that appear on a page to this value. The typical pattern of limit and marker is to make an initial limited request and then to use the ID of the last event from the response as the marker parameter in a subsequent limited request.

marker (Optional) query String

Specifies the ID of the last-seen event. The typical pattern of limit and marker is to make an initial limited request and then to use the ID of the last event from the response as the marker parameter in a subsequent limited request.

sort_keys (Optional) query String

Sorts the event list by: resource_type or created_at.

sort_dir (Optional) query String

The sort direction of the event list. Which is asc (ascending) or desc (descending).

{
    "events": [
        {
            "resource_name": "port",
            "event_time": "2014-07-23T08:14:47Z",
            "links": [{
                "href": "https://orchestration.fr1.cloudwatt.com/v1/dc4b074874244f7693dd65583733a758/stacks/aws_port/db467ed1-50b5-4a3e-aeb1-396ff1d151c5/resources/port/events/474bfdf0-a450-46ec-a78a-0c7faa404073",
                "rel": "self"
            },
            {
                "href": "https://orchestration.fr1.cloudwatt.com/v1/dc4b074874244f7693dd65583733a758/stacks/aws_port/db467ed1-50b5-4a3e-aeb1-396ff1d151c5/resources/port",
                "rel": "resource"
            },
            {
                "href": "https://orchestration.fr1.cloudwatt.com/v1/dc4b074874244f7693dd65583733a758/stacks/aws_port/db467ed1-50b5-4a3e-aeb1-396ff1d151c5",
                "rel": "stack"
            }],
            "logical_resource_id": "port",
            "resource_status": "CREATE_FAILED",
            "resource_status_reason": "NotFound: Subnet f8a699d0-3537-429e-87a5-6b5a8d0c2bf0 could not be found",
            "physical_resource_id": null,
            "id": "474bfdf0-a450-46ec-a78a-0c7faa404073"
        },
        {
            "resource_name": "port",
            "event_time": "2014-07-23T08:14:47Z",
            "links": [{
                "href": "https://orchestration.fr1.cloudwatt.com/v1/dc4b074874244f7693dd65583733a758/stacks/aws_port/db467ed1-50b5-4a3e-aeb1-396ff1d151c5/resources/port/events/66fa95b6-e6f8-4f05-b1af-e828f5aba04c",
                "rel": "self"
            },
            {
                "href": "https://orchestration.fr1.cloudwatt.com/v1/dc4b074874244f7693dd65583733a758/stacks/aws_port/db467ed1-50b5-4a3e-aeb1-396ff1d151c5/resources/port",
                "rel": "resource"
            },
            {
                "href": "https://orchestration.fr1.cloudwatt.com/v1/dc4b074874244f7693dd65583733a758/stacks/aws_port/db467ed1-50b5-4a3e-aeb1-396ff1d151c5",
                "rel": "stack"
            }],
            "logical_resource_id": "port",
            "resource_status": "CREATE_IN_PROGRESS",
            "resource_status_reason": "state changed",
            "physical_resource_id": null,
            "id": "66fa95b6-e6f8-4f05-b1af-e828f5aba04c"
        }
    ]
}
GET
/v1/​{tenant_id}​/stacks/​{stack_name}​/​{stack_id}​/resources/​{resource_name}​/events
List resource events

Lists events for a specified stack resource.

 
Normal response codes
200
Request parameters
Parameter Style Type Description
tenant_id URI String

The unique identifier of the tenant or account.

stack_name URI String

The name of a stack.

stack_id URI String

The unique identifier for a stack.

resource_name URI String

The name of a resource in the stack.

resource_action (Optional) query String

Filters the event list by the specified resource_action. You can use this filter multiple times to filter by multiple resource actions: CREATE, DELETE, UPDATE, ROLLBACK, SUSPEND, RESUME or ADOPT.

resource_status (Optional) query String

Filters the event list by the specified resource_status. You can use this filter multiple times to filter by multiple resource statuses: IN_PROGRESS, COMPLETE or FAILED.

resource_name (Optional) query String

Filters the event list by the specified resource_name. You can use this filter multiple times to filter by multiple resource names.

resource_type (Optional) query String

Filters the event list by the specified resource_type. You can use this filter multiple times to filter by multiple resource types: OS::Nova::Server, OS::Cinder::Volume, OS::Neutron::Port, and so on.

limit (Optional) query String

Limits the number of events that appear on a page to this value. The typical pattern of limit and marker is to make an initial limited request and then to use the ID of the last event from the response as the marker parameter in a subsequent limited request.

marker (Optional) query String

Specifies the ID of the last-seen event. The typical pattern of limit and marker is to make an initial limited request and then to use the ID of the last event from the response as the marker parameter in a subsequent limited request.

sort_keys (Optional) query String

Sorts the event list by: resource_type or created_at.

sort_dir (Optional) query String

The sort direction of the event list. Which is asc (ascending) or desc (descending).

{
    "events": [
        {
            "resource_name": "port",
            "event_time": "2014-07-23T08:14:47Z",
            "links": [{
                "href": "https://orchestration.fr1.cloudwatt.com/v1/dc4b074874244f7693dd65583733a758/stacks/aws_port/db467ed1-50b5-4a3e-aeb1-396ff1d151c5/resources/port/events/474bfdf0-a450-46ec-a78a-0c7faa404073",
                "rel": "self"
            },
            {
                "href": "https://orchestration.fr1.cloudwatt.com/v1/dc4b074874244f7693dd65583733a758/stacks/aws_port/db467ed1-50b5-4a3e-aeb1-396ff1d151c5/resources/port",
                "rel": "resource"
            },
            {
                "href": "https://orchestration.fr1.cloudwatt.com/v1/dc4b074874244f7693dd65583733a758/stacks/aws_port/db467ed1-50b5-4a3e-aeb1-396ff1d151c5",
                "rel": "stack"
            }],
            "logical_resource_id": "port",
            "resource_status": "CREATE_FAILED",
            "resource_status_reason": "NotFound: Subnet f8a699d0-3537-429e-87a5-6b5a8d0c2bf0 could not be found",
            "physical_resource_id": null,
            "id": "474bfdf0-a450-46ec-a78a-0c7faa404073"
        },
        {
            "resource_name": "port",
            "event_time": "2014-07-23T08:14:47Z",
            "links": [{
                "href": "https://orchestration.fr1.cloudwatt.com/v1/dc4b074874244f7693dd65583733a758/stacks/aws_port/db467ed1-50b5-4a3e-aeb1-396ff1d151c5/resources/port/events/66fa95b6-e6f8-4f05-b1af-e828f5aba04c",
                "rel": "self"
            },
            {
                "href": "https://orchestration.fr1.cloudwatt.com/v1/dc4b074874244f7693dd65583733a758/stacks/aws_port/db467ed1-50b5-4a3e-aeb1-396ff1d151c5/resources/port",
                "rel": "resource"
            },
            {
                "href": "https://orchestration.fr1.cloudwatt.com/v1/dc4b074874244f7693dd65583733a758/stacks/aws_port/db467ed1-50b5-4a3e-aeb1-396ff1d151c5",
                "rel": "stack"
            }],
            "logical_resource_id": "port",
            "resource_status": "CREATE_IN_PROGRESS",
            "resource_status_reason": "state changed",
            "physical_resource_id": null,
            "id": "66fa95b6-e6f8-4f05-b1af-e828f5aba04c"
        }
    ]
}
GET
/v1/​{tenant_id}​/stacks/​{stack_name}​/​{stack_id}​/resources/​{resource_name}​/events/​{event_id}​
Show event details

Shows details for a specified event.

 
Normal response codes
200
Request parameters
Parameter Style Type Description
tenant_id URI String

The unique identifier of the tenant or account.

stack_name URI String

The name of a stack.

stack_id URI String

The unique identifier for a stack.

resource_name URI String

The name of a resource in the stack.

event_id URI String

The unique identifier of an event related to the resource in the stack.

This operation does not accept a request body.

Templates

GET
/v1/​{tenant_id}​/stacks/​{stack_name}​/​{stack_id}​/template
Get stack template

Gets a template for a specified stack.

 
Normal response codes
200
Request parameters
Parameter Style Type Description
tenant_id URI String

The unique identifier of the tenant or account.

stack_name URI String

The name of a stack.

stack_id URI String

The unique identifier for a stack.

This operation does not accept a request body.

POST
/v1/​{tenant_id}​/validate
Validate template

Validates a specified template.

 
Normal response codes
200
Request parameters
Parameter Style Type Description
tenant_id URI String

The unique identifier of the tenant or account.

template_url plain String

The URL of the template to instantiate. This value is ignored if the template is supplied inline.

template plain String

A JSON template to instantiate. This value takes precedence over the template URL if both are supplied.

Response parameters
Parameter Style Type Description
Description plain String

The description given in the template.

Parameters plain object

An object with all the input parameters defined in the template, indexed by parameter name.

ParameterGroups (Optional) plain list

A list of parameter groups, each containing a list of parameter names.

{
    "template_url": "{template_url}"
}
{
    "Description": "{description}",
    "Parameters": {
        "{parameter_name}": {
            "Label": "{label}",
            "Type": "{type}",
            "Description": "{description}",
            "NoEcho": "{true|false}"
        }
    },
    "ParameterGroups": [
        {
            "label": "{label}",
            "description": "{description}",
            "parameters": [
                "param_name-1",
                "param_name-2"
            ]
        }
    ]
}

Build info

GET
/v1/​{tenant_id}​/build_info
Show build information

Shows build information for a heat deployment.

 
Normal response codes
200
Request parameters
Parameter Style Type Description
tenant_id URI String

The unique identifier of the tenant or account.

{
    "api": {
        "revision": "{api_build_revision}"
    },
    "engine": {
        "revision": "{engine_build_revision}"
    }
}

This operation does not accept a request body.

Software configuration

POST
/v1/​{tenant_id}​/software_configs
Create configuration

Creates a software configuration.

 
Normal response codes
200
Request parameters
Parameter Style Type Description
tenant_id URI String

The unique identifier of the tenant or account.

config (Optional) plain String

Configuration script or manifest that defines which configuration is performed.

group (Optional) plain String

Namespace that groups this software configuration by when it is delivered to a server. This setting might imply which configuration tool performs the configuration.

name (Optional) plain String

The name of the configuration to create.

inputs (Optional) plain String

Schema that represents the inputs that this software configuration expects.

outputs (Optional) plain String

Schema that represents the outputs that this software configuration produces.

options (Optional) plain String

Map containing options specific to the configuration management tool used by this resource.

{
    "inputs": [
        {
            "default": null,
            "type": "String",
            "name": "foo",
            "description": null
        },
        {
            "default": null,
            "type": "String",
            "name": "bar",
            "description": null
        }
    ],
    "group": "script",
    "name": "a-config-we5zpvyu7b5o",
    "outputs": [
        {
            "type": "String",
            "name": "result",
            "error_output": false,
            "description": null
        }
    ],
    "config": "#!/bin/sh -x\necho \"Writing to /tmp/$bar\"\necho $foo > /tmp/$bar\necho -n \"The file /tmp/$bar contains `cat /tmp/$bar` for server $deploy_server_id during $deploy_action\" > $heat_outputs_path.result\necho \"Written to /tmp/$bar\"\necho \"Output to stderr\" 1>&2",
    "options": null
}
{
    "software_config": {
        "inputs": [
            {
                "default": null,
                "type": "String",
                "name": "foo",
                "description": null
            },
            {
                "default": null,
                "type": "String",
                "name": "bar",
                "description": null
            }
        ],
        "group": "script",
        "name": "a-config-we5zpvyu7b5o",
        "outputs": [
            {
                "type": "String",
                "name": "result",
                "error_output": false,
                "description": null
            }
        ],
        "options": null,
        "config": "#!/bin/sh -x\necho \"Writing to /tmp/$bar\"\necho $foo > /tmp/$bar\necho -n \"The file /tmp/$bar contains `cat /tmp/$bar` for server $deploy_server_id during $deploy_action\" > $heat_outputs_path.result\necho \"Written to /tmp/$bar\"\necho \"Output to stderr\" 1>&2",
        "id": "ddee7aca-aa32-4335-8265-d436b20db4f1"
    }
}
GET
/v1/​{tenant_id}​/software_configs/​{config_id}​
Show configuration details

Shows details for a software configuration.

 
Normal response codes
200
Request parameters
Parameter Style Type Description
tenant_id URI String

The unique identifier of the tenant or account.

config_id URI String

The ID of the configuration.

{
    "software_config": {
        "inputs": [
            {
                "default": null,
                "type": "String",
                "name": "foo",
                "description": null
            },
            {
                "default": null,
                "type": "String",
                "name": "bar",
                "description": null
            }
        ],
        "group": "script",
        "name": "a-config-we5zpvyu7b5o",
        "outputs": [
            {
                "type": "String",
                "name": "result",
                "error_output": false,
                "description": null
            }
        ],
        "options": null,
        "config": "#!/bin/sh -x\necho \"Writing to /tmp/$bar\"\necho $foo > /tmp/$bar\necho -n \"The file /tmp/$bar contains `cat /tmp/$bar` for server $deploy_server_id during $deploy_action\" > $heat_outputs_path.result\necho \"Written to /tmp/$bar\"\necho \"Output to stderr\" 1>&2",
        "id": "ddee7aca-aa32-4335-8265-d436b20db4f1"
    }
}

This operation does not accept a request body.

DELETE
/v1/​{tenant_id}​/software_configs/​{config_id}​
Delete config

Deletes a software configuration.

 
Normal response codes
204
Request parameters
Parameter Style Type Description
tenant_id URI String

The unique identifier of the tenant or account.

config_id URI String

The ID of the configuration.

This operation does not accept a request body and does not return a response body.

GET
/v1/​{tenant_id}​/software_deployments
List deployments

Lists all available software deployments.

 
Normal response codes
200
Request parameters
Parameter Style Type Description
tenant_id URI String

The unique identifier of the tenant or account.

{
    "software_deployments": [
        {
            "status": "COMPLETE",
            "server_id": "ec14c864-096e-4e27-bb8a-2c2b4dc6f3f5",
            "config_id": "8da95794-2ad9-4979-8ae5-739ce314c5cd",
            "output_values": {
                "deploy_stdout": "Writing to /tmp/barmy\nWritten to /tmp/barmy\n",
                "deploy_stderr": "+ echo Writing to /tmp/barmy\n+ echo fu\n+ cat /tmp/barmy\n+ echo -n The file /tmp/barmy contains fu for server ec14c864-096e-4e27-bb8a-2c2b4dc6f3f5 during CREATE\n+ echo Written to /tmp/barmy\n+ echo Output to stderr\nOutput to stderr\n",
                "deploy_status_code": 0,
                "result": "The file /tmp/barmy contains fu for server ec14c864-096e-4e27-bb8a-2c2b4dc6f3f5 during CREATE"
            },
            "input_values": null,
            "action": "CREATE",
            "status_reason": "Outputs received",
            "id": "ef422fa5-719a-419e-a10c-72e3a367b0b8"
        }
    ]
}

This operation does not accept a request body.

POST
/v1/​{tenant_id}​/software_deployments
Create deployment

Creates a software deployment.

 
Normal response codes
200
Request parameters
Parameter Style Type Description
tenant_id URI String

The unique identifier of the tenant or account.

config_id plain String

The ID of the software configuration resource that runs when applying to the server.

server_id plain String

The ID of the compute server to which the configuration applies.

action plain String

The current stack action that triggers this deployment resource.

stack_user_project_id (Optional) plain String

Authentication project ID which can also perform operations on this deployment.

status (Optional) plain String

Current status of the deployment, expected to be one of IN_PROGRESS, COMPLETE or FAILED.

status_reason (Optional) plain String

Reason for the last status change, which will be an error description for status FAILED.

{
    "status": "IN_PROGRESS",
    "server_id": "ec14c864-096e-4e27-bb8a-2c2b4dc6f3f5",
    "config_id": "8da95794-2ad9-4979-8ae5-739ce314c5cd",
    "stack_user_project_id": "c024bfada67845ddb17d2b0c0be8cd79",
    "action": "CREATE",
    "status_reason": "Deploy data available"
}
{
    "software_deployment": {
        "status": "IN_PROGRESS",
        "server_id": "ec14c864-096e-4e27-bb8a-2c2b4dc6f3f5",
        "config_id": "8da95794-2ad9-4979-8ae5-739ce314c5cd",
        "output_values": null,
        "input_values": null,
        "action": "CREATE",
        "status_reason": "Deploy data available",
        "id": "ef422fa5-719a-419e-a10c-72e3a367b0b8"
    }
}
GET
/v1/​{tenant_id}​/software_deployments/metadata/​{server_id}​
Show server configuration metadata

Shows the deployment configuration metadata for a specified server.

 

Use the group property to specify the configuration hook to which the pass the metadata item.

Normal response codes
200
Request parameters
Parameter Style Type Description
tenant_id URI String

The unique identifier of the tenant or account.

server_id URI String

The ID of the server for which to fetch configuration metadata.

{
    "metadata": [
        {
            "inputs": [
                {
                    "default": null,
                    "type": "String",
                    "name": "foo",
                    "value": "fooooo",
                    "description": null
                },
                {
                    "default": null,
                    "type": "String",
                    "name": "bar",
                    "value": "baaaaa",
                    "description": null
                },
                {
                    "type": "String",
                    "name": "deploy_server_id",
                    "value": "ec14c864-096e-4e27-bb8a-2c2b4dc6f3f5",
                    "description": "ID of the server being deployed to"
                },
                {
                    "type": "String",
                    "name": "deploy_action",
                    "value": "CREATE",
                    "description": "Name of the current action being deployed"
                },
                {
                    "type": "String",
                    "name": "deploy_stack_id",
                    "value": "a/9bd57090-8954-48ab-bab9-adf9e1ac70fc",
                    "description": "ID of the stack this deployment belongs to"
                },
                {
                    "type": "String",
                    "name": "deploy_resource_name",
                    "value": "deployment",
                    "description": "Name of this deployment resource in the stack"
                },
                {
                    "type": "String",
                    "name": "deploy_signal_id",
                    "value": "https://orchestration.fr1.cloudwatt.com/v1/signal/arn%3Aopenstack%3Aheat%3A%3Ae2a84fbdaeb047ae8da4b503f3b69f1f%3Astacks%2Fa%2F9bd57090-8954-48ab-bab9-adf9e1ac70fc%2Fresources%2Fdeployment?Timestamp=2014-03-19T20%3A30%3A59Z&SignatureMethod=HmacSHA256&AWSAccessKeyId=ca3571413e4a49998d580215517b3685&SignatureVersion=2&Signature=w6Iu%2BNbg86mqwSOUf1GLuKPO7KaD82PiGpL4ig9Q1l4%3D",
                    "description": "ID of signal to use for signalling output values"
                }
            ],
            "group": "script",
            "name": "a-config-we5zpvyu7b5o",
            "outputs": [
                {
                    "type": "String",
                    "name": "result",
                    "error_output": false,
                    "description": null
                }
            ],
            "options": null,
            "config": "#!/bin/sh -x\necho \"Writing to /tmp/$bar\"\necho $foo > /tmp/$bar\necho -n \"The file /tmp/$bar contains `cat /tmp/$bar` for server $deploy_server_id during $deploy_action\" > $heat_outputs_path.result\necho \"Written to /tmp/$bar\"\necho \"Output to stderr\" 1>&2",
            "id": "3d5ec2a8-7004-43b6-a7f6-542bdbe9d434"
        },
        {
            "inputs": [
                {
                    "default": null,
                    "type": "String",
                    "name": "foo",
                    "value": "fu",
                    "description": null
                },
                {
                    "default": null,
                    "type": "String",
                    "name": "bar",
                    "value": "barmy",
                    "description": null
                },
                {
                    "type": "String",
                    "name": "deploy_server_id",
                    "value": "ec14c864-096e-4e27-bb8a-2c2b4dc6f3f5",
                    "description": "ID of the server being deployed to"
                },
                {
                    "type": "String",
                    "name": "deploy_action",
                    "value": "CREATE",
                    "description": "Name of the current action being deployed"
                },
                {
                    "type": "String",
                    "name": "deploy_stack_id",
                    "value": "a/9bd57090-8954-48ab-bab9-adf9e1ac70fc",
                    "description": "ID of the stack this deployment belongs to"
                },
                {
                    "type": "String",
                    "name": "deploy_resource_name",
                    "value": "other_deployment",
                    "description": "Name of this deployment resource in the stack"
                },
                {
                    "type": "String",
                    "name": "deploy_signal_id",
                    "value": "https://orchestration.fr1.cloudwatt.com/v1/signal/arn%3Aopenstack%3Aheat%3A%3Ae2a84fbdaeb047ae8da4b503f3b69f1f%3Astacks%2Fa%2F9bd57090-8954-48ab-bab9-adf9e1ac70fc%2Fresources%2Fother_deployment?Timestamp=2014-03-19T20%3A30%3A59Z&SignatureMethod=HmacSHA256&AWSAccessKeyId=7b761482f8254946bcd3d5ccb36fe939&SignatureVersion=2&Signature=giMfv%2BhrAw6y%2FCMKQIQz2IhO5PkAj5%2BfP5YsL6rul3o%3D",
                    "description": "ID of signal to use for signalling output values"
                }
            ],
            "group": "script",
            "name": "a-config-we5zpvyu7b5o",
            "outputs": [
                {
                    "type": "String",
                    "name": "result",
                    "error_output": false,
                    "description": null
                }
            ],
            "options": null,
            "config": "#!/bin/sh -x\necho \"Writing to /tmp/$bar\"\necho $foo > /tmp/$bar\necho -n \"The file /tmp/$bar contains `cat /tmp/$bar` for server $deploy_server_id during $deploy_action\" > $heat_outputs_path.result\necho \"Written to /tmp/$bar\"\necho \"Output to stderr\" 1>&2",
            "id": "8da95794-2ad9-4979-8ae5-739ce314c5cd"
        }
    ]
}

This operation does not accept a request body.

GET
/v1/​{tenant_id}​/software_deployments/​{deployment_id}​
Show deployment details

Shows details for a specified software deployment.

 
Normal response codes
200
Request parameters
Parameter Style Type Description
tenant_id URI String

The unique identifier of the tenant or account.

deployment_id URI String

The ID of the deployment.

{
    "software_deployment": {
        "status": "IN_PROGRESS",
        "server_id": "ec14c864-096e-4e27-bb8a-2c2b4dc6f3f5",
        "config_id": "3d5ec2a8-7004-43b6-a7f6-542bdbe9d434",
        "output_values": null,
        "input_values": null,
        "action": "CREATE",
        "status_reason": "Deploy data available",
        "id": "06e87bcc-33a2-4bce-aebd-533e698282d3"
    }
}

This operation does not accept a request body.

PUT
/v1/​{tenant_id}​/software_deployments/​{deployment_id}​
Update deployment

Updates a specified software deployment.

 
Normal response codes
200
Request parameters
Parameter Style Type Description
tenant_id URI String

The unique identifier of the tenant or account.

deployment_id URI String

The ID of the deployment.

config_id plain String

ID of the software configuration resource to run when applying to the server. This ID might not be the same configuration ID with which the deployment was created because ephemeral configurations are created throughout the life cycle of the deployment.

action plain String

Current stack action this deployment resource is being triggered in.

status (Optional) plain String

Current status of the deployment, expected to be one of IN_PROGRESS, COMPLETE or FAILED.

status_reason (Optional) plain String

Reason for the last status change, which will be an error description for status FAILED.

output_values (Optional) plain String

Map of output values for the deployment, as signalled from the server.

{
    "status": "COMPLETE",
    "output_values": {
        "deploy_stdout": "Writing to /tmp/baaaaa\nWritten to /tmp/baaaaa\n",
        "deploy_stderr": "+ echo Writing to /tmp/baaaaa\n+ echo fooooo\n+ cat /tmp/baaaaa\n+ echo -n The file /tmp/baaaaa contains fooooo for server ec14c864-096e-4e27-bb8a-2c2b4dc6f3f5 during CREATE\n+ echo Written to /tmp/baaaaa\n+ echo Output to stderr\nOutput to stderr\n",
        "deploy_status_code": 0,
        "result": "The file /tmp/baaaaa contains fooooo for server ec14c864-096e-4e27-bb8a-2c2b4dc6f3f5 during CREATE"
    },
    "status_reason": "Outputs received"
}
{
    "software_deployment": {
        "status": "COMPLETE",
        "server_id": "ec14c864-096e-4e27-bb8a-2c2b4dc6f3f5",
        "config_id": "3d5ec2a8-7004-43b6-a7f6-542bdbe9d434",
        "output_values": {
            "deploy_stdout": "Writing to /tmp/baaaaa\nWritten to /tmp/baaaaa\n",
            "deploy_stderr": "+ echo Writing to /tmp/baaaaa\n+ echo fooooo\n+ cat /tmp/baaaaa\n+ echo -n The file /tmp/baaaaa contains fooooo for server ec14c864-096e-4e27-bb8a-2c2b4dc6f3f5 during CREATE\n+ echo Written to /tmp/baaaaa\n+ echo Output to stderr\nOutput to stderr\n",
            "deploy_status_code": 0,
            "result": "The file /tmp/baaaaa contains fooooo for server ec14c864-096e-4e27-bb8a-2c2b4dc6f3f5 during CREATE"
        },
        "input_values": null,
        "action": "CREATE",
        "status_reason": "Outputs received",
        "id": "06e87bcc-33a2-4bce-aebd-533e698282d3"
    }
}
DELETE
/v1/​{tenant_id}​/software_deployments/​{deployment_id}​
Delete deployment

Deletes a specified software deployment.

 
Normal response codes
204
Request parameters
Parameter Style Type Description
tenant_id URI String

The unique identifier of the tenant or account.

deployment_id URI String

The ID of the deployment.

This operation does not accept a request body and does not return a response body.