heat/contrib/rackspace
ChangBo Guo(gcb) 381a84a4e8 Remove usage of parameter enforce_type
Oslo.config deprecated parameter enforce_type and change its default
value to True in Ifa552de0a994e40388cbc9f7dbaa55700ca276b0. Remove
the usage of it to avoid DeprecationWarning: "Using the 'enforce_type'
argument is deprecated in version '4.0' and will be removed in version
'5.0': The argument enforce_type has changed its default value to True
and then will be removed completely."

Change-Id: I91b0f0a52b5ce8654702510eed76d5dea8cc8fe4
Related--Bug: #1517839
2017-05-08 17:55:32 +08:00
..
heat_keystoneclient_v2 Remove usage of parameter enforce_type 2017-05-08 17:55:32 +08:00
rackspace Remove usage of parameter enforce_type 2017-05-08 17:55:32 +08:00
README.md Fix a small nit of docs 2017-01-04 11:17:21 +00:00
requirements.txt Support RackConnect V3 LB in Rackspace AutoScaleGroup Resource 2015-12-17 15:07:49 -06:00
setup.cfg Remove py26 support 2017-01-23 05:52:41 +00:00
setup.py Use setuptools to install contrib plugins 2014-08-13 20:12:29 -05:00

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 working user_data and Metadata. This is deprecated and should be replaced with OS::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/engine/clients/os/keystone/heat_keystoneclient.py will instantiate the plugin KeystoneClientV2 class and use that instead of the default client in heat/engine/clients/os/keystone/heat_keystoneclient.py.