Ensure some properties update_allowed on port res

Adding update_allowed attribute for "name" and "device_id" properties on
the resource OS::Neutron::Port

Change-Id: I5fa9eab2493e7b60d1540fffc4f883ff362f4847
Closes-Bug: #1272207
Add a requirements file for contrib/rackspace/

This is so we have a common API for installing contrib plugins
from devstack.

Change-Id: Ib9bf2f7712be0e2112c9b44fc5579b25e609f2e2
See: https://review.openstack.org/#/c/71199/
de-hardcode adjustment type strings in autoscaling

The scaling policy adjustment types were hardcoded throughout
autoscaling.py: 'ExactCapacity', 'ChangeInCapacity', and
'PercentChangeInCapacity'. These are now constants at the module
level.

Change-Id: I0bd610e25bdba8ab13daf94b508934dca7e30c00
Replace stack_get_all_by_tenant with stack_get_all

Preparing the database for the unscoped list stacks, this removes
stack_get_all_by_tenant in favor of a single function that is tenant
aware.  This way, you can call stack_get_all(tenant_safe=False) and get
all stacks, regardless of the tenants.

tenant_safe defaults to True.

Implements: blueprint management-api (partial)
Change-Id: Ifdcfc44a3483a089ae803cfd044151262957674a
Evaluate lazy functions in autoscaling launch config

Instead of just copying an autoscaling launch config, first resolve any
lazily-evaluated functions by calling function.resolve(). This also has
the same effect as doing copy.deepcopy() for our purposes, so there is no
need to do both.

Change-Id: I5621c9bd1ef7686f5cf321e39e1a457f31d0783d
unit tests: Always resolve static functions

In some unit tests we were passing data to handle_update() that had not
been passed through Stack.resolve_static_data() and getting away with it
because it contained only runtime functions. With the move to only one
kind of function, this is no longer sufficient.

Change-Id: I08b968b2a83fd3c1f0af97e62ea4745c87c24652
Fix test_association_eip unit test

Change-Id: I8e8cb6642402b898003e7227914c409fa443a320
unit tests: Fix types in Fn::ResourceFacade tests

The Metadata and UpdatePolicy sections of a template contain maps, not
strings.

Change-Id: I09288cc87be8d9927142107ced7d6835897a5428
unit tests: Refactor to accomodate lazy evaluation

Do a complete resolution of all functions on each snippet, rather than
specifying individual function resolution methods to call.

Change-Id: I63f8a53d8a573a2e30bd9a8d901811367a570240
Replace function resolution with lazy evaluation

partial-blueprint function-plugins

Change-Id: I2e25c28dc8dec95bfd6e344623af0c06ec5af55c
Move HOT to a separate subpackage

The heat.engine.hot module is getting unruly; make it a package in
anticipation of splitting it up into separate modules.

Change-Id: I72b9351cddf0591e7e9acf10f869fbfa2c8efd9a
Provide access to the template version

Change-Id: I0413a23dea96d5db59d8bf30144437013b8d1ab1
Disallow Heat-only functions in CloudFormation templates

For CloudFormation templates (containing the AWSTemplateFormatVersion key),
allow only the built-in functions defined by CloudFormation. Templates
wishing to use Heat extensions should use the HeatTemplateFormatVersion
key instead.

Change-Id: Ie9aca05b88d5965ed1456396cc8ee763852fdee8
Move built-in functions to separate modules

partial-blueprint function-plugins

Change-Id: I6ee08f962935c07d292ab4f3f298fbb5e5176e8f
Remove Fn::FindInMap from HOT

Since HOT doesn't include a Mappings section, this function can't ever do
anything useful.

Change-Id: I669b5516e13927f2b9d28f15dd2d728f27fd4a43
Environment template guide enhancement

Added two notices, correct renaming to mapping.

Change-Id: I925cd27058f87539250970b022885d2eaddb4b63
Parse stack_adopt_data

The patch parses the argument passed to stack_create, and validates that
it's a dictionary, preventing engine failures in the future.

Closes-Bug: #1277106
Change-Id: I88cbf933ddac5776d5ffc0151bc7a0b296048777
Add systemd notification support to heat

This mirrors work done in other OpenStack projects
to add systemd notification support to signal that
a given process is ready to accept requests.

The heat-api, heat-api-cfn, heat-engine, and
heat-api-cloudwatch processes are all covered by
a new, single, 'onready' configuration file option.

Additionally, the sample configuration file has been
updated to match.

Implements: blueprint systemd-integration

Change-Id: I90d2b915e2568a65ed9ed78923c9982e19f9c948
Signed-off-by: Lon Hohberger <lhh@redhat.com>
Move refresh_server() to nova_utils

Move refresh_server() to nova_utils so Server, Instance, and
CloudServer can use it.

Change-Id: Ib97eead3930a6a7de66ffa6aa4453b2bab80b0c6
Add ability to create provider networks (vlan,flat).

Provider network map directly to an existing physical network in
a data center. It's routable by default. Neutron v2.0 API implements
it using Provider Networks Neutron API Extension. This is different
from tenant network(implemented by 'OS::Neutron::Net'resource) and has
different requirements.

This ('OS::Neutron::ProviderNet') resource leverages additional
attributes as listed below from Neutron API extension.

provider:network_type - Specifies the nature of the physical network
mapped to this network resource. Examples are flat and vlan.

provider:physical_network - Identifies the physical network on top of
which this network object is being implemented.

provider:segmentation_id - Identifies an isolated segment on the
physical network.

Change-Id: Ic085d13c866722b0e6ed9fd7a4f43dd92d5b1a0b
Implements: blueprint neutron-net-resource-add-provider-network