7c389dd2a5
in heat/contrib/rackspace/rackspace/tests/test_auto_scale.py:270: mock nova and glance client methods to satisfy contraints, contraints should be constraints in heat/heat_integrationtests/functional/test_resource_group.py:51 triggering validation of nested resource custom contraints, contraints should be constraints in heat/heat/common/exception.py:258: """Keep this for AWS compatiblility.""" compatiblility should be compatibility in heat/heat/engine/resources/openstack/ceilometer/alarm.py:349: 1) so we don't create watch tasks unneccessarly , unneccessarly should be unnecessarily in heat/heat/engine/resources/openstack/neutron/vpnservice.py:462: The Internet Key Exchange policy identifyies the authentication and , identifyies should be identifies in heat/heat/engine/resources/openstack/nova/server.py:1426: if 'security_groups' present for the server and explict 'port' , explict should be explicit in heat/heat/engine/service.py:182: releasing the lock to avoid race condtitions. condtitions should be conditions in heat/heat/engine/sync_point.py:134: don't aggresively spin; induce some sleep, aggresively should be aggressively in heat/heat/tests/openstack/heat/test_software_deployment.py:889: Test bug 1332355, where details contains a translateable message, translateable should be translatable in heat/heat/tests/test_environment.py:596: make sure the parent env is uneffected, uneffected should be unaffected in heat/heat/engine/resources/openstack/nova/server.py:472: 'ignorning it or by replacing the entire server.'), ignorning should be ignoring in heat/contrib/rackspace/rackspace/resources/cloud_server.py:104: 'retained for compatability.'), compatability should be compatibility in heat/heat/engine/stack.py:1258: " ID %(trvsl_id)s, not trigerring rollback."), trigerring should be triggering. Change-Id: Ic4ddb65dbfaf61751a330b853780689209f9f4b5 Closes-Bug: #1595376 |
||
---|---|---|
.. | ||
heat_keystoneclient_v2 | ||
rackspace | ||
README.md | ||
requirements.txt | ||
setup.cfg | ||
setup.py |
Heat resources for working with the Rackspace Cloud
The resources and configuration in this module are for using Heat with the Rackspace Cloud. These resources either allow using Rackspace services that don't have equivalent services in OpenStack or account for differences between a generic OpenStack deployment and Rackspace Cloud.
This package also includes a Keystone V2 compatible client plugin, that can be used in place of the default client for clouds running older versions of Keystone.
Installation
1. Install the Rackspace plugins in Heat
NOTE: These instructions assume the value of heat.conf plugin_dirs includes the default directory /usr/lib/heat.
-
To install the plugin, from this directory run:
sudo python ./setup.py install
-
(Optional) If you want to enable the Keystone V2 client plugin, set the
keystone_backend
option to`heat.engine.plugins.heat_keystoneclient_v2.client.KeystoneClientV2`
2. Restart heat
Only the process "heat-engine" needs to be restarted to load the newly installed plugin.
Resources
The following resources are provided for compatibility:
Rackspace::Cloud::Server
:
Provide compatibility with
OS::Nova::Server
and allow for workinguser_data
andMetadata
. This is deprecated and should be replaced withOS::Nova::Server
once service compatibility is implemented by Rackspace.
Rackspace::Cloud::LoadBalancer
:
Use the Rackspace Cloud Loadbalancer service; not compatible with
OS::Neutron::LoadBalancer
.
Usage
Templates
Configuration
Heat Keystone V2
Note that some forward compatibility decisions had to be made for the Keystone V2 client plugin:
- Stack domain users are created as users on the stack owner's tenant rather than the stack's domain
- Trusts are not supported
How it works
By setting the keystone_backend
option, the KeystoneBackend class in
heat/common/heat_keystoneclient.py
will instantiate the plugin
KeystoneClientV2 class and use that instead of the default client in
heat/common/heat_keystoneclient.py
.