The cloudkitty-storage-init command by default loads
/etc/cloudkitty/cloudkitty.conf. Removing the override allows us to use
additional paths such as cloudkitty.conf.d in the future.
Change-Id: I3109005c76a1ffd8f23b3aebd92861a0a4fb419a
Recent update in rspec-puppet removed some of the config interfaces for
old puppet versions[1]. This drops usage of these interfaces to resolve
the following error in unit tests.
```
An error occurred while loading ./spec/unit/provider/manila_spec.rb.
Failure/Error: c.manifest_dir = File.join(fixture_path, 'manifests')
NoMethodError:
undefined method `manifest_dir='...
```
[1] 316d95923c
Change-Id: I891b85fdba76186a2b97683526ac05d483dc6ff9
We've seen workers of cloudkitty-processor continuously crash with
the following traceback logged in syslog
Traceback (most recent call last):
File "/usr/lib64/python3.9/multiprocessing/process.py", line 315, in _bootstrap
self.run()
File "/usr/lib64/python3.9/multiprocessing/process.py", line 108, in run
self._target(*self._args, **self._kwargs)
File "/usr/lib/python3.9/site-packages/cotyledon/_utils.py", line 63, in _bootstrap_process
target(*args, **kwargs)
File "/usr/lib/python3.9/site-packages/cotyledon/_service.py", line 161, in create_and_wait
sw = cls(*args, **kwargs)
File "/usr/lib/python3.9/site-packages/cotyledon/_service.py", line 175, in __init__
self.service = config.service(worker_id, *args, **kwargs)
File "/usr/lib/python3.9/site-packages/cloudkitty/orchestrator.py", line 552, in __init__
self.fetcher = driver.DriverManager(
File "/usr/lib/python3.9/site-packages/stevedore/driver.py", line 54, in __init__
super(DriverManager, self).__init__(
File "/usr/lib/python3.9/site-packages/stevedore/named.py", line 78, in __init__
extensions = self._load_plugins(invoke_on_load,
File "/usr/lib/python3.9/site-packages/stevedore/extension.py", line 218, in _load_plugins
self._on_load_failure_callback(self, ep, err)
File "/usr/lib/python3.9/site-packages/stevedore/extension.py", line 206, in _load_plugins
ext = self._load_one_plugin(ep,
File "/usr/lib/python3.9/site-packages/stevedore/named.py", line 156, in _load_one_plugin
return super(NamedExtensionManager, self)._load_one_plugin(
File "/usr/lib/python3.9/site-packages/stevedore/extension.py", line 242, in _load_one_plugin
obj = plugin(*invoke_args, **invoke_kwds)
File "/usr/lib/python3.9/site-packages/cloudkitty/fetcher/keystone.py", line 71, in __init__
auth_url=self.auth.auth_url)
AttributeError: 'NoneType' object has no attribute 'auth_url'
This adds the fetcher_keystone options to avoid that error.
Change-Id: I27530c279afd21f8b32ee6aa44ec194ac019887c
The class parameter has been ignored and the given value was not put
in the config file properly. This fixes the problem.
Change-Id: I764a98553b766e64fad71d418f4158a47e413282
This updates the manifest used in acceptance tests according to
the recent implementations in p-o-i manifests.
Change-Id: I9fa8ecf4bc799a086388372a5edd0419053e81ff
This removes a few parameters deprecated in favor of the new
cloudkitty::fetcher::keystone class.
[1] 4e6806f54f
Change-Id: I0e363d7269bfea31464d8d74b07828bebd792c3a
The coordination_url option can sometimes contain secrets.
For example when redis coordination backend is used and authentication
is enabled in redis, the plain redis password is put as an URL element.
[orchestrator]
coordination_url=redis://:password@127.0.0.1:6379
Closes-Bug: #2012246
Change-Id: Iba1e7715b290ee4c104f11221e250b23936b12dc
The option has been managed by the underlying puppet-oslo module but
has not been configurable. This introduces the parameter to customize
the option.
Change-Id: Ia4e917d879a175c1919131bfa0bee9d679fe1a76
Add parameters for advanced logging configurations in Apache to
support piped logging and support for syslog (via mod_syslog
available in Apache >= 2.5.0)
Co-Authored-By: Andy Botting <andy@andybotting.com>
Change-Id: Iee4cf4b3e20d16624b89f6b004cc857ed5288510
The puppetlabs-apache module is enforcing more strict data type
validation[1].
This change updates the default values to adapt to that change.
[1] f41251e336
Closes-Bug: #1983300
Depends-on: https://review.opendev.org/851652
Change-Id: Idd4918618831ffab98db91fa90ae493775373bc9
This reverts commit 62e136b037.
Reason for revert:
puppet-postgresql 8.1.0 was released and now the module supports RHEL 9
(and CentOS 9 effectively).
Note:
This change adds the service_provider fact in test fact data because
it is required by puppet-postgresql.
Depends-on: https://review.opendev.org/850705
Change-Id: Ibe9ea9a9442ec69be226e150b424401ff733128b
The value with a white space should be accepted instead of being
rejected. This change fixes the wrong test case description and makes
sure the description explains what is actually tested.
Change-Id: I07e423693b88b71d98f596dea18bcc0884092955
The headers option in apache::vhost is required in some case, for
example when adding the X-XSS-Protection header. This change allows
customizing the option for the api vhost.
This change also adds support for request_headers so that both request
headers and response headers can customized.
Change-Id: I4ff7ea57f9c1b29b2209506969497b773cef02ec
This fixes the following error raised in unit tests when the tests
run on Ruby 3 (in CentOS Stream 9).
NameError:
uninitialized constant TRUE
Change-Id: Ib62b8e921b350971732f85307c5bdcb1e8fe12f5
During the previous cycle, a warning message was added to inform users
of this change.
Now the default value is updated so that SSL is disabled by default.
Change-Id: I705dabab19974c2d9323e49051c8952e6d537820
After spending huge effort to understand the exact requirements to
enforce SRBAC, we learned it's very difficult to find the required
scope in each credential. This requires understanding implementation of
client-side as well as server-side, and requirement might be different
according to the deployment architecture or features used.
Instead of implementing support based on the actual implementation,
this introduces support for system scope credentials to all places
where keystone user credential is defined, and make all credential
configurations consistent.
Change-Id: I50c029b07a30c201b4d9bd4821265d4bf465ba9f
The puppt-postgresql module does not support CentOS 9 yet and requires
some version parameters to be run on CentOS 9. This change disables
unit tests requiring that module, until the module supports CentOS 9.
Change-Id: If26b9d1a31028bb56106a2cce0faadcc7d38757f
This change introduces a separate new class to manage [orchestrator]
parameters. The max_workers parameter in the processor class is
deprecated in favor of that new class.
Change-Id: Icd30923802064aec6a3ae9716b2ae30665998aae
This replaces the provider implementation of cloudkitty_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: Iefdfa5b83cb1f5ff691cc38e0f691babac9bdfb0
This change is the first step to support secure RBAC and allows usage
of system scope credentials for Keystone API request.
This change covers the following two items.
- assignment of system scope roles to system user
- credential parameters for authtoken middleware
Depends-on: https://review.opendev.org/804325
Change-Id: Ia12867af22002b6a6d1e40e9ded60c92d493023b
The authtoken parameters are not managed directly but managed by
the keystone::resource::authtoken class. Thus we should avoid testing
parameters directly otherwise any change in the resource type can
cause test failures.
Change-Id: Ic6864a4713ad5e9c2bc865d201e5e133866d9e60
This change refactors how the dependent libraries are loaded during
unit tests, and load the libraries in the base spec_helper to avoid
duplicate and redundant implementations.
Change-Id: I4a33c13c50a4686909b082ea0093e5e848fd731f
This change removes direct reference to some classes in
puppetlabs-apache. Details are explained below.
- The api class doesn't need access to anything defined in
apache::params
- The following classes are included by the openstacklib::wsgi::apache
resource type, and current inclusions are just redundant.
Change-Id: I110615c7cd4759e17a96c45d58402aba9216c05f