Refactor Heat HA to wrappers

* Separate HA changes from upstream module

Related-Blueprint: pacemaker-improvements
Change-Id: I632ca630dbdf598ea5da0ff74ff73cc9b8f7aaf2
Sync puppetlabs rabbitmq module

v4.1.0 df52e345349c031167cf0cf3501314f3738b4949

Related blueprint merge-openstack-puppet-modules

Change-Id: I924a2a4489dc329fefbee859a4b4bde0b79e86d1
Signed-off-by: Bogdan Dobrelya <bdobrelia@mirantis.com>
Adapt rabbitmq module for Fuel

* Add dependency modules: garethr-erlang, nanliu-staging
* Add key_content param for rabbitmq
  (https://tickets.puppetlabs.com/browse/MODULES-1408)
* Reuse rabbitmq param package_gpg_key for apt key source as well
  (https://tickets.puppetlabs.com/browse/MODULES-1408)
* Add waits for rabbitmq providers
  (https://tickets.puppetlabs.com/browse/MODULES-1452)
* Add support for rabbimtq >1.0 <=4.1 for nova module and make it
  backward compatible (otherwise can't be contributed in upstream)
  (https://bugs.launchpad.net/puppet-nova/+bug/1386309)
* Fix ssl_listeners usage and specs for config_stomp (rabbitmq.config)
  (https://tickets.puppetlabs.com/browse/MODULES-1414)
* Adjust other existing rabbit class calls for new 4.1 rabbit module
* Remove deprecated usage of rabbitmq::server class and replace it
  to ::rabbitmq (cinder, murano, openstack, zabbix, mcollective,
  nailgun)
* Move rabbit.pub.key template from rabbitmq to openstack module
  (Fuel uses it for offline installation of rabbitmq)
* Move custom rabbit OCF file from nova to openstack and remove
  OS-aware services disable from rabbit's manifests
* Make pacemaker provider HA wrapper for rabbitmq service and move
  it to pacemaker_wrappers::rabbitmq
  (TODO move to extras and contribute the change)
* Fix linting
* Fix rabbitmq service name for zabbix mon
* Fix env_config for rabbitmq::nailgun, unify RABBIT_* env args.
* Use key_content, package_gpg_key, config_*, cluster_*,
  environment_* params to ensure the same rabbit configuration as
  before and make offline installation possible.
* Add cluster_partition_handling for nova::rabbitmq and
  openstack::controller
  (https://bugs.launchpad.net/puppet-nova/+bug/1386309)
* Del unused rabbitmq_node_ip_address and rename as node_ip_address
* Del unneeded rabbit_cluster due to it is being evaluated via
  passed rabbitmq_cluster_nodes as well
* Adjust debug log_levels for rabbit config as well
* For '$production !~ /docker/' case, remove custom init scripts
  for rabbit as non relevant anymore.
* TODO fix upstream bug with rspecs and submit as another patch
  (https://tickets.puppetlabs.com/browse/MODULES-1416)

Related blueprint merge-openstack-puppet-modules
Related-bug: #1377491

Change-Id: I6e631b975c5835d2d6f1984d5a070a45231fe9ab
Signed-off-by: Bogdan Dobrelya <bdobrelia@mirantis.com>