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: I900f40d7db6c26356252a7be736c1b3bdc98cace
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.
Change-Id: I022c2ed5edb0acb80433a29172bd6617e994f30f
At the moment we don't restart services if systemd unit file is changed.
We knowingly prevent systemd_service role handlers to execute
by providing `state: started` as otherwise service will be restarted twice.
With that now we ensure that role handlers will also listen for systemd
unit changes.
Change-Id: I8703c4982a56bad5995119a1b05578f74a9eb2d7
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: I247aa7bebda37b6c8d9e83767e7b77d1cd30c575
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: Id400c679e1ccc5cc10a92143321ec3e182f9ecdc
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: Ib8c8ddf5adc71f42b401b034807c4e716f515202
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: Ia1788a7a9ce80349440bedbb2a0fdeb2a7f9934a
This patch aims to migrate service from usage of regular syslog files
to journald. We also disable uwsgi logging, since it dublicates
requests that are logged by service itself.
Change-Id: I61605b7820bb518fb809b01781f6d83f89487be8
Beginning in the Stein release, Ubuntu distro packages are now using
Python3. This requires additionally installing and using the uwsgi
python3 plugin.
Install the 'python3-mistral' package instead of individual service
packages since they provide service config files that conflict
with the ones OSA provides.
Depends-On: https://review.opendev.org/#/c/662571
Change-Id: I4b9846a12382f3ef4acdffce8a6f2338ed45d6ff
This patch adds the Debian jobs for this role to make sure
it's always passing as well as renaming vars/ubuntu.yml to
vars/debian.yml
Depends-On: I9a92b73c419a0dc1cca40dacfef75de61a61db94
Change-Id: I06a0726fc468067853a146494b0256bc6fdec670
This role allows the installation of Mistral alongside running
all of the API tests.
Depends-On: I2e19efd5fdcb0bdbb3d1cd5ee44f20e4807ea537
Depends-On: Ie3d8fb921dfedff0852b630a0a0af17b97c1bffa
Change-Id: I2390533690cd2c4511a272cc0834e240bb554696