Bump to v5

Heat version 4 is now released, on to version 5.

Change-Id: I6e679f0d202e25bcaa0620b2a858a2910f4d4f33
Signed-off-by: Ian Main <imain@redhat.com>
heat API : Add missing Response wrappers

It's not clear from the AWS API docs, but all responses
should be wrapped in ActionNameResponse tags.
ref #125

Change-Id: I25f3860f30b7313ce63019e96d1da4e370552ed6
Signed-off-by: Steven Hardy <shardy@redhat.com>
Merge "Bump to v5"
Teach CheckedSchema to do nested schemas

Change-Id: Ie321fcded8c826ca98c15078d9a545f283d25510
Signed-off-by: Angus Salkeld <asalkeld@redhat.com>
Add the Fn::GetAZs() intrinsic function.

This just returns 'nova' right now.

Change-Id: I5449123b912da0f2aaca8a16aee78d391db033dd
Signed-off-by: Angus Salkeld <asalkeld@redhat.com>
Add the loadbalancer resource.

Some initial simplifications:
- only one Listener
- static (only use Instances)
- only http (no tcp or ssl)

Ref #164
Change-Id: Iaac06eff83a5c43049adc95a98ebe632e17b490c
Signed-off-by: Angus Salkeld <asalkeld@redhat.com>
Switch .gitreview to use OpenStack

Change-Id: I47f98c5b68bffb0f547a1ca95e745dd2c4665dad
Use unittest assert*() methods instead of assert keyword

This gives much more useful messages when something fails

Change-Id: Ibdf22996e674beef6edabfd3f7ef7d2213b6f26c
Signed-off-by: Zane Bitter <zbitter@redhat.com>
Make LoadBalancer a subclass of a nested stack

This avoids duplicating the code for dealing with the nested stack
instance.

Change-Id: Iaeb96f6184cc39677be81bb5619c1fc3e3c9a2a2
Signed-off-by: Zane Bitter <zbitter@redhat.com>
Remove parsed template from database

It is no longer used since we now store the parameters and can recreate the
parsed template from the raw template.

Change-Id: Id725bcde7b30ce33d122ccf9c6d5c571f7d754da
Signed-off-by: Zane Bitter <zbitter@redhat.com>
Delete user creds from DB when no longer required

The user credentials are only for a particular stack and should be deleted
when that stack is deleted.

Fixes #162.

Change-Id: Id5d1f101df17ede1843e4f2fca51903c956667ca
Signed-off-by: Zane Bitter <zbitter@redhat.com>
Don't store the metadata server address in the Stack

It is basically a global piece of data, so there is nothing to be gained by
dragging some extra state around with us everywhere.

Change-Id: I50ba7391f258dc7d9b1e186f1618fb140e15b26e
Signed-off-by: Zane Bitter <zbitter@redhat.com>
Make Stacks the owners of their own DB representation

Change the way that Stack objects are initialised, so that they know how to
load and store themselves in the database (they were already updating their
own data, but the actual creation was being done externally). This
consolidates a lot of existing Stack database creation code (in the
manager, nested stacks and unit tests) into one place.

Also, split the template and parameter handling out into separate classes,
and pass these through the constructor for easier testing.

Change-Id: I65bec175191713d0a4a6aa1d3d5442a1b64042f8
Signed-off-by: Zane Bitter <zbitter@redhat.com>
Use a consistent stack ID

Generate the StackId field of various API responses in the same place, so
it is consistent and can be easily modified later.

Change-Id: I09a3e170b5825533d8cf9c7dbf08a0ef6700a682
Signed-off-by: Zane Bitter <zbitter@redhat.com>
Add Metadata to detailed Resource output

Change-Id: I492b9a0a190a905ca5c8597c7236ad1d130a5b77
Signed-off-by: Zane Bitter <zbitter@redhat.com>
Store the context in the resources

It's a pain to have to look it up in the stack every time

Change-Id: I655260aafd17bc17b5895f5b53d79b20aa8eecbb
Signed-off-by: Zane Bitter <zbitter@redhat.com>
Add more unit tests for the engine API

Verify the following endpoints:
 - list_stack_resources
 - describe_stack_resources
 - describe_stack_resource

Additionally, check for presence of the correct output keys from the
following endpoints:
 - list_stacks
 - show_stack

Note that some tests are commented out because they are currently failing.
This will be fixed in a future patch.

Change-Id: I1c8c46283c1217789e3d4dea7aeac11c991bcef4
Signed-off-by: Zane Bitter <zbitter@redhat.com>
heat : add heat-boto test client

Add initial version of the heat cli tool which uses boto
- revised following review comments to remove jeos/cfn paths
ref #92

Change-Id: I61b5815b250f3b01d33844ff46dd1612000d51fd
Signed-off-by: Steven Hardy <shardy@redhat.com>
heat API : Implement API specific exceptions

Implement HeatAPIException and subclasses, which will return error
responses serialized in the correct AWS API format when thrown
ref #125

Change-Id: I9039f181ee64ed59445667f50545dc6481973cb2
Signed-off-by: Steven Hardy <shardy@redhat.com>
heat API : Convert API to use HeatAPIException subclasses

Covert API to use HeatAPIException subclasses, instead of
plain webob exceptions, which cannot be correctly serialized
by the wsgi controller, and map engine errors to API exceptions
so the raw engine exception is not propogated to the user.
ref #125
fixes #150

Change-Id: I164c71e12ed29f40ad67188b645ca7ad2fa1fee8
Signed-off-by: Steven Hardy <shardy@redhat.com>