94 Commits

Author SHA1 Message Date
Emilien Macchi
c73c228ae7 Make Keystone_endpoint match service by name/type
Since a chance in puppet-keystone (1], we now match an endpoint with a
service name/type.
)
[1] http://git.openstack.org/cgit/openstack/puppet-keystone/commit/?id=0a4e06abb0f5b3f324464ff5219d2885816311ce

Also:
require package before config file Before trying to build the guestagent
config file from the template with Puppet, first install the package so
we make sure /etc/trove is ready. Otherwise, Puppet will randomly fail
to create the file, if the package is not installed yet.

We need to squash the two changes otherwise CI will never pass.
Change-Id: I9662c684c83933ffe6ede0337bc1770dd65b0ce7
Closes-Bug: #1528308
2016-01-06 12:08:28 -05:00
Gael Chamoulaud
0ddd0067a1 Put all the logging related parameters to the logging class
Currently logging configuration is splitted in two distinct classes,
the api.pp and the logging.pp classes. This review aims to centralize
all logging related parameters in a single class, the logging.pp one.

The impacted parameters are :

* use_syslog
* use_stderr
* log_facility
* verbose
* debug
* log_dir
* log_file

This change remains backward compatible with what is currently in place.

Related-bug: #1515273
Change-Id: I76f51876e78015db722ff0fc37f6bcd76fd651f2
Signed-off-by: Gael Chamoulaud <gchamoul@redhat.com>
2015-12-15 14:38:42 +01:00
Jenkins
98ba7b3b6d Merge "Remove trove ubuntu package hack" 2015-12-10 17:49:21 +00:00
Denis Egorenko
05cbdefa6b Remove qpid messaging support
Qpid messaging driver is removed from Oslo.messaging [1]
Therefore, we cannot support it anymore.

[1] I4a9cba314c4a2f24307504fa7b5427424268b114

Change-Id: I4d4c200e733568d33116728e19377575b92331ca
2015-12-07 20:44:35 +03:00
Lukas Bezdicka
0f3cbadfff Remove trove ubuntu package hack
Bug #1365561 has been marked as fixed so it should be safe to remove
hack adding group and file before installing package.

Change-Id: Id447a47a056a41d8c98b01d6769f4121a36d7aae
2015-12-03 16:05:00 +01:00
iberezovskiy
c533f497f1 Follow-up on PyMySQL support for Red Hat platforms
Rely on packaging dependencies to avoid issues caused by different
package names between Fedora and RHEL (python-PyMySQL vs python2-PyMySQL).

https://review.openstack.org/#/c/245229/4/spec/classes/neutron_db_spec.rb
includes all the discussion that led to this.

Change-Id: I32406ad0937241d2a4a02e0e9778fc4929963d3e
2015-12-02 20:58:37 +03:00
iberezovskiy
3c0ac8112e Support of PyMySQL driver for MySQL backend
Add ability to use python-pymysql library
as backend for MySQL connections.
Update acceptance tests to use pyMySQL.
Docs: https://wiki.openstack.org/wiki/PyMySQL_evaluation
The same implementation as it's done for keystone:
https://review.openstack.org/#/c/242134/

Change-Id: I937aa59984e6ff2f7aff28f56ce79e117e5aa0a9
2015-11-24 14:23:21 +03:00
Emilien Macchi
c23ca25752 Acceptance: use common bits from puppet-openstack-integration
Change-Id: I661a01faeb90111e5c3dde1cff059f0932a82849
2015-11-19 11:43:28 +01:00
Emilien Macchi
90ba4bdaa7 Bump UCA and RDO to Liberty GA
Bump from UCA RDO Liberty testing to GA repos.
Depends-On: I19a1588c488d56b647703c0267540c7649fdc6d1

Change-Id: I9d780ea5c8eaf6289aacf024675b8e6f2831a66b
2015-11-18 16:00:32 +00:00
Gael Chamoulaud
7b790cc663 Introduce trove::db class
Change-Id: Id2af304b7924e9a95a2e2ecf63c32f8dfa10f3f8
Signed-off-by: Gael Chamoulaud <gchamoul@redhat.com>
2015-11-06 09:21:41 +01:00
Emilien Macchi
b44b81214c Update rspec tests for keystone
https://review.openstack.org/#/c/228744/ has been merged, we need to
drop the 'tenant' parameter to Keystone_user resource.

Change-Id: I34d49f43dd09606c3059dbbf75d825306252b2b5
2015-10-21 09:50:32 -04:00
Javier Pena
03f5a793a6 Simplify rpc_backend parameter
It is no longer necessary to specify the whole python namespace
for the backends, and
http://docs.openstack.org/developer/oslo.messaging/opts.html lists
the short versions.

This patch maintains backwards compatibility with the previous
default value in case it is explicitly used.

Change-Id: Ic16d12e9e84083c09f3d725e5a15f4c3d7279792
2015-10-13 10:32:09 +02:00
Emilien Macchi
c5b0e46a63 Bump RDO packages to tested repos
RDO has now [1] a repo that is tested against real CI.
Using this repository will avoid more failures in our CI.

[1] http://trunk.rdoproject.org/centos7-liberty/current-passed-ci/

Change-Id: Ic81b59acab101318c3758e8aea963ec18da7944e
2015-09-22 13:47:11 -04:00
Jenkins
2c907a77f9 Merge "Fix rspec 3.x syntax" 2015-09-13 23:02:27 +00:00
Jenkins
61d3378cb5 Merge "Initial msync run for all Puppet OpenStack modules" 2015-09-11 16:16:31 +00:00
Gael Chamoulaud
340f2c0fef Fix rspec 3.x syntax
- Convert 'should' keyword to 'is_expected.to'

Change-Id: I43ca50197fc36abf7ea80b9dcd02e91642da445c
Signed-off-by: Gael Chamoulaud <gchamoul@redhat.com>
2015-09-11 15:05:37 +02:00
Emilien Macchi
ea102af2ec acceptance: switch RDO to CBS repositories
This patch changes the repositories used to install OpenStack Liberty on
RDO by using CBS repositories and RDO trunk.

Here is the RDO roadmap that is suggested if we want to run Liberty:
From now until GA:
http://trunk.rdoproject.org/centos7-liberty/current/
http://cbs.centos.org/repos/cloud7-openstack-liberty-testing/x86_64/os/
http://cbs.centos.org/repos/cloud7-openstack-common-testing/x86_64/os/

After GA:
http://mirror.centos.org/centos/7/cloud/x86_64/openstack-liberty

Note about EPEL: deps from EPEL are rebuilt in CBS, so EPEL could be
disabled in the future.

Change-Id: I0a9456ea38d191ac62a5544f38bb166f2316454a
2015-09-10 12:13:16 -04:00
Emilien Macchi
3c634e122f acceptance: bump trusty packaging to trusty-proposed/liberty
Since our recent discussion about Ubuntu packaging, we decided to bump
Ubuntu packaging to trusty-proposed/liberty so we can install Liberty in
a better shape than current situation (Staging repo).

This patch installs UCA liberty repository.

Depends-On: I57e2ddc5d0e228142f8045623ffbde362c0e7f7b
Change-Id: Ia5e586a7e3776dd45a94a8bf60740651c4ea3d8a
2015-09-02 21:11:03 +00:00
Jenkins
3da8e3e2fa Merge "Introduce use_guestagent_template option" 2015-08-30 23:54:02 +00:00
Xingchao Yu
cdf452769e Introduce use_guestagent_template option
Current, trove::taskmanager use template to generate guestagent
configuration file.

This patch is aim to do following efforts:
  1. Fix template file option typo error
  2. Update template to keep up with master branch of
     guestagent.conf.sample
  3. Add use_guestagent_template option to give more choice for
     people who want use trove::guestagent to manage guestagent.conf.
     To keep compatibility, default value is set to true

Close-Bug: #1485397
Change-Id: I74cba2ad10a811f91ab65f004de78c93309fc95a
2015-08-21 15:42:09 +08:00
Yanis Guenane
c8527beace Reflect provider change in puppet-openstacklib
With the creation of the new openstack_config provider, some processing
that was done in trove_config has been centralized in
openstack_config.

The same apply for trove_conductor_config, trove_guestagent_config and
trove_taskmanager_config

Impacted methods are :

  * section
  * setting
  * separator

Also, this commit adds the fact that, when passing a specific string
(ensure_absent_val) the provider will behave as if ensure => absent was
specified. '<SERVICE DEFAULT>' is the default value for
ensure_absent_val.

The use case is the following :

trove_config { 'DEFAULT/foo' : value => 'bar' } # will work as usual

trove_config { 'DEFAULT/foo' : value => '<SERVICE DEFAULT>' } # will mean absent

That means that all the current :

if $myvar {
  trove_config { 'DEFAULT/foo' : value => $myvar }
} else {
  trove_config { 'DEFAULT/foo' : ensure => absent }
}

can be removed in favor of :

trove_config { 'DEFAULT/foo' : value => $myvar }

If for any reason '<SERVICE DEFAULT>' turns out to be a valid value for
a specific parameter. One could by pass that doing the following :

trove_config { 'DEFAULT/foo' : value => '<SERVICE DEFAULT>',
ensure_absent_val => 'foo' }

Change-Id: I44472b107c951d22932c533031f68aa67a5f2e18
Depends-On: I0eeebde3aac2662cc7e69bfad7f8d2481463a218
2015-08-19 11:21:42 +02:00
Jenkins
27313c16bc Merge "acceptance: enable debug & verbosity for OpenStack logs" 2015-08-18 13:05:39 +00:00
Cody Herriges
7145694b74 Initial msync run for all Puppet OpenStack modules
This patch is the initial modulesync run, it impacts:

* gitignore: just a sync between projects
* gemfile:
  - update and allow to setup facter version and gem source
  - split beaker gems with a dedicated group
  - switch to rspec-puppet 2.2.0
* rakefile:
  - use the new syntax for lint configuration
  - add a acceptance target
* acceptance:
  - sync nodesets
* spec: added rspec coverage report

Change-Id: I1ed1e89127abb917c0a28d8d1e7d8beab05a71d9
2015-08-18 14:40:01 +02:00
Jenkins
de3899f786 Merge "Add api ratelimit options" 2015-08-18 08:33:56 +00:00
Emilien Macchi
ca97cff610 acceptance: enable debug & verbosity for OpenStack logs
Enable debug & verbose when possible for OpenStack services logs, so we can read a maximum
of informations in Jenkins jobs logs and easily debug our eventual failures.

Change-Id: Idf4f0e59adccf3c22383d22da33d4496fd4aa242
2015-08-16 09:50:01 -04:00
Jenkins
9c4efb0046 Merge "acceptance: bump to Liberty release" 2015-08-14 20:54:30 +00:00
Xingchao Yu
37b81a2150 Make taskmanager_queue option configurable
This patch is aim to add taskmanager_queue option in taskmanager.conf.

Change-Id: I2fd9392891dfea3c9b674fea6efc45914bcc0274
Close-Bug: 1482495
2015-08-12 06:11:06 +08:00
Emilien Macchi
3f9c2ce517 acceptance: bump to Liberty release
Upgrade acceptance manifest from Kilo (stable) to Liberty (dev)
on both Ubuntu Trusty & Centos7.

Change-Id: Ie95acd05da28f59abb872789e3480c1c4430c10b
Co-Authored-By: Lukas Bezdicka <lbezdick@redhat.com>
Depends-On: I7c1f31b3cc4c6ea1f894a263a8cff60e357accb8
2015-08-04 21:21:49 -04:00
Xingchao Yu
b2a76998df Add api ratelimit options
This patch is aim to add trove api rate limits related options.

Change-Id: I34672d2309c4febacb73c6cfe7df7b3b51c59468
Closes-Bug: #1473296
2015-07-31 23:34:32 +08:00
Jenkins
4ce651ef07 Merge "Fix catalog compilation when not configuring endpoint" 2015-07-28 13:04:02 +00:00
Jenkins
b3be8c5f78 Merge "Add tag to package and service resources" 2015-07-27 13:07:02 +00:00
Emilien Macchi
39867dcd31 Fix catalog compilation when not configuring endpoint
Previously when you set $configure_endpoint to false and did not have a
keystone_endpoint resource with the same name as is defined by
neutron::keystone::auth, the catalog would not be compiled. This was
because a relationship was being established where one resource in the
relationship didn't exist. This changes this so that the relationship
involving the Keystone endpoint is only defined if $configure_endpoint
is set to true.

Change-Id: I1ee51f33ffd1bf20578cd56120ee5be8e6fa0133
Co-Authored-By: Risto Laurikainen <risto.laurikainen@csc.fi>
Co-Authored-By: Gael Chamoulaud <gchamoul@redhat.com>
Closes-Bug: 1368686
2015-07-23 18:30:29 -04:00
Yanis Guenane
c9966f7d97 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 'trove-package' and 'trove-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 == 'trove-package' |> -> X

Change-Id: I969fbe7405a3eb3fab5437293c0efe1da57c631c
2015-07-22 21:36:10 +02:00
Xingchao Yu
0e3faace3c Add region and resource url related options
This patch is aim to add region and url related options in trove.conf:
  - os_region_name
  - nova_compute_service_type
  - cinder_service_type
  - swift_service_type
  - heat_service_type
  - neutron_service_type
  - neutron_url

Closes-Bug: #1473280
Change-Id: Id9b57351b0fc3c81565310f4ce6ae2b8aa2564f2
2015-07-20 09:59:59 +08:00
Jenkins
0cb468f9b8 Merge "Add default_neutron_networks in trove::taskmanager" 2015-07-19 23:49:40 +00:00
Jenkins
22c9a45aba Merge "Complete qpid support" 2015-07-10 19:20:21 +00:00
Jenkins
1104c2d29d Merge "Add trove::quota class" 2015-07-10 16:07:54 +00:00
Xingchao Yu
843d1b80d2 Add default_neutron_networks in trove::taskmanager
This patch is aim to manage default_neutron_networks option both
in trove.conf and trove-taskmanager.conf.

Change-Id: Ibeaba4d74ffe92c8374990bd92ef88be01fd217b
2015-07-09 15:48:15 +08:00
Xingchao Yu
ccad0d083b Introduce trove:config to manage custom options
Class trove::config is aim to use trove config resources
to manage custom configurations in trove config files.

This will make end user easy to add their own custom options
in Hiera data.

Change-Id: I5d4b0aae8d5dddede1d56890f6f3e7b970b52bd0
Closes-Bug: #1473316
2015-07-09 13:58:23 +08:00
Colleen Murphy
2636a384f6 Fix git clone for locally running tests
Zuul-cloner's behavior is to clone the repository into a subdirectory
under a directory named for the repo namespace. Git's default behavior
is to just clone it directly into the present working directory. This
patch adds an argument to the git clone command to clone it into the
<namespace>/<repo name> directory, so that whether zuul-cloner or git
is used the repo ends up in the same directory relative to the PWD.

Change-Id: I069d64bc9d2a2ee09b58824441c52b8e009cb73f
2015-07-08 11:56:56 -07:00
Colleen Murphy
2767c1fae6 Use module install script for acceptance tests
This patch updates the spec_helper_acceptance.rb file to use the common
module install script and Puppetfile from the new
openstack/puppet-openstack-integration repo. This will allow us to take
advantage of Zuul's Depends-On feature so that we can test changes
across multiple related modules. This is based on idea 1 from this
brainstorming session[1].

This will probably be abstracted out into a separate function or
eventually a separate gem so that it can be more easily shared across
the OpenStack modules and the Infra modules.

[1] https://etherpad.openstack.org/p/puppet-git-dependencies

Change-Id: I2741dbf8b9e124de5aa3b1ae113414fddbae8ab9
Co-Authored-By: James E. Blair <jeblair@hp.com>
Co-Authored-By: Spencer Krum <spencer.krum@hp.com>
2015-07-07 14:18:43 -07:00
Colleen Murphy
650c8f9f55 Correct puppet module list check in beaker
The final check during the prep stage, where `puppet module list` is
run so that its output can be used for debugging, should run on the
current host in the loop, not the first host in the array.

Change-Id: I3dab89150a880767ffd62604f4b961708c796bb7
2015-07-07 14:18:24 -07:00
Emilien Macchi
83e9d07a6a Use beaker-puppet_install_helper to install puppet
When running with BEAKER_provision=no, the following happens:

In Trusty: beaker is running dpkg with '--force' option so even
if Puppet is already installed, the return code will be 0.
In CentOS: beaker is running 'rpm -ivh' the second time and since
the package is already here, the return code will be 1.

Using the new puppet install helper will abort installing puppet
if BEAKER_provision is no, so tests will continue as normal.

Change-Id: Iff706a44f19dc620dc9f0cc39685adfadc785e2c
Co-Authored-By: Colleen Murphy <colleen@gazlene.net>
2015-06-30 17:00:23 -04:00
Javier Pena
2a020fdf93 Complete qpid support
The puppet-trove module only had partial, non-working qpid support
until now. The qpid_* parameters were documented and included in
some manifests, but not in init.pp, and rpc_backend was never set
in the config files, so Trove would always use RabbitMQ.

The fix also includes moving qpid parameters from the DEFAULT
section to oslo_messaging_qpid in the config files, to avoid
deprecation warnings in Kilo and later releases.

Change-Id: I12853f843f40e2312e7fe3bb81739be743641583
Closes-bug: #1468312
2015-06-30 11:30:10 +02:00
Emilien Macchi
b04dd42edf acceptance: install latest openstack-selinux
Since SELinux is enforced by default, we need to make sure
openstack-selinux is installed from the latest version to have OpenStack
correctly working.

Change-Id: I44b46ba1b414ab612816e7efbdc363325313510d
2015-06-29 15:26:49 -04:00
Xingchao Yu
cc138ca445 Add trove::quota class
This patch is aim to add a specific class for managing trove quota
related parameters.

Change-Id: Id84e0ac02809f9adb6e5d3027a10eb1e2063e88f
Closes-Bug: #1469577
2015-06-29 03:11:13 +08:00
Emilien Macchi
290604f25c acceptance: install RDO repo the right way
Install packages from RDO properly, by using regular packages and not
ones from testing repo that are too unstable.

Change-Id: If7cb1a05f8bffa53b19a1c47e737ef7b49dc91fc
2015-06-26 15:53:56 -04:00
Sebastien Badia
abc81a8700 Fix Beaker CI according recent puppetlabs-rabbitmq change.
The puppetlabs-rabbitmq module introduce a new feature related to the
erlang_cookie parameter change (the database must be wiped if the cookie is
changed), the parameter wipe_db_on_cookie_change is configured to false by
default.

But we're not setting up a rabbitmq cluster and we're not using pacemaker in
beaker CI tests, so we just remove the erlang cookie parameter change.

Change-Id: Ifb6baa23b0c3bec2eb592fad4224d172595f79ff
Closes-Bug: #1468444
2015-06-24 23:58:41 +02:00
Jenkins
46ae10d808 Merge "Sync amqp support with other openstack modules" 2015-06-23 15:03:48 +00:00
Jenkins
357e8f0db2 Merge "Introduce public_url, internal_url and admin_url" 2015-06-16 23:59:27 +00:00