Commit Graph

21 Commits (master)

Author SHA1 Message Date
Takashi Kajinami 0541ab7507 trove_datastore_version: Validate status
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
3 months ago
Takashi Kajinami ead07878ba trove_datastore: Make version optional
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
3 months ago
Takashi Kajinami 4e25bbbe9f trove_datastore_version: Handle missing datastore
The trove_datastore_version resource fails if the datastore is not yet
created. This fixes that problem.

Change-Id: I403f0ede9061eb0a9361b084ada26954250fb2e6
3 months ago
Takashi Kajinami ea9d67ad7b Ensure trove services are up before managing datastore
... because these resource types require API access.

Change-Id: Ibf90912fef56fcbe81bbd40691a7fd172fce9b5b
3 months ago
Takashi Kajinami 4d59d16be5 Remove resource types for per-daemon config files
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] f1c11c68d5
[2] 4d87fa2c69

Change-Id: I66c1ccedc2ef1a73b5ee3f053b843e97be0d59b4
11 months ago
Zuul 32d22efab5 Merge "Use single trove.conf for api, conductor and taskmanager" 1 year ago
Takashi Kajinami f1c11c68d5 Use single trove.conf for api, conductor and taskmanager
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
1 year ago
Takashi Kajinami 93551f863c Use openstack CLI instad of trove CLI
This change replaces trove CLI by openstack CLI, so that the providers
can leverage clouds.yaml generated by puppet-keystone.

Change-Id: Ib848ce76f842255242ef099c0fc04b06ec5e1706
1 year ago
Takashi Kajinami 538f6d5237 Allow customizing separator for api-paste.ini
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
1 year ago
Takashi Kajinami 700c7dac77 Add support for MultiStrOpt
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
1 year ago
Takashi Kajinami 26944d9e50 Use anchor to require necessary packages
... so that correct packages are required without re-defining them in
resource implementations.

Change-Id: I9e1e3443659c41fbacb50639cb605686729eb2a2
3 years ago
Matthias Bastian 926dd39833 Make providers use auth_url for authentication
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
5 years ago
ZhongShengping 4e3341f589 Deprecate auth_uri option
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
5 years ago
Alfredo Moralejo e156c4136f Switch trove auth provider to keystone v3
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
6 years ago
Alexey Deryugin b51e789701 Configure keystone authtoken options
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
7 years ago
Lukas Bezdicka 0f3cbadfff Remove trove ubuntu package hack
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
8 years ago
Yanis Guenane c8527beace Reflect provider change in puppet-openstacklib
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
8 years ago
Sylvain Baubeau 8d37ba9451 Add trove_datastore and trove_datastore_version types
Change-Id: If739b4b26ef98ae9ba09affd4f2eeef4ad1b55fd
9 years ago
Sebastien Badia 851537f8c5 Fix trove_api_paste provider 9 years ago
Sebastien Badia 170af9ad61 type/providers: Introduce basic type/provider for puppet-trove
* added type provider for trove/api-paste.ini, trove-guestagent.conf,
  trove-taskmanager.conf, trove-conductor.conf, trove.conf
9 years ago
Emilien Macchi 0c00877716 Prepare Type & Provider
Signed-off-by: Emilien Macchi <emilien.macchi@enovance.com>
9 years ago