RETIRED, further work has moved to Debian project infrastructure
4e0538e214
If a user creates a stack without the heat_stack_owner role, we try to create the trust and then fail somewhat cryptically by letting the NotFound exception from keystoneclient get exposed to the user. This is confusing, as it doesn't even mention the role name (only the ID). Instead, we can catch the NotFound and propagate a MissingCredential error, with a list of the role names we need to create the trust. This error is already correctly mapped to a bad request in the native API, but not in the CFN exception map, so add it there to avoid 500 errors if this happens via heat-api-cfn. Now, if a user lacks the required role, they will see an error like: Missing required credential: roles ['heat_stack_owner'] Which is hopefully somewhat clearer. Change-Id: Ief4956bdb76ddf0cdb0a642721b63c63b0d007d8 Closes-Bug: #1306665 |
||
---|---|---|
bin | ||
contrib | ||
doc | ||
etc/heat | ||
functionaltests | ||
heat | ||
rally-scenarios | ||
tools | ||
.coveragerc | ||
.gitignore | ||
.gitreview | ||
.testr.conf | ||
babel.cfg | ||
CONTRIBUTING.rst | ||
HACKING.rst | ||
install.sh | ||
LICENSE | ||
MANIFEST.in | ||
openstack-common.conf | ||
pylintrc | ||
README.rst | ||
requirements.txt | ||
run_tests.sh | ||
setup.cfg | ||
setup.py | ||
test-requirements.txt | ||
tox.ini | ||
uninstall.sh |
HEAT
Heat is a service to orchestrate multiple composite cloud applications using templates, through both an OpenStack-native ReST API and a CloudFormation-compatible Query API.
Why heat? It makes the clouds rise and keeps them there.
Getting Started
If you'd like to run from the master branch, you can clone the git repo:
git clone git@github.com:openstack/heat.git
- Wiki: http://wiki.openstack.org/Heat
- Developer docs: http://docs.openstack.org/developer/heat
Python client
https://github.com/openstack/python-heatclient
References
- http://docs.amazonwebservices.com/AWSCloudFormation/latest/APIReference/API_CreateStack.html
- http://docs.amazonwebservices.com/AWSCloudFormation/latest/UserGuide/create-stack.html
- http://docs.amazonwebservices.com/AWSCloudFormation/latest/UserGuide/aws-template-resource-type-ref.html
- http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=tosca
We have integration with
- https://github.com/openstack/python-novaclient (instance)
- https://github.com/openstack/python-keystoneclient (auth)
- https://github.com/openstack/python-swiftclient (s3)
- https://github.com/openstack/python-neutronclient (networking)
- https://github.com/openstack/python-ceilometerclient (metering)
- https://github.com/openstack/python-cinderclient (storage service)
- https://github.com/openstack/python-glanceclient (image service)
- https://github.com/openstack/python-troveclient (database as a Service)