Jump to: navigation, search

Heat/Blueprints/V2API

< Heat
Revision as of 18:09, 24 July 2014 by Shardy (talk | contribs)

Area to start documenting changes required for a Heat v2 API:

  1. Remove tenant ID from the endpoint path
  2. Remove references to tenant in the request body (we can derive it from the context)
  3. Remove template_url from the request POST (always load the template in the client, like we do for provider templates?)
  4. Pass parameters as dict/json?
  5. Report resource/stack state in a more intelligent way (separate action/status for a start)
  6. Fix return status codes e.g for asynchronous operations return 202 instead of a mixture of 200/201/204


TODO(asalkeld):

  1. add actions (pause/resume/converge)
  2. add signal hooks
  3. add metadata update
  4. remove events (rely on notifications instead)

Draft Spec [WORKINPROGRESS]

POST v2/stacks
Create a stack

stack_name: The name of the stack to create.
template: A JSON template to instantiate.
environment: A JSON envionment for the stack.
files: A map of file names (Provider resource templates, as referenced in the environment) to JSON template bodies.
parameters: A JSON map of parameter values
timeout_mins: The timeout for stack creation in minutes.

GET v2/stacks
Get a list of active stacks.

Allow getting a stack by name via filter parameters, e.g
GET v2/stacks?name=foo
ref https://review.openstack.org/#/c/57313/

GET v2/stacks/{stack_id}
Get data about a stack.

PUT v2/stacks/{stack_id}
Update a stack.

DELETE v2/stacks/{stack_id}
Delete a stack.

GET v2/stacks/{stack_id}/events
Get a list of events for a stack.

GET v2/stacks/{stack_id}/resources
Get a list of resources in a stack.

GET v2/stacks/{stack_id}/resources/{resource_name}
Get data about a resource.

GET v2/stacks/{stack_id}/resources/{resource_name}/metadata
Get a resource's metadata.

GET v2/stacks/{stack_id}/resources/events
Get a list of events for a stack resource.

GET v2/stacks/{stack_id}/resources/events/{event_id}
Get data about an event.

GET v2/stacks/{stack_id}/template
Retrieve a stack's template.

POST v2/validate_template
Validate a template.

GET v2/resource_types
Get a list of the template resource types that are supported. Response should include resource support status and resource version(s).