a213aaa40517f59bf100ca0f95f36018a907a953
14 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
Dmitriy Rabotyagov
|
10164be39e |
Add quorum queues support for service
This change implements and enables by default quorum support for rabbitmq as well as providing default variables to globally tune it's behaviour. In order to ensure upgrade path and ability to switch back to HA queues we change vhost names with removing leading `/`, as enabling quorum requires to remove exchange which is tricky thing to do with running services. Change-Id: I722aefb5290a68311faf1d44c279151e8492466a |
||
|
Dmitriy Rabotyagov
|
c7b2ad25c9 |
Fix linters and metadata
With update of ansible-lint to version >=6.0.0 a lot of new linters were added, that enabled by default. In order to comply with linter rules we're applying changes to the role. With that we also update metdata to reflect current state. Depends-On: https://review.opendev.org/c/openstack/ansible-role-systemd_service/+/888223 Change-Id: Ib51c7ec8d83ffe82c98d1c8d3200ce4510775895 |
||
|
Dmitriy Rabotyagov
|
6568e8bf99 |
Replace git-core with git for debian
With ansible-core 2.13 it tries to substitude package resolution in apt module. However git-core is used in Debian as transitional name, but ansible tries to select it and provide version, which is not correct behaviour. But since git-core is not really valid anyway, we just replace it to workaround ansible's imperfectness. Change-Id: Ie4b8ce21c101551505eec1529235a57e9176d3c9 |
||
|
Jonathan Herlin
|
c35565f419 |
Fix wsgi_venv path for cloudkitty-api
Previous to this change the uwsgi config had virtualenv include /bin, leading to $venv/bin/bin in execution Change-Id: I4d2b60b655e5688359ed7b65569ec5500c542c0f |
||
|
Jonathan Rosser
|
8b53883914 |
Remove references to unsupported operating systems
All references to Gentoo, SUSE, Debian stretch and Centos-7 are removed. Conditional tasks, ternary operators and variables are simplified where possible OS specific variables files are generalised where possible Change-Id: Ifd45cedcf98487b1a8b5531962529f0784f3065e |
||
|
Dmitriy Rabotyagov
|
9d89b0fdb0 |
Define condition for the first play host one time
We use the same condition, which defines against what host some "service" tasks should run against, several times. It's hard to keep it the same across the role and ansible spending additional resources to evaluate it each time, so it's simpler and better for the maintenance to set a boolean variable which will say for all tasks, that we want to run only against signle host, if they should run or not now. Change-Id: I904dca21103b91978ab03db1a3c6d3a30d406aa7 |
||
|
Dmitriy Rabotyagov
|
d1ce3f060a |
Add CentOS 8 and Ubuntu Focal support
Change-Id: I98d5df7c87b94d8135b24a42941c109365cd1432 |
||
|
Dmitriy Rabotyagov
|
f3285ed7ad |
Start using uWSGI role
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 |
||
|
Christian Zunker
|
976bbded67 |
Add missing libxml2 packages
Change-Id: I43cbe7328c4c1ccb37ae9d4e04a577691263f182 Closes-Bug: 1808124 |
||
|
Jesse Pretorius
|
374b8c2bce |
Use a common python build/install role
In order to radically simplify how we prepare the service venvs, we use a common role to do the wheel builds and the venv preparation. This makes the process far simpler to understand, because the role does its own building and installing. It also reduces the code maintenance burden, because instead of duplicating the build processes in the repo_build role and the service role - we only have it all done in a single place. We also change the role venv tag var to use the integrated build's common venv tag so that we can remove the role's venv tag in group_vars in the integrated build. This reduces memory consumption and also reduces the duplication. This is by no means the final stop in the simplification process, but it is a step forward. The will be work to follow which: 1. Replaces 'developer mode' with an equivalent mechanism that uses the common role and is simpler to understand. We will also simplify the provisioning of pip install arguments when doing this. 2. Simplifies the installation of optional pip packages. Right now it's more complicated than it needs to be due to us needing to keep the py_pkgs plugin working in the integrated build. Depends-On: https://review.openstack.org/598957 Change-Id: Ife2f3e96f7a56279f68509259c099bfe20ff19d8 Implements: blueprint python-build-install-simplification Signed-off-by: Jesse Pretorius <jesse.pretorius@rackspace.co.uk> |
||
|
Kevin Carter
|
b78966cd09 |
Convert role to use a common systemd service role
This removes the systemd service templates and tasks from this role and leverages a common systemd service role instead. This change removes a lot of code duplication across all roles all without sacrificing features or functionality. The intention of this change is to ensure uniformity and reduce the maintenance burden on the community when sweeping changes are needed. The systemd journal would normally be populated with the standard out of a service however with the use of uwsgi this is not actually happening resulting in us only capturing the logs from the uwsgi process instead of the service itself. This change implements journal logging in the service config, which is part of OSLO logging. OSLO logging docs found here: <https://docs.openstack.org/oslo.log/3.28.1/journal.html> Change-Id: Ieff0119cb09e8971fab5b0393f023010a554edff Signed-off-by: Kevin Carter <kevin.carter@rackspace.com> |
||
|
Mohammed Naser
|
55691f7ddc |
Add openSUSE support
Change-Id: I4bd223a3f5fbd36839e8b79103994ba4a7122fd8 |
||
|
Jesse Pretorius
|
6369a3b6e6 |
Rename package lists (and related vars) appropriately
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 |
||
|
Jimmy McCrory
|
15c80abdbc |
Implement Multi-OS support in os_cloudkitty
This change implements support for Xenial and CentOS 7 within the os_cloudkitty role. Change-Id: Id2abe9099171080bd3d3ceb3a54222a5dfdefe2f Implements: blueprint multi-platform-host |