* Update openstack-ansible-os_trove from branch 'master'
to b9fbaf8126fb0b5a7ab8958d50bed42f0c01789d
- Merge "Adopt for usage openstack_resources role"
- Adopt for usage openstack_resources role
With efforts to create a resources in same, unified way,
we convert tempest role to use openstack_resources
for creating and managing openstack resources, like projects, flavors,
networks, images, etc. This should reduce maintenance costs
in case of futher collection updates and unify approach.
Depends-On: https://review.opendev.org/c/openstack/openstack-ansible-plugins/+/878794
Change-Id: I848ab09f8b6c81681f0ce0b5c0cc53b5653791c5
* Update openstack-ansible-os_trove from branch 'master'
to d1d727c7521d12f9c04019d422a5bfc01490bd30
- 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: I78c71cb33f456cfd8d255446d708a1a957e32440
* Update openstack-ansible-os_trove from branch 'master'
to 05964887b8bf0327dcc59125948a0a432bb8fc91
- Define constraints file for docs and renos
Right now we are not using any constraints for docs and releasenotes builds.
This has resulted in docs job failures once Sphinx 7.2.0 has been released.
The patch will ensure that constraints are used an we should not face
simmilar issue again.
TOX_CONSTRAINTS_FILE is updated by Release bot once new branch is created,
so it should always track relevant constraints.
Some extra syntax-related changes can apply, since patch is being passed
through ConfigParser, that does not preserve comments and align indenting.
Change-Id: I8c1c5c930a72ffd0d79ffeab46421c04b7ced0ca
* Update openstack-ansible-os_trove from branch 'master'
to 045f45c12c46aa92ecea7d12a010fe50179cc5a2
- 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: Iaab0ad50fd65287094522f77283a0112859d7730
* Update openstack-ansible-os_trove from branch 'master'
to c012c28a96ae66bfaeb99ec70734e7ac50ecff06
- Merge "Add TLS support to trove backends"
- Add TLS support to trove backends
By overriding the variable `trove_backend_ssl: True` HTTPS will
be enabled, disabling HTTP support on the trove backend api.
The ansible-role-pki is used to generate the required TLS
certificates if this functionality is enabled.
Depends-On: https://review.opendev.org/c/openstack/openstack-ansible/+/879085
Change-Id: I15223354a28f0cc6c203f0cb3a19b9af834d4158
* Update openstack-ansible-os_trove from branch 'master'
to 62977e30f69b4bfb351dd588cb767783b6b927f7
- Ensure service is restarted on unit file changes
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: I5ba33177a121d75e92a929e5bd81cfd4872ef406
* Update openstack-ansible-os_trove from branch 'master'
to 7b326d50c7d8b645c4e3db93cc2e14baa1863c3c
- Adopt project_info fetch to collection 2.0
With ansible-collection version 2.0 return of project_info module
has changed. We need to adopt usage of module return to the new format.
Change-Id: Ib4f3ced7f2175e5187f8c16f88fbfbcb3a472d0b
* Update openstack-ansible-os_trove from branch 'master'
to fde458164b4c4536466f7609991324a3f051d35d
- Update master for stable/zed
Add file to the reno documentation build to show release notes for
stable/zed.
Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/zed.
Sem-Ver: feature
Change-Id: I7cd73a8e8eccf28e3991913a35aa3ac9e847774f
* Update openstack-ansible-os_trove from branch 'master'
to 27880b4b50511ed57cf9f620613b9513a14a1e63
- Change networks_info output structure
With commit [1] to collection output structure of networks_info module
has been changed. With that we adpot to the new format.
[1] 9272146cf7
Change-Id: Ia0d50b96a4af59352a89c566137d8b0208338b6b
* Update openstack-ansible-os_trove from branch 'master'
to 3ddd45d335cc930697b4fda687878457b84cea9c
- Support service tokens
Implement support for service_tokens. For that we convert
role_name to be a list along with renaming corresponding variable.
Additionally service_type is defined now for keystone_authtoken which
enables to validate tokens with restricted access rules
Depends-On: https://review.opendev.org/c/openstack/openstack-ansible-plugins/+/845690
Change-Id: I7b01de89b459b4992ed9531e6c81259af21ba997
* Update openstack-ansible-os_trove from branch 'master'
to 6dff6afa76649247cd412558a64a4455b4a1e112
- Switch sphinx language to en
With sphinx release of 5.0.0, they changed default for language variable
to 'en' from None. With that current None valuable is not valid and should
not be used.
Change-Id: Iabdc99ad150ea318263b4c384b26160c4b6c816a
* Update openstack-ansible-os_trove from branch 'master'
to 735f536e01b1bc67a15f74d068f7d5f223114414
- Merge "Use common service setup tasks from a collection rather than in-role"
- Use common service setup tasks from a collection rather than in-role
Change-Id: I02152618bd19800316b875f04da9e907f3446510
* Update openstack-ansible-os_trove from branch 'master'
to 910fd589b78aac1c3be8cc7b751688e794333797
- Refactor use of include_vars
Use a first_found lookup instead of a with_first_found loop so that
the 'paths' parameter can be used.
This ensures that only vars from the role are included, and not vars
from a parent calling role. This can happen when a parent role has
a higher priority vars file available for inclusion than the role
it calls.
Change-Id: I41a360e6f99ecd0ca5e4c13888bff4f363d8bc33
* Update openstack-ansible-os_trove from branch 'master'
to ebc07a44e739a4d52429f27c336f6b014d3cb685
- Database connection pooling improvements
- Implemented new variable ``connection_recycle_time`` responsible for SQLAlchemy's connection recycling
- Set new default values for db pooling variables which are inherited from the global ones.
Depends-On: https://review.opendev.org/c/openstack/openstack-ansible/+/819424
Change-Id: Ie9591c96d1e5c8f4dcf04524c04056934ceb00db
* Update openstack-ansible-os_trove from branch 'master'
to d1e1b651441b95ea855c89a0bfa005d30451284e
- Use config_template as a collection
Since we still use ceph-ansible that has their own implementation of
config_template module it's worth to use mentioned module as a collection
explicitly.
Depends-On: https://review.opendev.org/c/openstack/openstack-ansible/+/819814
Change-Id: I377c7b182861a8c53c3ab43690c2bed0d648f3ae
* Update openstack-ansible-os_trove from branch 'master'
to b681a87ffe6672e76ea36d30a9fe205b8d644946
- Merge "Drop config_template from role"
- Drop config_template from role
Change-Id: Ie9778bbd241805b81699d447247a04a0a7323a6b
* Update openstack-ansible-os_trove from branch 'master'
to 8e72167d70e27cb2200e255a019d49e88c35bc40
- Refactor galera_use_ssl behaviour
With PKI role in place in most cases you don't need to explicitly
provide path to the CA file because PKI role ensures that CA is trusted
by the system overall. In the meanwhile in PyMySQL [1] you must either
provide CA file or cert/key or enable verify.
Since current behaviour is to provide path to the custom CA we expect
certificate being trusted overall. Thus we enable cert verification when
galera_use_ssl is True.
[1] 78f0cf99e5/pymysql/connections.py (L267)
Change-Id: I27bbc7b97a2fec235d43b4ca502a3667450dc1fa
* Update openstack-ansible-os_trove from branch 'master'
to 717d0eeab9ad545147436bba5aed35c2d15a0e1c
- Changed minversion in tox to 3.18.0
The patch bumps min version of tox to 3.18.0 in order to
replace tox's whitelist_externals by allowlist_externals option:
https://github.com/tox-dev/tox/blob/master/docs/changelog.rst#v3180-2020-07-23
Change-Id: I84c80aa01542eef2904c8a620ed929b13963d7f2
* Update openstack-ansible-os_trove from branch 'master'
to 9f1416dd12741015f90a597ed0c1fe116cc09999
- Replace linters test with integarted one
We've created integrated linters check job a while back and it's successfully
working for several releases. At the moment we experience difficulties
with future maintenance of the linters check from the openstack-ansible-tests
repo. So instead of fixing current one, we replace it with modern version of
the test.
Change-Id: I2587d1c6ec05d5a31a69143eecc16f7b84dce669
* Update openstack-ansible-os_trove from branch 'master'
to 6900ab9bf47172cfe1bb8483f7fcc96a33f003d2
- Merge "Do not override service project description"
- Do not override service project description
By default OSA shares `service` project across services. So we should
not override _project_description with services
Change-Id: I0e194c5bf0ae4de1c9dd906c36955b6217d3f601
* Update openstack-ansible-os_trove from branch 'master'
to 21619ca389f197979f9b40b2c7732aa03343606d
- Adjust service restart handlers
We should make service restart handlers more universal, since
there might be cases where api and taskmanager are placed on different
hosts. So we should restart services only when they are present, and
filtered_trove_services helps us here as defines only services that
should exist on the host.
This also align handler with other services and fix taskmanager restart
as it is missing now but conductor is restarted twice instead.
Change-Id: Ia5c92f312a773c88563c61bba327f07ef369d62c
* Update openstack-ansible-os_trove from branch 'master'
to 2a4ec0de84c45d5b64f082309d34cf9b6c266f87
- Merge "[doc] Document how to use separate RabbitMQ cluster"
- [doc] Document how to use separate RabbitMQ cluster
Since Trove requires guest network to be passed to the rabbitmq it makes
sense to use standalone rabbitmq cluster and instruction about how to do
might be useful
Depends-On: https://review.opendev.org/c/openstack/openstack-ansible/+/784780
Change-Id: Ibbc6faa2a5d5b3af39db9ae214ba9087a777a0eb
* Update openstack-ansible-os_trove from branch 'master'
to 418be1cebe1f90e9b72e05696bf011e66b0f7031
- Merge "Update trove configuration"
- Update trove configuration
We haven't payed attention to the trove for a while and we need to
align configuration with current state of the service.
trove-conductor and trove-taskmanager configs are not
loaded by trove services anymore (at least by default), so we merge all
options into trove.conf
Also defaults and deprecated options are dropped from the config.
We implement bunch of new variables to cover missed logic and
some usecases.
Depends-On: https://review.opendev.org/c/openstack/openstack-ansible/+/784565
Depends-On: https://review.opendev.org/c/openstack/openstack-ansible/+/784113
Change-Id: I2ba758de38ed3fee10fe1485aa25621eddbf9046
* Update openstack-ansible-os_trove from branch 'master'
to 0de33a024358d68a2e37bb2e84a86d42b03cc0de
- Use uWSGI for trove-api
This migrate trove-api to usage of the uwsgi from native service to
align with other service way of deployment and since that's how service
is tested in devstack.
Change-Id: I83ad3af282942ff9714757e863f393894ac35f45
* Update openstack-ansible-os_trove from branch 'master'
to a26006250417b7501ecccb586a06b9ca5456a1b6
- Merge "Change default pool subnet"
- Change default pool subnet
To match documentation and general pattern of service networks,
we change default subnets that will be used by trove instances.
Change-Id: I7a0f23b0cdd314206f299a860685e2f96ac3f625
* Update openstack-ansible-os_trove from branch 'master'
to ec9de1702a571514c77d48e9c91aeabd11a57ee6
- Merge "Use ansible_facts[] instead of fact variables"
- Use ansible_facts[] instead of fact variables
See https://github.com/ansible/ansible/issues/73654
Change-Id: I29de46e830e0a63c1da90043ec08c5dcc56b7e3e
* Update openstack-ansible-os_trove from branch 'master'
to 875954ef3cc800ece63fbbe41077fbe4ee271b2f
- Add image upload option
Allow deployers to manage trove guestimages with trove role. This will
allow us to correctly test role with tempest, since we were not able to
upload images with tags otherwise
Change-Id: If2f550ef09cd01ec5eab485f0d81ecfaf32f924f
* Update openstack-ansible-os_trove from branch 'master'
to f2e346cfcef8c3777c062d24d40485013d3b48cb
- Merge "[reno] Stop publishing release notes"
- [reno] Stop publishing release notes
Since we copy all release notes to the integrated repo there is not need
in publishing release notes for each repository. We should only verify their
validity and linting.
Change-Id: I760b42b9f2c80932e3286d8c686d10b90f3f03b5
* Update openstack-ansible-os_trove from branch 'master'
to d87107621af5c068587981422f8b4477bad4dea6
- Merge "[goal] Deprecate the JSON formatted policy file"
- [goal] Deprecate the JSON formatted policy file
As per the community goal of migrating the policy file
the format from JSON to YAML[1], we need to replace policy.json to
policy.yaml and remove deprecated policy.json.
config_template has been choosen instead of the copy, since it can
properly handle content that has been lookuped.
We make a separate task not to restart service when it's not needed.
[1] https://governance.openstack.org/tc/goals/selected/wallaby/migrate-policy-format-from-json-to-yaml.html
Change-Id: I866fea573429ddcedf1547d9fa8a7caae448eca2
* Update openstack-ansible-os_trove from branch 'master'
to d14cd8cea43ff32a4e9213cc8eabca5b3704cb9d
- Retry on creating trove network
For pretty weird reason, first request to create a network to the neutron
fails with 500 without reasonable stack trace. Re-running request succeeds.
So we adding retries to the task which resolves metnioned issue.
Change-Id: I5b09dc3bc52d98df756cdc60c5e94cd1e7344e9a
* Update openstack-ansible-os_trove from branch 'master'
to 0650e1d2ead89ea71bdb33c3650a20aa76f020d6
- Merge "Remove references to unsupported operating systems"
- 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: Ibec329fa5dca39222519b99ad27d78b46c11633e
* Update openstack-ansible-os_trove from branch 'master'
to 3791237a5187290ff6e32953b18119b01d26b599
- Use new openstack.cloud collection names
os_ prefixed module names are deprecated for a while and will be removed
Current usage generates a warning for users.
Change-Id: Ie473569d866d6d8a9995f73f7cf5472e60589523
* Update openstack-ansible-os_trove from branch 'master'
to 1b779c231c13c4e2c4413c3ab2e9952d30ce623c
- Move trove pip packages from constraints to requirements
This is necessary to use the new pip resolver
Change-Id: Icdc485613655ffd0c4a69839fdf555340435d2ae
* Update openstack-ansible-os_trove from branch 'master'
to 0629e28768b14ca976cceb4320add64d76420384
- Use global service variables
Instead of overriding each service separatelly it might make
sense for deployers to define some higher level variable that
will be used first or fallback to default variable.
Change-Id: Ic2fa270a3582db3da01b3c449fbdd8c2d5045062
* Update openstack-ansible-os_trove from branch 'master'
to f37cb8868032b86fbc6aa843321c00b10441eafd
- Reduce number of processes on small systems
Even the most modest 4C/8T system would run with the maximum 16 processes
due to the calculation being VCPU*2.
We devide amount of CPUs to number of threads for hyperthreaded CPUs
Change-Id: I2ae9039871158f8a94e3f96694ddadea3005537b
* Update openstack-ansible-os_trove from branch 'master'
- Replace deprecated UPPER_CONSTRAINTS_FILE variable
UPPER_CONSTRAINTS_FILE is deprecated and TOX_CONSTRAINTS_FILE is
the new environment variable name that replaces it [1].
This allows to use upper-constraints file as more
readable way instead of UPPER_CONSTRAINTS_FILE=<lower-constraints file>.
[1] https://zuul-ci.org/docs/zuul-jobs/python-roles.html#rolevar-tox.tox_constraints_file
[2] https://review.opendev.org/#/c/722814/
Change-Id: Iad47cff6b33ccc82bf9c7f23c23c779568951724
* Update openstack-ansible-os_trove from branch 'master'
- Merge "Define condition for the first play host one time"
- 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.
Depends-On: https://review.opendev.org/755484
Change-Id: If7f26c8020d4b02ab9e82dcb69a7ba91a3b5d145