Jump to: navigation, search

Difference between revisions of "Heat/Blueprints/V2API"

(Draft Spec [WORKINPROGRESS])
Line 3: Line 3:
 
# Remove tenant ID from the endpoint path
 
# Remove tenant ID from the endpoint path
 
# Remove references to tenant in the request body (we can derive it from the context)
 
# Remove references to tenant in the request body (we can derive it from the context)
# Convert any remaining references of tenant to project
+
# Remove template_url from the request POST (always load the template in the client, like we do for provider templates?)
 +
# Pass parameters as dict/json?
  
 
=== Draft Spec [WORKINPROGRESS]===
 
=== Draft Spec [WORKINPROGRESS]===
  
POST v2/stacks <br />
+
'''POST v2/stacks <br />'''
Create a stack
+
Create a stack<br />
stack_name plain String The name of the stack to create.
+
:stack_name plain String The name of the stack to create.<br />
 
+
:template plain String A JSON template to instantiate.<br />
template plain String A JSON template to instantiate.
+
:environment plain String A JSON envionment for the stack.<br />
 
+
:files plain String A map of file names (Provider resource templates, as referenced in the environment) to JSON template bodies.<br />
environment plain String A JSON envionment for the stack.
+
:parameters    plain String A JSON map of parameter values<br />
 
+
:timeout_mins plain String The timeout for stack creation in minutes.<br />
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.
 
  
 
GET v2/stacks<br />
 
GET v2/stacks<br />
 
Get a list of active stacks.
 
Get a list of active stacks.
  
GET v2/stacks/{stack_name}
+
GET v2/stacks/{stack_name}<br />
 
Find the canonical URL for a stack with a given name.
 
Find the canonical URL for a stack with a given name.
  
GET v2/stacks/{stack_name}/resources
+
GET v2/stacks/{stack_name}/resources<br />
 
Find the canonical URL for the resource list of a stack with a given name.
 
Find the canonical URL for the resource list of a stack with a given name.
  
GET v2/stacks/{stack_name}/events
+
GET v2/stacks/{stack_name}/events<br />
 
Find the canonical URL for the event list of a stack with a given name.
 
Find the canonical URL for the event list of a stack with a given name.
  
GET v2/stacks/{stack_name}/{stack_id}
+
GET v2/stacks/{stack_name}/{stack_id}<br />
 
Get data about a stack.
 
Get data about a stack.
  
PUT v2/stacks/{stack_name}/{stack_id}
+
PUT v2/stacks/{stack_name}/{stack_id}<br />
 
Update a stack.
 
Update a stack.
  
DELETE v2/stacks/{stack_name}/{stack_id}
+
DELETE v2/stacks/{stack_name}/{stack_id}<br />
 
Delete a stack.
 
Delete a stack.
  
GET v2/stacks/{stack_name}/{stack_id}/events
+
GET v2/stacks/{stack_name}/{stack_id}/events<br />
 
Get a list of events for a stack.
 
Get a list of events for a stack.
  
GET v2/stacks/{stack_name}/{stack_id}/resources
+
GET v2/stacks/{stack_name}/{stack_id}/resources<br />
 
Get a list of resources in a stack.
 
Get a list of resources in a stack.
  
GET v2/stacks/{stack_name}/{stack_id}/resources/{resource_name}
+
GET v2/stacks/{stack_name}/{stack_id}/resources/{resource_name}<br />
 
Get data about a resource.
 
Get data about a resource.
  
GET v2/stacks/{stack_name}/{stack_id}/resources/{resource_name}/metadata
+
GET v2/stacks/{stack_name}/{stack_id}/resources/{resource_name}/metadata<br />
 
Get a resource's metadata.
 
Get a resource's metadata.
  
GET v2/stacks/{stack_name}/{stack_id}/resources/events
+
GET v2/stacks/{stack_name}/{stack_id}/resources/events<br />
 
Get a list of events for a stack resource.
 
Get a list of events for a stack resource.
  
GET v2/stacks/{stack_name}/{stack_id}/resources/events/{event_id}
+
GET v2/stacks/{stack_name}/{stack_id}/resources/events/{event_id}<br />
 
Get data about an event.
 
Get data about an event.
  
GET v2/stacks/{stack_name}/{stack_id}/template
+
GET v2/stacks/{stack_name}/{stack_id}/template<br />
 
Retrieve a stack's template.
 
Retrieve a stack's template.
  
POST v2/validate_template
+
POST v2/validate_template<br />
 
Validate a template.
 
Validate a template.
  
GET v2/resource_types
+
GET v2/resource_types<br />
 
Get a list of the template resource types that are supported.
 
Get a list of the template resource types that are supported.

Revision as of 14:54, 27 November 2013

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?

Draft Spec [WORKINPROGRESS]

POST v2/stacks
Create a stack

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

GET v2/stacks
Get a list of active stacks.

GET v2/stacks/{stack_name}
Find the canonical URL for a stack with a given name.

GET v2/stacks/{stack_name}/resources
Find the canonical URL for the resource list of a stack with a given name.

GET v2/stacks/{stack_name}/events
Find the canonical URL for the event list of a stack with a given name.

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

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

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

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

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

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

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

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

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

GET v2/stacks/{stack_name}/{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.