This looses dependency using the new openstackclient tag, which
requires only packages actually related to openstack CLI.
Also, the troveclient package is required by trove so updating it
should restart the services.
Depends-on: https://review.opendev.org/899594
Change-Id: I52bf30c3ce857509ff1463abb7a493eb8dd48b97
The trove_manage function is quite redundant because it requires
the full argument even including the trove-manage command itself.
This refactors the function using the :commands definition.
Change-Id: Icce7f9a984484c64fe4fec63cfaa93b50d3b4f14
When SRBAC is completely implemented according to the current spec,
each service user no longer has full admin privilege but has access
limited to the actual requirement. This means that we are no longer
able to use service users to create resources.
This change is a prep-work to get rid of usage of the service user,
currently loaded from authtoken parameters in the .conf file. Now
each providers loads clouds.yaml file placed in /etc/openstack/puppet.
Change-Id: I198e2cc089a12e1ef260d78665f274db9149f9c9
The status argument of datastore_version update command accepts only
0 or 1. This ensures a correct value is used by property validation
instead of attempting to execute the command with an invalid value.
Change-Id: I3eeace41c677157d6b5913a7ab9092e3456106a7
datastore version can't be used until the version is registered but we
can't register the version before we register datastore before applying
catalog. This makes version optional to avoid that dependency look.
Partial-Bug: #2007961
Change-Id: Ieba9c10b49f41980555e2734bb29415fcf0b585f
The trove_datastore_version resource fails if the datastore is not yet
created. This fixes that problem.
Change-Id: I403f0ede9061eb0a9361b084ada26954250fb2e6
Since yoga relase, this module no longer uses separate config files for
individual daemons but use the single trove.conf [1].
This change removes the remaining resource types for the separate
.conf files, which should have been removed by the cleanup patch[2].
[1] f1c11c68d56e4f1ad5125fa0df04ab91d929cd33
[2] 4d87fa2c694adb33607fa33273faa849792351b1
Change-Id: I66c1ccedc2ef1a73b5ee3f053b843e97be0d59b4
Previously puppet-trove creates separate config files for each service
but these individual files have been removed from Trove by [1].
This change follows that decision and merge these three files into
the single trove.conf file.
[1] https://review.opendev.org/679043
Change-Id: I23c01acd9439335abb706f2528684d4ec473247d
This change replaces trove CLI by openstack CLI, so that the providers
can leverage clouds.yaml generated by puppet-keystone.
Change-Id: Ib848ce76f842255242ef099c0fc04b06ec5e1706
The api-paste.ini accepts not only "=" but also ":" and some services
like Barbican have been using ":" for their default api-paste.ini
files.
[composite:main]
use = egg:Paste#urlmap
/: barbican_version
/v1: barbican-api-keystone
This change allows users to use ":" so that they can update the ini
files with keeping it consistent with the default fules
Depends-on: https://review.opendev.org/813614
Change-Id: I372a41b5fc6c6632a0a1a615f23d69ab6203dfac
This replaces the provider implementation of aodh_config type so that
MultiStrOpt, which is used by several options like
- oslo_messaging_notifications/driver
- oslo_policy/policy_dirs
are handled correctly.
Change-Id: I4baeeb5f8f65743a3edc01db69909cec5cd9b8e6
When reading credentials from the configuration's keystone_authtoken
section www_authenticate_uri was used as URL for Keystone.
As www_authenticate_uri is a public endpoint that is not necessarily
reachable for the Puppet agent, this change uses the more appropriate
auth_url as Keystone URL.
Change-Id: I231f578db145956ab61a514106a5e714a055a1cb
Option auth_uri from group keystone_authtoken is deprecated[1].
Use option www_authenticate_uri from group keystone_authtoken.
[1]https://review.openstack.org/#/c/508522/
Change-Id: If7049561c6a9e94fc5074112db9597cd8cb6996e
Depends-On: I4c82a63baabd6b9304b302c97cd751a0103d8316
Depends-On: I0dd36ef1f1f5dcdc57413736ecb8f2555712c36d
Closes-Bug: #1759098
Currently, trove auth provider has been implicitely using
keystone v2.0 by not declaring DOMAIN variables.
Now, api v2.0 is being deprecated and we need to use API v3.
Change-Id: Id2ed9ce08199d95e9438918ffda3417a1ee085f2
In trove::api, use keystone::resource::authtoken to configure
keystone_authtoken section in trove.conf, with all parameters required
to configure keystonemiddleware.
This patch will allow to deploy Trove to use Keystone v3
authentification.
Some deprecations:
- trove::api::keystone_tenant is deprecated in favor of trove::keystone::authtoken::project_name.
- trove::api::keystone_user is deprecated in favor of trove::keystone::authtoken::username.
- trove::api::keystone_password is deprecated in favor of trove::keystone::authtoken::password.
- trove::api::identity_uri is deprecated in favor of trove::keystone::authtoken::auth_url.
- trove::api::auth_uri is deprecated in favor of trove::keystone::authtoken::auth_uri.
Change-Id: I808ebda1c4ec3a5b2ed294eb8af4eecafa861051
Closes-Bug: #1604463
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
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