Implement native signal API

Add a new signal action on resource to emulate CFN signal API.

blueprint native-signal-api

Change-Id: I33e1bd72f208d39c7a87ad8e3de63f94a5536022
Allow an in-progress stack to be deleted

Since multi-engine was merged, it is no longer possible to delete a
stack which is create/update IN_PROGRESS.  This re-introduces that
ability.

If the current engine has an active stack lock, stop any active
threads, remove the lock, and delete the stack.  If another engine has
the active stack lock, send an RPC command to the remote engine to stop
any active threads and remove the lock, and then delete the stack
locally.  If no engines have the an active stack lock, acquire the lock
and delete the stack.

Closes-Bug: #1262012
Change-Id: I188e43ad88b98da7d1a08269189aaefa57c36df2
Delete fixed_ips if it's empty list

If neutronclient gets fixed_ips = [], created port will not get assigned
ip address. In current patch fixed_ips will be deleted from properties,
if it is empty list. So created port always gets assigned ip address.

Change-Id: I8344180b07ffb61019264f44d23aa400aa1ace31
Closes-bug: #1271597
Do not log error on software config/deployment NotFound

This change decorates software config methods so that errors
are not logged if a NotFound is raised on a software config/deployment
operation.

An error should not be logged as any user can fetch a resource
that does not exist. There are most likely other service methods
which require this decorator too.

Change-Id: I39cd52925006bddccf55ca1a9f43e0ab37e27b14
Add unit tests for heat.scaling.template

These are some independent unit tests for the resource_templates
function in heat.scaling.template.

Change-Id: I847b77aab1d95152e4e5dbe29956de71824bc42b
Implements: partial blueprint as-lib
Adding option in config to specify region name

This patch allows to specify region name which will be used to
get appropriate API endpoints for services from Keystone.

Change-Id: Iaca5987da447fdb77cd8f2253e6543bb7df022c4
Closes-Bug: #1213291
Closes-Bug: #1147530
Rename Marconi plugin package

Package and Module names shouldn't have dashes in them, since it
makes it harder to import them (i.e. one cannot use ``import
dashed-module``).

Partial-Bug: #1271226
Change-Id: I2d3674753bd3fcef284c94911cff3cf9fa22d316
Rename docker_plugin to docker

Renaming docker to get consistency across contrib package names

Change-Id: Ia02daa4537cf9103b505c9ee4658c014f38d3f1b
Partial-Bug: #1271226
Imported Translations from Transifex

Change-Id: Ifcab6f21a14a723408282ec2ce4ecc915980c4bd
Add parser.Stack support for stack_domain_projects

Add a DB column to store the project created to contain instance-users
associated with resources in the stack.  To avoid the overhead of creating
a project for all stacks (and associated test impact), we introduce a
setter which can be used by InstanceUser resources to set the project
ID, such that it's cached at the stack level (no need to look up the ID
in keystone every time) and so the stack can clean up the project when it
is deleted.

Change-Id: Iea3624afbc4d746f46cd58d50e7b238bc847fa49
blueprint: instance-users
heat_keystoneclient raise error if stack user role missing

Modify error path when the required role is not found, so we raise
an error and do not create the user if the required role is not
found.

Change-Id: Idbc8cc5821af8aca1442051a0a6c37e03b2522b9
Closes-Bug: #1277478
heat_keystoneclient add create_stack_domain_user function

Add function which creates users in the heat domain user domain,
in the project specified (which is expected to be in the correct
domain, ie created via create_stack_domain_project)

This is similar to create_stack_user, which is expected to be removed
when all resources have been migrated to domain users.

Change-Id: Ie0a6ce039058a574ff0ddc3ed69e0e9cc9ad4db4
blueprint: instance-users
heat_keystoneclient add delete_stack_domain_user function

Add function which deletes a user in the heat domain user domain,
in the project specified.  Since we're deleting via the admin client
add some sanity checks to ensure we're deleting a user in the
correct domain/project.

Change-Id: I6a29164147db0d660e6a0cab9b27ea0fc55d99ba
blueprint: instance-users
heat_keystoneclient add create_stack_domain_user_keypair

Add function which creates an ec2 keypair associated with a stack
domain user

Change-Id: I0d6cde48a7569fcebb6fc8dcac075281c99a69db
blueprint: instance-users
Add Rackspace resources summary to docs

Add information regarding general use case, dependencies, and README
info for Rackspace resources in the contrib docs.

Closes-Bug: #1271226
Change-Id: I3a57cd5f1e72663bd283d96c07949ff6de23df3a
Merge "Implement native signal API"
Merge "Delete fixed_ips if it's empty list"
Merge "Do not log error on software config/deployment NotFound"
Merge "Add Rackspace resources summary to docs"
Merge "Add unit tests for heat.scaling.template"