42 Commits

Author SHA1 Message Date
Yanis Guenane
0e850373a8 Add tag to package and service resources
In order to be able to take an action after all the packages of the
module have been installed/updated or all the services have been
started/restarted, we set a 'heat-package' and 'heat-service' tag
for each package and service of this module.

At the moment, there is a generic openstack tag that is not specific
enough if one wants to take action upon a single module change.

Use case :

If an action needs to be taken after all the packages have been
installed or updated : Package <| tag == 'heat-package' |> -> X

Change-Id: I38a6b422054dbf0fceacf6b7e329dbb3cb0fa9cb
2015-07-22 20:22:24 +02:00
Ryan S. Brown
46cda612de Expose RPC response timeout as a puppet parameter.
For some deployments (multi-DC) being able to increase the response
timeout for heat RPC's is vital.

Change-Id: Ib6a61e01ba9879315f9283c4fae34873ce89d338
2015-07-10 12:26:46 -04:00
Jenkins
26bd032c4d Merge "Add support for RabbitMQ connection heartbeat" 2015-07-10 15:25:12 +00:00
Matt Fischer
c06b8cbc34 Support setting instance_user to an empty string
This deals with the case where you don't want heat setting instance_user
for you. See
http://lists.openstack.org/pipermail/openstack-dev/2015-June/068333.html
for details.

Closes-Bug: #1472053

Change-Id: I9e8be0dd50709d271fc81683770c78380724e405
2015-07-07 19:24:18 -06:00
Mike Dorman
dde3c5134f Add support for RabbitMQ connection heartbeat
Kilo oslo.messaging added heartbeating support for RabbitMQ
connections.  This patch adds support for this in Puppet modules
by managing the oslo_messaging_rabbit/heartbeat_timeout_threshold
and oslo_messaging_rabbit/heartbeat_rate settings.

Change-Id: I19c82aacf83e5a4f7c9c5fbf76527f9713d6e846
Closes-bug: 1467667
2015-07-07 11:26:39 -06:00
Gael Chamoulaud
456355e470 Move rabbit/kombu settings to oslo_messaging_rabbit section
Kilo oslo-messaging deprecates rabbit/kombu settings in the
DEFAULT section.

Move these settings to proper oslo_messaging_rabbit section.

Change-Id: I8cd5fb7b8074e0acd62535238fe73a4bb9869a5d
Closes-bug: 1444161
Signed-off-by: Gael Chamoulaud <gchamoul@redhat.com>
2015-06-08 17:26:46 +00:00
Clayton O'Neill
bfa9f0aa3e Run db_sync when heat-common is upgraded
The other packages appear to already have this, but heat-common isn't
triggering a db sync, and at least on Ubuntu, if this package is
upgraded first, all the others get pulled in also.  When that happens,
Puppet doesn't trigger a notification for the other packages and the db
sync is never run.

Change-Id: I454220ee6c501c416b60564fd3b1f00fdecfd296
2015-06-06 12:35:03 +00:00
Jenkins
9a851c5f6c Merge "Tag all Heat packages" 2015-03-30 13:26:42 +00:00
Gael Chamoulaud
73df608936 Tag all Heat packages
Some users wish to override the default package provider by their own.

Tag all packages with the 'openstack' to allow mass resource attributes
override using resource collectors.

Closes-bug: #1391209

Change-Id: I09e54700438894e22d29605fec51bb056baf4050
Signed-off-by: Gael Chamoulaud <gchamoul@redhat.com>
2015-03-28 19:07:21 +01:00
Gael Chamoulaud
e0bf023733 Fix Rspec 3.x new is_expected.[to|to_not| keywords
Some 'should' keyword have been forgotten during the rspec2.x to
rspec3.x updates. This patch fixes that!

Change-Id: I4acffbbfb051fce7f48d401812fce2c1afcc137d
Signed-off-by: Gael Chamoulaud <gchamoul@redhat.com>
2015-03-27 17:38:34 +01:00
Matt Fischer
dc047a0f01 Add support for stack_adopt and move stack_abandon
This adds support for enable_stack_adopt and moves
enable_stack_abandon out of the engine manifest and into the main one.

Change-Id: I93629f2b2173a767669fec0b17107a69dbf759de
2015-03-27 10:23:39 -06:00
Jenkins
bfa013771b Merge "spec: updates for rspec-puppet 2.x and rspec 3.x" 2015-03-11 17:13:55 +00:00
Sebastien Badia
d7e9fe0e7a spec: updates for rspec-puppet 2.x and rspec 3.x
This patch aim to update our specs test in order to work with the
rspec-puppet release 2.0.0, in the mean time, we update rspec syntax
in order to be prepared for rspec 3.x move.

In details:
  * Use shared_examples "a Puppet::Error" for puppet::error tests
  * Convert 'should' keyword to 'is_expected.to' (prepare rspec 3.x)
  * Fix spec tests for rspec-puppet 2.0.0
  * Upgrade and pin rspec-puppet from 1.0.1 to 2.0.0
  * Clean Gemfile (remove over-specificication of runtime deps of puppetlabs_spec_helper)
  * Remove un-used puppet-lint (name_containing_dash config)

Change-Id: I1b82e4f6ec0b1bbf52e86c5d127413a26277ae8c
Card: https://trello.com/c/eHXc1Ryd/4-investigate-the-necessary-change-to-be-rspec-puppet-2-0-0-compliant
2015-03-02 13:54:32 +01:00
Matt Fischer
4276170148 Set instance_user in heat.
If you leave it commented out, heat defaults it to ec2-user which can be
confusing to users. This allows you to set the value.

Change-Id: I44fef59d3ed1f7851d8504855a7ae0d5460fdc84
2015-03-01 19:00:27 -07:00
Jenkins
4fd2ce2d82 Merge "Add support for identity_uri." 2015-03-02 01:37:09 +00:00
Matt Fischer
ab27c58659 Add support for identity_uri.
This patch adds the ability to set a new identity_uri parameter.
It also deprecates the old auth_host, auth_port, auth_protocol,
and auth_admin_prefix parameters. Logic is in place so that
users of the deprecated settings should have a smooth upgrade
process and get deprecation warnings until they adopt the
new settings.

Change-Id: I833bbac9338553daf88459a311f14a3788d90dfb
2015-02-27 10:25:24 -07:00
Matt Fischer
02df1c7974 Mark heat's keystone password as secret
Change-Id: I7d4e0fe452566435eb67d3d9ed6b3849021ba690
2015-02-24 13:22:50 -07:00
Matt Fischer
d24f0290e0 Support region_name for Heat
In environments with more than one region, heat will just pick the first
endpoints it sees in the catalog unless the region is specified. This
allows the ability to tell Heat which region to use

Change-Id: I795315fee8955d9c1c29e273852f6dad3b777019
2015-02-04 19:59:55 -07:00
Saju Madhavan
9bbf4df6ef added option to configure flavor in heat.conf
Option to Specify Authentication method.
Set flavor to 'standalone' to get Heat to work with a remote OpenStack.
Defaults to 'keystone'

Change-Id: I5ff596b6418d71726714ec69211352dd5f4b8db2
Implements: blueprint option-to-configure-flavor-in-heat.conf
2015-02-02 14:23:53 +05:30
Lukas Bezdicka
c231da8de6 Switch to TLSv1 as SSLv3 is considered insecure and is disabled by default
Rabbitmq won't talk to us anymore if we try to use SSLv3 as it disabled
support for SSLv3. Openstack components use python's openssl
implementation which does not support TLSv1.1 and TLSv1.2 yet so we
just switch to TLSv1. Support for newer TLS should come with python
2.7.9+

Closes-Bug: #1409667
Change-Id: I949421cd092a31eab3ef7f2194c4da3a9dbac818
2015-01-12 16:42:17 +00:00
Gael Chamoulaud
27f39cd68e Deprecate sql_connection in favor of database_connection
Change-Id: I2ca6118448c93b5b5779e815169c5198fbdafdcd
Signed-off-by: Gael Chamoulaud <gchamoul@redhat.com>
2014-10-28 18:18:21 +01:00
Colleen Murphy
a95a9435dc Migrate mysql backend to use openstacklib::db::mysql
Implements: blueprint commmon-openstack-database-resource
Change-Id: I71e1bf084139524e41276e5cbd7f5be02d07e825
2014-09-08 16:34:10 -07:00
Mike Dorman
a4a20a9012 Makes kombu_ssl_* parameters optional when rabbit_use_ssl => true
The kombu_ssl_* parameters should not be required when rabbit_use_ssl => true
Rather, rabbit_use_ssl must be set to true if the kombu_ssl_* parameters are
used.

Change-Id: If9cceb4f4090c8b39079aa1aae2f53640c9ac0ff
Closes-Bug: 1356083
2014-09-04 14:17:11 -06:00
Jenkins
0d857a063b Merge "Use 2.2 as the default mysql_module" 2014-07-29 23:03:50 +00:00
Sebastien Badia
6a89a44f9d Hide secrets from puppet logs
Currently secrets like rabbit_password or admin_password are laked

puppet logs when changed. This commit changes heat_*_config and
heat_*_ini types adding a new parameter that triggers obfuscation
the values in puppet logs.

Change-Id: Ib06a0f967dd5d5f8cc1c4dc7257c0e196786e8ae
Closes-Bug: #1328448
2014-07-22 13:13:23 +00:00
Soren Hansen
4b2e57b4f0 Use 2.2 as the default mysql_module
Change-Id: Ib82957123932f4795b9826dab7b88c572ffe57d9
2014-07-16 18:46:00 +05:30
Yanis Guenane
85a98e13e8 Fail when ssl parameters are missing and rabbit_use_ssl is set to true
This commit causes the run to fail is rabbit_use_ssl parameter is set
to true but the ssl related parameters remains undef.

Change-Id: If621de7ed4432c4ef79d18cee4da822ebadb0a4f
2014-05-16 12:22:38 -04:00
Jenkins
2847d4d42f Merge "Add SSL parameters for rabbit" 2014-04-17 13:15:56 +00:00
Mark T. Voelker
1cd2e6404f Fix outdated DB connection information
In Icehouse, the format of heat.conf has changed to be more consistent
with other projects.  What used to be:
[DEFAULT]
sql_connection= ...

Is now:

[database]
connection= ...

This patch fixes the heat module so that it correctly populates
database connection information.

Change-Id: I6edc9c7b58dcd5569f20f202b9b665431c7b0845
Closes-Bug: #1308868
2014-04-17 02:24:05 -04:00
Benedikt Trefzer
217567fbee Add SSL parameters for rabbit
Adds the following parameters:
 * kombu_ssl_ca_certs option
 * kombu_ssl_certfile option
 * kombu_ssl_keyfile option
 * kombu_ssl_version option

Change-Id: I226ee5c6964cf9bbb13b14b70aa2139b20858788
2014-04-09 09:55:31 +02:00
Pierre RAMBAUD
7b69e0354e Added the option to define rabbitmq's queues as "durable"
Add the capability to use durable queues in amqp.

Change-Id: I2a35731d9760e2665f49a8637defda728af89246
2014-03-24 10:14:11 +01:00
Michael Chapman
074675b1ac Add support for puppetlabs-mysql 2.2
Puppetlabs-mysql has been rewritten to be much
cleaner. This patch adds a new parameter for the
heat mysql and init classes allowing users to use
the new version. Previous behavior will continue
as normal when using the old version (0.9)

Change-Id: I4d268d793740c31493acd5999dd3f8501cc1d281
2014-03-18 16:08:56 +11:00
danehans
4a5a5849a5 Aligns Keystone auth_uri with other OpenStack Services
Previously, auth_uri had a default address of 127.0.0.1 as did
the keystone_host parameter.  This caused problems for users that
use a different IP address for Keystone.  This can cause issues
where the keystone host is an actual address and the auth_uri still
uses 127.0.0.1.  Additionally, this patch will allow the auth_uri
behavior to be consistent with the other OpenStack modules.

Conflicts:

        spec/classes/heat_init_spec.rb

Change-Id: I81fc650606c419d25a2e13dc2093c8e4538fb997
2014-03-07 15:53:20 +00:00
danehans
49f066e637 Adds Support for Database Idle Timeout
Other OS services support the idle_timeout parameter that is
needed for reaping stale sql connections.  This is important for
clustered databases.

Change-Id: Ia297410e61f246b2f5b4788b5d24961f070aa087
2014-03-04 22:03:49 +00:00
danehans
768a4e593e Fixes the EC2 Auth Token Settings
Previously, the module would create a keystone_ec2_uri parameter
in heat.conf.  This flag does not exist within heat.conf.
Additionally, the auth_uri within [ec2authtoken] would use the
incorrect auth uri (standard Keystone URL instead of the EC2
URI).

Change-Id: I61bcf59c60617db07eb3fad3e3e23e8fd6ab9eff
2014-02-26 17:39:55 +00:00
Sebastien Badia
603fb20795 Allow log_dir to be set to false in order to disable file logging
This commit allows a user to disable logging to a directory (for
example if syslog is enabled, in order to not log twice).

Change-Id: I814bf8199fcf57f976e95b9bbf872478694b9d3e
Closes-bug: #1282296
2014-02-19 23:59:55 +01:00
Sebastien Badia
0f263b4580 Add syslog support to heat module
Change-Id: I5507147b71874149972635ed974fc96724441bb1
2014-01-29 17:01:06 +01:00
Mathieu Gagné
c2c62387b3 Remove use of deprecated include_class matcher
include_class is deprecated since rspec-puppet 1.0.0.
contain_class should be used instead.

Closes-bug: #1263617
Change-Id: I0915f843e9fb35e94651498064ae12d00f6360d3
2013-12-23 02:31:56 -05:00
Benedikt Trefzer
51816260b9 replace rabbit_virtualhost parameter
rabbit_virtualhost is wrong, replace it
with rabbit_virtual_host.

Change-Id: I393cf9f57e060c1440658a8264bbe6b9d7924e3e
2013-11-21 17:46:45 +01:00
Ian Wienand
c6fb1f0e82 Remove heat::db class
heat::db is different to every other project's puppet modules.  All of
nova, glance, keystone and cinder take a "sql_connection" parameter to
the "main" (project name) class.

This removes heat::db and adds it into init.pp to maintain parity with
those projects.  This seems more logical than adding it to engine.pp;
since heat-engine is only using the DEFAULT section of heat.conf.

Change-Id: I4584cdb12d1f9e624228e6ee34b4bcfbf649a12e
2013-09-09 15:03:16 +10:00
Francesco Vollero
99b9286ef5 Added support for QPID in Heat
This patch is adding the support for Apache Qpid in Heat.

Change-Id: I0ea4bd403e09426b0173a1aa3493d5c7c23fc688
Signed-off-by: Francesco Vollero <fvollero@redhat.com>
2013-08-08 16:38:11 +02:00
Emilien Macchi
03ef6a7b7f Update the module for new config file method
Since we have now an only config file (heat.conf) with this patch:
https://review.openstack.org/#/c/36476/

This patch updates the module and delete old configuration files
support and add a test.

Also, I fixed some tab issues in manifests.
Fix bug #1207858

Change-Id: If3d044e2581156fa5ce4de19f5c740328efa0aa8
2013-08-06 23:28:31 +02:00