Switch deprecated rabbit_notifier to rpc_notifier

The 'nova.notifier.rabbit_notifier' is deprecated since the F release of
Openstack in favor of 'nova.openstack.common.notifier.rabbit_notifier'.
The latter being deprecated since the G release of Openstack in favor of
'nova.openstack.common.notifier.rpc_notifier'.

Change-Id: I4bd5819fd8e1fc7c75b20273418d821a04c4858e
Puppet Forge release 2.0.0

  Marks the commit that the branch stable/grizzly and the 2.0.0 tag is
  cut from, adds the pkg directory to .gitignore to prevent accidental
  committing of Forge artifacts to the repository, and updates release
  notes.

Change-Id: I406eb52de27b95378e498d65deaab3991999bacd
Adds Config Drive Support

Previously, nova did not support forcing config_drive
and users would need to specify the config-drive=true
nova CLI option.  However, Horizon G release is unable
spawn instances using the config-drive=true CLI option.
This change provides the ability for users to fully leverage
config_drive for Nova deployments.

More information on Config Drive can be found here:
  http://http://docs.openstack.org/trunk/openstack-compute/admin/content/config-drive.html

The change implements a new force_config_drive parameter.
The parameter is set to false to maintain backwards compatability.

Change-Id: Ic2fc7c74134a041cba35b6fcd19b0716f7dc7a0e
Adds Memcached Support

Previously, nova could only use the in-process cache
to store information such as console-auth tokens.

This change allows nova to use memcached as a
backend to store information.

Defaults to false for backwards compatability and allow
nova to continue using the in-process cache.

Change-Id: If05f04127bc1ec849bec9fd74b2d8027108635e4
Add support for SQL idle timeout.

Previously, nova logged frequent
database-has-gone-away errors.

This patch adds a parameter that can configure
the sql_idle_timeout which can be decreased
to reduce these errors.

More information on this issue can be found here:
  https://bugs.launchpad.net/nova/+bug/1007027 for more details.

Change-Id: I1b0e2c763b3e5c9d3310bfd36ec0f54189e4996d
Use Puppet boolean for better consistency

This fixes puppet-lint warning "quoted boolean value".

Change-Id: I043f00e1aefd4a9368232c0a93ee3ad4f4aba634
Merge "Add support for SQL idle timeout."
Add support for Rabbit Clustering using a single IP address.

Previsouly, you could only cluster Rabbit Brokers
if you specified multiple rabbit_hosts.

This patch removes the requirement to have multiple Rabbit host addresses.
You can now front-end the Rabbit Brokers using a load-balancer to
use Rabbit Mirrored Queues (rabbit_ha_queues).

OpenStack services will connect to a single, Virtual IP address
for high-availability and scalability purposes.

Defaults to false for backwards compatability and to not
implement rabbit_ha_queues.

Change-Id: I7fd53fa9f3d5f6f8fa085bb103feea9b21baa16a
Adds support for RabbitMQ Clustering

Prior to this change, only a single RabbitMQ Broker
could be deployed by the nova::rabbitmq class.

This change implements the cluster_disk_nodes parameter
that can enable RabbitMQ clustering.

Defaults to false for backwards compatibility.

Change-Id: Iac2d04e855adb53fbb9fe2a23f8773a692162744
Merge "Adds Memcached Support"
Add missing pre_condition to nova::db::mysql tests

mysql::server was missing from pre_condition causing tests to fail.

Change-Id: I2cb93be62eac9fe8d71c8fd575780a13b0b27fd2
Merge "Adds support for RabbitMQ Clustering"
Merge "Adds Config Drive Support"
Update rabbitmq dependency

This commit updates the revision of rabbitmq to install for testing.

This revision was chosen for two reasons:

- later revisions remove the rabbitmq::server class
- later revisions do not support installing from your local distro (which
means you will likely get a version not tested with openstack)

Change-Id: Id73e7c9b43c25dbb6300c69565de2178b1a2462b
Pin rabbit and mysql to major version for fixtures

Previously, unit tests were using master for testing.

This commit changes them to use the newly created major version
branches. This allows us to backport bug fixes while we wait for
upstream to stabilize.

Change-Id: I43c03e7d77fba2f5153eac62a73e9f0a45ac5b33
Add html5 spice support

Change-Id: Idd23170df13bff7f78112fbe72f228bf84112af9
Adds Support for X-Forwarded-For HTTP Headers

Previously, the nova::api class did not support proxies and
load-balancers that use X-Forwarded-For Headers to identify the
originating IP address of requests.  This change implements the
use_forwarded_for parameter to enable/disable the ability for
Nova API to treat the X-Forwarded-For HTTP Header as the canonical
remote address.

Defaults to false for backwards compatibility and to disable
X-Forwarded-For Headers.

Change-Id: I3c7224bef1bfa4578ab2a298b05a24e46d618ce7
Update allowed_hosts conditional statement

In the origin nova::db::mysql, if the value of $allowed_hosts
contains or equals to $host, then puppet will complain duplicate
declaration error. This patch is aim to update the allowed_hosts
conditonal statement in nova::db::mysql.

There are two cases to pass $allowed_hosts to $real_allowed_hosts:

   - If $allowed_hosts is array,then remove $host from $allowed_hosts;
   - elsif $allowed_hosts is string and not equivalent to $host;

At last, if $real_allowed_hosts is not undef, then run
nova::db::mysql::host_access

Fix bug 1206444
Change-Id: If018321095e62e1196e0c2e6b623b30acb535020
Add nova::scheduler::filter for managing scheduler.filter

This patch is aim to add a new class to manage the filter
params in nova.scheduler.The most useable params are the
resource allocation ratio options.

Fix bug #1201062

Change-Id: Iab2c76fdd07768471f6bab61aaf8c7eff6445a22
Merge "Update allowed_hosts conditional statement"