Move it to the service setup host (defaults to utility[0]) instead
of the galera[0] host, and use galera_address (defaults to internal VIP)
as the endpoint instead of a local connection on the db host.
Change-Id: Ie8e6b95f531fef9c9fe04d6d8f692d599aa5ff30
Move service to use uWSGI role instead of iternal task for uwsgi
deployment. This aims to ease the maintenance of uWSGI and speedup
metal deployments as the same uwsgi environment will be used
across all services.
Change-Id: I5b0bcd6a51f237fcd772368f51a406421ffb52f4
The variables cloudkitty_developer_mode and cloudkitty_venv_download
no longer carry any meaning. This review changes cloudkitty to
do the equivalent of what developer_mode was all the time,
meaning that it always builds the venv and never requires
the repo server, but it will use a repo server when available.
As part of this, we move the installation out of its own file
because it's now a single task to include the venv build role.
This is just to make it easier to follow the code.
We also change include_tasks to import_tasks and include_role
to import_role so that the tags in the python_venv_build role
will work.
Change-Id: Ieaec0a12a1ed6ea1f9a98a615fd8c6bff67a9d0c
The connection plugin no longer falls back on using the
inventory_hostname as the container_name. Set container_name as a host
var for each container in the test inventory.
Change-Id: Iebf19bc6527aea0ca0ba4796ee38d923ac64281a
1. The venv tag override is unnecessary, given there is a default.
2. The install branch override is unnecessary, given there is a
default. The constraint in defaults was set to use the
'cloudkitty_requirements_git_install_branch' instead of this
variable anyway. This has been corrected to the right var.
3. The galera address for role tests has a specific var for it.
4. The 'cloudkitty_requirements_git_install_branch' is a relic
of the past, and has been removed.
5. The playbook is very dated and is using a lot of old mechanisms
and unnecessary vars. It is updated to be normalised with the
playbooks from the integrated build.
Change-Id: I6a8e8b3ec8b00790416648beb1c4ce0257406409
There is no record for why we implement the MQ vhost/user creation
outside of the role in the playbook, when we could do it inside the
role.
Implementing it inside the role allows us to reduce the quantity of
group_vars duplicated from the role, and allows us to better document
the required variables in the role. The delegation can still be done
as it is done in the playbook too.
In this patch we implement two new variables:
- cloudkitty_oslomsg_rpc_setup_host
- cloudkitty_oslomsg_notify_setup_host
These are used in the role to allow delegation of the MQ vhost/user
setup for each type to any host, but they default to using the first
member of the applicable oslomsg host group.
We also adjust some of the defaults to automatically inherit existing
vars set in group_vars form the integrated build so that we do not
need to do the wiring in the integrated build's group vars. We still
default them in the role too for independent role usage.
Finally, we remove the test mq setup tasks and clean up any unused
or unnecessary variables configured in tests.
Change-Id: Iac217b80df3da79a944185a90ba4c1ff5409945b
This introduces oslo.messaging variables that define the RPC and
Notify transports for the OpenStack services. These parameters replace
the rabbitmq values and are used to generate the messaging
transport_url for the service.
This patch:
* Add oslo.messaging variables for RPC and Notify to defaults
* Update transport_url generation in conf
* Add oslo.messaging to tests inventory and update tests
* Install extra packages for optional drivers
* Add release note
Change-Id: I0612252927f81b3584054f6cd77a2826c5d3fc3b
In order to reduce the packages required to pip install on to the hosts,
we allow the service setup to be delegated to a specific host, defaulting
to the deploy host. We also switch as many tasks as possible to using the
built-in Ansible modules which make use of the shade library.
The 'virtualenv' package is now installed appropriately by the openstack_hosts
role, so there's no need to install it any more. The 'httplib2' package is a
legacy Ansible requirement for the get_url/get_uri module which is no longer
needed. The keystone client library is not required any more now that we're
using the upstream modules. As there are no required packages left, the task
to install them is also removed.
With the dependent patches, the openstack_openrc role is now executed once
on the designated host, so it is no longer required as a meta-dependency for
the role.
Depends-On: https://review.openstack.org/579233
Depends-On: https://review.openstack.org/579959
Change-Id: Ib46638d1cb35e677ecfe789a32bb69a024042d6f
Now that run_tests.sh handles the tests repo clone, we can
remove the use of the older tests-repo-clone.sh script.
Change-Id: Ic841db320227274c41ea0b92bba45e364f77726b
In order to ensure that the updated role is used for tests,
we adjust the a-r-r file to pull from the correct repo.
Change-Id: I23bd1d95e054f6f2c6071caa5670a6c2ac16820d
In order to allow tests to work as the use of the common
role is implemented in the various roles, we pre-implement
the addition of the role into the a-r-r file.
Change-Id: Ib3470ea86d3b6f037fe2aaa4476753a017c7ef12
Implements: blueprint python-build-install-simplification
Signed-off-by: Jesse Pretorius <jesse.pretorius@rackspace.co.uk>
In order to allow tests to work with https://review.openstack.org/551028
merged, add the role to the a-r-r file.
Change-Id: Ice425cee59f6670f0de24e8a91114a8f0bc4c29a
This patch implements an initial set of jobs intended to match
the current job execution method. It does not intend to improve
how the jobs are executed - only to replicate what is currently
in openstack-infra/openstack-zuul-jobs and provide the platform
to iterate on.
Change-Id: Ib2e6d342e4ce1d6dc5eb6dc13a58661b77831f8a
When executing the tests repo clone in OpenStack-CI,
use zuul-cloner instead of git to enable cross-repo
testing. This ensures that if a dependent patch from
the tests repo is noted using 'Depends-On: <change-id>'
in the commit message, that patch will be included.
Change-Id: I4863fa5ee0e5c1b377bd4e75de891cc6dd20ef7a
Depends-On: Idce7abebf32f24c356a27e099fbca954d917402b
Add 'become' and root 'user' options to the playbook instead of using
'ansible_become' through an inventory variable.
Change-Id: I4d94dec6ad68159248007f6845c9e3e09c233bf1
This patch consumes the test scripts implemented by
https://review.openstack.org/375061 to ensure that
the tests and test preparation is consistent and
more maintainable.
Change-Id: Ib7d3bff4c80a34508d701a940fa9b8f88f33678f
Ansible 2.1.1 introduces a regression in the way conditional
includes are handled which results in every task in the
included file being evaluated even if the condition for the
include is not met. This extends the run time significantly
for a deployment.
This patch forces all conditional includes to be dynamic.
Change-Id: Ie732af6a11815d4ee8efa27233d49a173372bb97
Related-Bug: https://github.com/ansible/ansible/issues/17687
In order to make it easier to differentiate between the lists of
python packages, distribution packages, downloaded packages,
package pins and other similar variables the variable names are
being changed to ensure that they have a more explicit suffix
that defines the purpose and makes the naming more consistent.
This is to facilitate a lookup plugin which will be able to look
up all the package lists and present them as a consolidated piece
of data which may be used for artifact preparation.
Change-Id: Ie416ef490b4e50b57bc3db870e1cb5540df6446e
The openstack_hosts role is not used in any of the test playbooks
or required by dependent roles and can be removed from the test
role requirements.
Change-Id: If7ac5944d1416bb4353b6e4562da248ab3edd318
The pip_install and pip_lock_down roles have been merged.
Remove pip_lock_down from the role's meta dependencies and test
requirements.
Change-Id: I0ecd54e31d7d187efc18be83bfc54c2ec30b7b6c
This patch includes the following changes to enable OpenStack-CI gate
testing and to allow the role to pass a basic convergence test:
- Base configuration for OpenStack's CI Infrastructure.
- Base documentation build configuration.
- A Vagrantfile for local testing.
- A base test configuration in order to execute the standard tests.
- Added a CONTRIBUTING file.
- Add reno scaffolding for release notes management.
- Correcting name of handler to restart services in install tasks.
- Define ``cloudkitty_galera_password`` and
``cloudkitty_user_password`` in test variables.
- Define default ``debug`` and ``cloudkitty_service_region`` variables.
Change-Id: I7bcc8c589d506d8b71eb08fc87861a4c31a6e947