Commit Graph

145 Commits

Author SHA1 Message Date
Alex Schultz
83fb92f505 Move rspec-puppet-facts to spec helper
This change updates the module to use the rspec-puppet-facts as defined
in the puppet-openstack_spec_helper.

Change-Id: I9c1ce41a719a25654f5e8658b65bf629cdc3fa83
2016-09-30 13:33:16 -06:00
Jenkins
8f9f696708 Merge "Configure keystone authtoken options" 2016-08-25 22:07:10 +00:00
Matt Fischer
e2729f0fa8 Policy support for Trove
Trove is adding policy support, since it's not yet released (landing in
Newton) this code will not auto-include the policy class as other
modules do. That will be done later after all distros support a Trove
version with a policy.json file.

Change-Id: Iae8f8bf341ae17190676c524444600e660420e46
2016-08-24 11:17:23 -04:00
Alexey Deryugin
b51e789701 Configure keystone authtoken options
In trove::api, use keystone::resource::authtoken to configure
keystone_authtoken section in trove.conf, with all parameters required
to configure keystonemiddleware.
This patch will allow to deploy Trove to use Keystone v3
authentification.

Some deprecations:
- trove::api::keystone_tenant is deprecated in favor of trove::keystone::authtoken::project_name.
- trove::api::keystone_user is deprecated in favor of trove::keystone::authtoken::username.
- trove::api::keystone_password is deprecated in favor of trove::keystone::authtoken::password.
- trove::api::identity_uri is deprecated in favor of trove::keystone::authtoken::auth_url.
- trove::api::auth_uri is deprecated in favor of trove::keystone::authtoken::auth_uri.

Change-Id: I808ebda1c4ec3a5b2ed294eb8af4eecafa861051
Closes-Bug: #1604463
2016-08-23 22:08:04 -03:00
Jenkins
96c3ac9fdc Merge "Add missing keystone service and endpoint tests" 2016-06-29 22:55:03 +00:00
Jenkins
b3df42b803 Merge "Add transport_url parameters for oslo.messaging" 2016-06-28 15:33:25 +00:00
Shaik Apsar
d24a11c35d Option to specify the trove guestagent log file.
Change-Id: Ifaf124933bca6b64d6a2d5225a5f67e58058e26f
Closes-Bug: #1506835
2016-06-28 13:21:59 +00:00
Andrew Smith
7cb103c17f Add transport_url parameters for oslo.messaging
This commit adds the transport_url parameters for oslo.messaging. The
url is of the form:

  transport://user:pass@host1:port[,hostN:portN]/virtual_host

Where the transport scheme specifies the rpc or notification backend
as one of rabbit, amqp, zmq, etc. Oslo.messaging is deprecating the
host, port, and auth configuration options [1]. All drivers will get
these options via the transport_url.

This patch:
* use oslo::messaging::default resource
* use oslo::messaging::notifications resource
* add parameters for transport_url(s)
* correct config file for amqp backend
* update spec tests
* add feature release note

[1] https://review.openstack.org/#/c/317285/

Change-Id: I8d0132f23aa05ed267ff2d88bce61ce9f20160f5
2016-06-28 13:17:26 +00:00
Yuan Xiaohua
5dc2d3359e Add Users/DBs related parameters to guestagent class
This patch is aim to add following params in guestagent class:
  - root_grant
  - root_grant_option
  - default_password_length

Change-Id: Iaeed4194b7b9ae895c3a04eb2ed2991fa6984636
Closes-Bug: #1570281
2016-06-21 14:29:26 +08:00
Emilien Macchi
b3e9387285 beaker: disable taskmanager on Xenial
It's not working correctly for now, let's disable it, like we did in
puppet-openstack-integration.

Change-Id: Icfe0da6ed635d82e0504860dbf978035fc983286
2016-06-13 10:23:22 -04:00
Emilien Macchi
98f9434696 Add nodepool-xenial.yml file
To run Beaker jobs in OpenStack Infra, we need this file so we run tests
on the right nodeset

Change-Id: Ib52e196bfb830ed57d297103cad1c34ca9628ecb
2016-06-10 13:34:02 -04:00
Venkata Mahesh Jonnalagadda
c90a8440e1 Add missing keystone service and endpoint tests
Add missing keystone service and endpoint tests during
user and user_role parameters are disabled.

Change-Id: I3cbdec036130634cfffbe162de9c117f48568b85
Closes-Bug: #1587881
2016-06-10 03:36:57 -04:00
Jenkins
a3a2b33c68 Merge "Change default service_name to 'trove'" 2016-06-09 17:16:17 +00:00
Shaik Apsar
6c9f6eba03 Allow guestagent to use unique rabbit_use_ssl param.
In some environments, Trove guests will talk to rabbit via
external VIP using SSL connection and trove services will
communicate to rabbit without ssl from the management network.

Change-Id: Ib5cd00cf92e4e2c23fbed2fd64420a07b0a46f88
Closes-Bug: #1585783
2016-06-08 18:36:02 +00:00
Marcellin Fom Tchassem
e99cc9e7ce Change default service_name to 'trove'
While we were already able to pick an independent auth_name and
service_name; the service_name was defaulting to auth_name. Now it
has a value of its own to be consistent with other modules.

Change-Id: If3f29c1f4efe2eeb5ff9173628403dfcc7f48e57
Related-Bug: #1590040
2016-06-07 21:17:19 -05:00
Denis Egorenko
45503b548a Remove deprecated keystone::auth options
Change-Id: I69df2e6ef68c79bdc6d564c78489cec555af396b
2016-06-01 18:37:42 +03:00
Iury Gregory Melo Ferreira
a498d302b7 Revert "Trove Deprecations"
This commit partially reverts original commit.

use_syslog option is not deprecated and still actual.

This reverts commit 700ddfd674a817c190916890a4a74f82ed82d3c1

Change-Id: Ie7515a45abeb3b0b4a7833bd19a32fbab759765a
2016-05-31 12:19:24 -03:00
Iury Gregory Melo Ferreira
2d5ee453cf Trove Deprecations
Deprecation of parameters listed in Mitaka during Newton cycle [1]

[1] http://docs.openstack.org/mitaka/config-reference/tables/conf-changes/trove.html

Change-Id: I700ddfd674a817c190916890a4a74f82ed82d3c1
2016-05-27 12:34:18 -03:00
Praveen
c780bfc964 Providing an option to disable configure_user in Keystone
Currently configure_user and configure_user_role parameters are set to true.
There should be an option to configure the parameter with appropriate values.

For Example, If we are using Keystone User entries from LDAP,
We can't create/update the user.

Change-Id: Ifecd56e3d1f0d82d45436025497746bb6394e188
Closes-Bug: #1583920
2016-05-24 06:00:34 -04:00
Jenkins
2c4809cd76 Merge "Cover control_exchange with tests" 2016-05-21 16:01:23 +00:00
Iury Gregory Melo Ferreira
8246a80558 Deprecate verbose option in logging
Option "verbose" from group "DEFAULT" is deprecated for removal.
The parameter has no effect.
Deprecated verbose in all classes
Remove verbose in README
Remove verbose from tests.
If this option is not set explicitly, there is no such warning.

Change-Id: Iedbc3ea8824fdef8e1e5434d8be9463704c0579a
2016-05-18 13:34:00 -03:00
Jenkins
364cd54b74 Merge "Introduce support for oslo.messaging amqp driver configuration" 2016-05-17 16:34:04 +00:00
Jenkins
25ed088b87 Merge "Use oslo module for logging" 2016-05-13 20:59:35 +00:00
Alexey Deryugin
8d7be7ac23 Use oslo module for logging
Additonal changes:

  * switch logging related parameters to $::os_service_default
    as they are used in oslo::log
  * update unit tests

Change-Id: I1884387b438e3885986d031f95ba323e57aac7ab
2016-05-13 18:43:04 +03:00
Andrew Smith
52371ee818 Introduce support for oslo.messaging amqp driver configuration
This commit adds support for the oslo.messaging amqp rpc_backend
which enables the AMQP 1.0 driver. A proposed feature for the
Newton oslo.messaging release is an update to the AMQP 1.0 driver
to support a stateless messaging interconnect for RPC traffic [1].

This patch:
* use oslo::messaging::amqp resource
* add new parameters for the oslo_messaging_amqp driver
* update spec tests for amqp as alternate rpc_backend
* add feature release note

[1] https://blueprints.launchpad.net/oslo.messaging/+spec/amqp-dispatch-router

Change-Id: I8306c56e86f2f8a8d6da1ecbf5eab674e6b1e8bf
2016-05-12 16:13:30 -04:00
Matt Fischer
ed529e5a5a default swift_url to SERVICE_DEFAULT
If swift_url is unset, Trove will set it using the Keystone catalog.
Therefore we will default the swift_url setting to use SERVICE_DEFAULT,
so that out of the box configs will use the Keystone catalog.

Change-Id: I7a3fe361ca41fbee9f353be6e2306c1a5c7f7097
2016-05-11 10:18:47 -06:00
Alex Schultz
c48df46352 Cover control_exchange with tests
This change adds the control_exchange setting for
trove_guestagent_config and trove_config that are included in the api
and guestagent classes.

Change-Id: If0bda0f937330e2fa4304517d06cdd1c02ec9f98
Related-Bug: #1580005
2016-05-10 11:15:50 -06:00
Matt Fischer
57b14b0158 Allow guestagent to use different rabbit params
In some environments, Trove guests will talk to rabbit via a different
gateway or VIP and possibly using a different port. This might be done
for security or separation reasons. This change allows the guestagent's
rabbit host(s) and port information to be different than that from the
main cluster.

Change-Id: I2107edd579073d81496821a8ecf23a3c2039b75d
2016-05-06 09:44:15 -06:00
ZhongShengping
f31f530961 Test multiple operating systems for trove::db::postgresql
Change-Id: I93a9877415f0d7f8d48500f08ae2376c91ee3d06
2016-04-30 12:01:50 +08:00
Shaik Apsar
86bf28728c Add amqp_durable_queues option in trove-guestagent.conf.erb.
Change-Id: I23f580d1ccd5261ff7090d182e0da2076012555b
Closes-Bug: #1573523
2016-04-29 11:52:45 +05:30
Alexey Deryugin
b0804e5f8a Use oslo module for logging and database configuration
Additonal changes:

  * switch database related parameters to $::os_service_default
    as they are used in oslo::db
  * update unit tests

Change-Id: I2c79261d8000d68521f783b5df9a535ff47ce53d
2016-04-23 11:56:34 +00:00
Alexey Deryugin
24839ec63f Use oslo module for messaging (rabbit) configuration
Additonal changes:

  * switch messaging related parameters to $::os_service_default
    as they are used in oslo::messaging_rabbit define
  * update unit tests

Change-Id: I3f7800f78132fa4c6c639753327ff63cf337c285
2016-04-22 15:45:13 +00:00
Denis Egorenko
3352d44262 Totally drop Qpid support
Qpid was removed in Mitaka from Oslo Messaging, so now we can
drop it in manifests.

Change-Id: Ie33f82b278bdb685cf1c78b704725eb03be1a19e
2016-04-18 14:11:52 +03:00
Jenkins
8544b1a761 Merge "Add related parameters to profiler section" 2016-04-15 21:01:42 +00:00
Jenkins
a4764b960e Merge "Remove nova_* options from guestagent" 2016-04-14 16:46:53 +00:00
Matt Fischer
d0da01d63f Remove nova_* options from guestagent
These options are unncessary according to Tesora, and they are a
security risk. The nova user has admin privelges. If your use spins up a
trove instance then snapshots it, they'd be able to get admin
credentials in your cloud.

Change-Id: Ie1f46fde9369033315e299e01d5c7f848bdd2696
2016-04-14 08:34:09 -06:00
Xiaohua Yuan
6798619a06 Add related parameters to profiler section
This patch is aim to following params in puppet-trove class:
  - enabled
  - trace_sqlalchemy

Change-Id: Icbeedc4a74a8a7d25828ed8c4501c843c5252644
closes-Bug: #1567192
2016-04-07 07:59:16 -07:00
Emilien Macchi
50dec1e92e conductor: add workers parameter
Allow to configure workers for trove conductor.
Keep default from upstream, which is the same as API.

Change-Id: I942addf4347aaf813ef40d2ab39bac69a85a1a33
2016-04-01 12:01:06 -04:00
Emilien Macchi
80cf1085e2 api: move SSL parameters under [ssl] section
Move SSL parameters under [ssl] section, like it should be done when
using Oslo Service.

Change-Id: I5ae991970f949dd9cfe2948b829ba5bb9834423c
2016-03-31 16:12:46 -04:00
Matt Fischer
9fa99515da guestagent.conf template should use rabbit_hosts
When rabbit_hosts was set for taskmanager, the guestagent.conf template
was ignoring this setting. This fixes that and moves the configuration
for rabbit into the non-deprecated section. Finally it properly sets
rabbit_ha_queues when using the guestagent template.

Change-Id: Idf22f083541ed307c610c2d019c7022a196bdc0d
Closes-Bug: #1561651
2016-03-24 12:23:02 -06:00
Matt Fischer
59f75e6085 Trove external dependency management
Move all dependency tracking to an external class which simplifies the
relationships and allows managing Trove without necessarily using
packages.

This change also cleans up how the client is handled to make
it more configurable and match other modules.

Finally the reference to the deprecated and non-functional
keystone::python class is dropped.

Change-Id: I943685fbeb114dead80b7465b8f5c564a0bc9fe0
2016-03-21 19:42:26 -06:00
Alex Schultz
679c384e64 Add kombu_reconnect_delay option
The kombu_reconnect_delay is used when configuring rabbitmq but we are
missing the parameter from the base trove class. This change adds it in
and adds test coverage for the rabbit user, password, host, ssl and
reconnect delay.

Change-Id: I8a5e7f0241a0f41e4f10b40d791f39e37ce82087
Closes-Bug: #1545168
2016-02-23 09:20:44 -07:00
Jenkins
f057c9b474 Merge "Add notification system options in trove" 2016-01-26 16:02:17 +00:00
Emilien Macchi
d2e34ec91f drop mock dependency
mock is not used anywhere in the module, let's drop it.
This patch will help to hit this bug:
https://launchpad.net/bugs/1492636

Change-Id: I65468b6abebafcd2240b4f5c5f968691a53d54c2
2016-01-22 10:12:41 -05:00
Jenkins
2e03d5bce6 Merge "Deprecate auth_* old parameters" 2016-01-21 10:29:31 +00:00
Ethan Gafford
4ccae65825 Deprecate auth_* old parameters
This patch does multiple things regarding auth_* parameters.

1/ We deprecate auth_host, auth_url, auth_port and auth_protocol
If they are set, a nice warning will show up and mention the parameters
will be dropped in a future release. The parameters are still having
effect but will configure old parameters. No worries, they still work.
Just lot of warnings so people will have to use new parameters.

2/ Add new parameters
auth_uri and identity_uri are the way to go!
False by default for now, because we still have old parameters, but in a
later release, they'll be set to a default endpoint, like in other
modules.

3/ Update beaker
We want to test with the new parameters, so let's update beaker
manifests and use auth_uri & identity_uri

This is a first step to use auth_uri & identity_uri that is compliant
with other modules. The next step will be to drop old parameters and set
the right default values for the 2 new params.

Change-Id: I66d5233c8981763a0a341740911fb24dd0e8d479
Closes-bug: #1504653
2016-01-20 15:38:40 -05:00
Emilien Macchi
5db75452a5 Use puppet-openstack_spec_helper for Rakefile & spec_helper_acceptance
Use common code in puppet-openstack_spec_helper in Rakefile and
spec_helper_acceptance.

Change-Id: I93ba1d6bfc33fe7b7476cf149a110a90cb4dd135
2016-01-18 09:11:34 -05:00
Alex Schultz
4f9b1c46ed Add rspec-puppet-facts to the spec_helper
This change adds the rspec-puppet-facts gem to the spec helper so that
we can centralize the management of the base operating systems that we
support. rspec-puppet-facts allows us to simplify our unit tests and
provides a more complete list of Operating Systems and their associated
facts for the unit tests.  With this change we can now loop over and
test CentOS, Debian, Fedora, RedHat, and Ubuntu by simply providing a
list of supported os to rspec-puppet-facts.

Additionally this change includes a central object for managing our
supported os list for rspec-puppet-facts and providing our default facts
like os_service_default. This central object should replace the usage of
@default_facts within the unit tests for each module.

Change-Id: I4770ec921ee7bd608b46aa07eae8b173cb9d554e
2016-01-14 20:15:39 +03:00
Xingchao Yu
d91b9599b4 Introduce amqp_durable_queues option
amqp_durable_queues option is already defined in trove class,
but is not be used in other trove class.

Close-Bug: #1486319
Change-Id: Ifd4411ce90db26d6f12e714fdc5c54ea507975fd
2016-01-07 04:04:40 +00:00
Xingchao Yu
2443294da2 Add rabbit_ha_queues option
There are two methods for setting up RabbitMQ HA:

 1. Configure rabbit_hosts to multi rabbit hosts.
 2. Setting up a loadbalancer in front of RabbitMQ cluster,
    provide a unique address in rabbit_host

In current, rabbit_ha_queues option is controled by rabbit_hosts IF
conditional statement. But when users want to use the second method:
changing rabbit_ha_queues to true, but they don't use rabbit_hosts
option, this logic will not work.

This patch adds an rabbit_ha_queues option, set it to undef by
default for forward compatbility.

Close-Bug: #1485287
Change-Id: Ib8fe16182188729100ef4704466c4d42d31ff510
2016-01-07 03:49:36 +00:00