Commit Graph

161 Commits

Author SHA1 Message Date
Zuul f023fca49e Merge "Ensure python-redis is install" 2024-04-11 15:30:23 +00:00
Takashi Kajinami 0cc6468f2b Ensure python-redis is install
The python-redis package is an optional dependency and needs to be
installed explicitly in Ubuntu or Debian. (The zaqar package in RDO
has additonal dependency to require python-redis now).

Change-Id: I5c768a4ed60909f2e764ed6a39c372814b50c58b
2024-04-08 18:35:04 +09:00
Takashi Kajinami f7793ae10d cache: Support new redis options
The oslo.cache 3.7.0 release introduced some options for redis backend
and redis sentinel backend. This introduces support for these
parameters.

Depneds-on: https://review.opendev.org/910629
Change-Id: I88b6b3c41b6f8691720b6bf9ccd5999d7a24f68c
2024-04-03 00:20:22 +09:00
Takashi Kajinami d3fe8601ba Refactor resource dependencies
This refactors resource dependencies to avoid unnecessary dependencies
across services. For example zaqar service does not require cinder db.

Change-Id: I8b2c64ab4896c6fbb407eaa58e99056da3b5170c
2024-03-13 00:24:04 +09:00
Takashi Kajinami 90cadc8ac2 cache: Support options for SASL mechanism in memcached
Depends-on: https://review.opendev.org/910122
Change-Id: I41e1d14bf21139c590cc241c63f45dec7d022df6
2024-03-05 14:14:26 +09:00
Takashi Kajinami 04e9a3657a Add HashClient retry options for the dogpile.cache backend
This patch specifies a set of options required to setup the HashClient
retry feature of dogpile.cache cache backend.

Original oslo.cache change:
https://review.opendev.org/c/openstack/oslo.cache/+/824944

Co-Authored-By: Hervé Beraud <hberaud@redhat.com>
Depends-On: https://review.opendev.org/826870
Change-Id: Iefecbae22a80e5218b43067536378beff72badbb
2024-03-05 13:41:58 +09:00
Takashi Kajinami f792373d70 Add cache client retry options for the pymemcache backend
This patch specifies a set of options required to setup the retrying
wrapper feature of pymemcache (dogpile.cache) cache backend.

Original oslo.cache change:
https://review.opendev.org/c/openstack/oslo.cache/+/803747

Co-Authored-By: Hervé Beraud <hberaud@redhat.com>
Depends-On: https://review.opendev.org/826869
Change-Id: Ia0fa98ff49d63332eff8e4e377402d2527b1c595
2024-03-05 13:41:30 +09:00
Takashi Kajinami 3042965cca Add support for oslo.reports options
Depends-on: https://review.opendev.org/804804
Change-Id: I2216ae2256a9898bc663157698445022382b4ff5
2024-01-30 00:50:14 +09:00
Takashi Kajinami 9e48b8be88 swift: Improve parameter support coverage
Change-Id: I017808988071f4cd52186bc1529d07958867a5fe
2024-01-14 19:21:08 +09:00
Takashi Kajinami f8d59f0e35 Make password required
... because it is actually required so that zaqar can authenticate with
keystone.

Depends-on: https://review.opendev.org/903852
Change-Id: I8e5ea733f10abfdcc5da0699311222cfbe6cbf4e
2023-12-18 17:32:50 +09:00
Takashi Kajinami 0470ca135b Support [cache] memcache_pool_flush_on_reconnect
Depends-on: https://review.opendev.org/902861
Change-Id: Ic5e40835abb923d2e9f2243e7b8f7241ab924670
2023-12-14 17:58:52 +09:00
Zuul 47c5598193 Merge "sqlalchemy: Ensure backend package is installed" 2023-11-17 18:30:04 +00:00
Takashi Kajinami 30d6d4c102 sqlalchemy: Ensure backend package is installed
Some of the backends supported by sqlalchemy (eg mysql + pymysql)
require additional packages. This ensures the required packages are
installed using the oslo::db defined type.

Change-Id: I7fc4cea95a0a7ecba7def9db4f01c16ef1cfa2f3
2023-11-16 02:02:40 +09:00
Takashi Kajinami 1954331d54 Do not hard-code default stores
... as is described in the parameter descriptions.

Change-Id: Iabdf90bf6cf4cede7fe705032d5a65dabc69b8e2
2023-11-15 00:50:50 +09:00
Takashi Kajinami bfc5dac613 Do not restart services after policy file changes
The oslo.policy library has implementations to detect change in policy
rules and reload the new rules without service restart.

Change-Id: I96e2447ddf1a3e5c043bbc3529cdd7dcc3316d2d
2023-09-11 12:36:06 +09:00
Takashi Kajinami 69c1e88fd1 Ensure purge_config takes a boolean value
The purge_config parameters only accept boolean values. This enforces
that using the typed parameters.

Change-Id: Ie504006737f094704bbff8499ac9ddbb9e8f75f5
2023-07-22 23:53:37 +09:00
Takashi Kajinami a9d4fb7df1 authtoken: Make password required
The password parameter is not really optional. This makes it
a required parameter to give more sensible validation error.

Change-Id: I2df5e93dc3e428928d85b70d8666b8b44155298b
2023-07-12 22:09:08 +09:00
Tobias Urdin 7d5258c9a9 Add per module policy service refresh
Updating the policies for this project should only
refresh the services that reads it.

Change-Id: Id77056322ad610006ac0f216870d679b250ab702
2023-06-26 00:06:57 +02:00
Takashi Kajinami 6d2b3f4d04 replace validate_legacy with proper data types
the validate_legacy function is marked for deprecation in
v9.0.0 from puppetlabs-stdlib.

Change-Id: I0808e8a311121e281b20f7493ae6bde6ef0a6929
2023-06-20 13:31:56 +09:00
Takashi Kajinami 15124a60a2 Add strict validation about boolean parameters
This ensures the parameters used by if-else logic accept only boolean
values because non-boolean can result in unexpected behavior.

Change-Id: I8c2bd97681130da33974e4ea707f77f44e160ce2
2023-03-19 22:40:26 +09:00
Takashi Kajinami 9ae179cd51 Replace legacy facts and use fact hash
... because the latest lint no longer allows usage of legacy facts and
top scope fact.

Change-Id: If6eb852b44673ea6b6a629aa1381b78bb6ae5646
2023-03-02 12:51:11 +09:00
Takashi Kajinami d72accf703 Expose policy_default_rule
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: Iac1ebf8af8900e9e351ef359f1c5c2e4c1704d00
2023-01-23 14:43:31 +09:00
Takashi Kajinami 48b9f85338 Use standard parameter description format for wsgi::apache
Currently parameter description of the <module>::wsgi::apache classes
are formatted differently in individual modules, and this is making
the maintenance effort quite difficult.

This change updates the description format following the standard one
we are globally using in our modules to reduce undesired differences
between modules.

Change-Id: I73044b81e5ea8b41693718c3f3b900237300698e
2022-08-28 00:28:59 +09:00
Takashi Kajinami a46ebb674b Fix typos in parameter descriptions
Change-Id: I79e28bffadce8b140896b7304addf1c6cb9d0ebe
2022-08-28 00:28:21 +09:00
Takashi Kajinami d34f26c319 Add Apache WSGI logging parameters for pipe/syslog
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: If07cac9bc41d173baeadbefb4dad3612c32ee369
2022-08-26 17:46:20 +09:00
Takashi Kajinami e803994bbf Adapt to new type validation in puppetlabs-apache
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: Ic4160b208ff1d728cab2b77c9261cb18deec8c27
2022-08-02 23:15:39 +09:00
Takashi Kajinami 5d3e8252d6 Expose headers option of apache::vhost
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: Ie5f2669a8686a3546b652251881615e0e18bf433
2022-07-01 11:37:02 +09:00
Takashi Kajinami ff956c7a5b Remove deprecated parameters for websocket service user
... because these parameters were deprecated during Yoga cycle[1] and
have had no effect since then.

[1] 7eeb46e04d

Change-Id: I6b2ee2e3e9fb633f5f3c6fa9b2e4106e5430484e
2022-06-19 22:04:51 +09:00
Takashi Kajinami f25c60a03b Fix missing updates of deprecated parameters
This is follow-up of 7eeb46e04d and fixes
the following two points.
 - tenant_name is deprecated but a proper warning message is missing
 - password is deprecated and now is optional, but it is still
   validated

Closes-Bug: #1973315
Change-Id: I169d42dee4896843e55d4989dc440ad7e7c7ec94
2022-05-13 11:58:47 +00:00
Takashi Kajinami 411e1ea3fe apache+mod_wsgi: Disable SSL by default
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: I17cd1a7adcc09168d3f53f44787858ef1d89a0a7
2022-05-06 22:21:32 +09:00
Takashi Kajinami b25f7f6277 Avoid hard-coding OS user/group in each manifest
and replace hard-codes by definition in params.pp .

Change-Id: Iadd122b33ac826902468541263f87176a556bd30
2022-02-21 01:44:32 +09:00
Zuul abc8b1ff74 Merge "Do not define service resource when service management is disabled" 2022-02-15 10:47:23 +00:00
Zuul 862cc8b798 Merge "Fix missing service tag when httpd+mod_wsgi is used" 2022-02-15 10:47:21 +00:00
Takashi Kajinami 519643dde9 Do not define service resource when service management is disabled
Change-Id: Iabaeb38771beafaff995cebfa29ad128ed0a71e0
2022-02-10 13:59:25 +09:00
Takashi Kajinami 3505adfb00 Fix missing service tag when httpd+mod_wsgi is used
Change-Id: Ic9f4caacfd59f3a3e06cc4216fce3f298fcd9f1a
2022-02-10 13:58:53 +09:00
Takashi Kajinami f92eb34785 Ensure keystone resources are created during service startup
This change ensures keystone resources like the mistral service user
are created before completing service setup, so that we can use
the service::end anchor to ensure Zaqar service is fully available.

Change-Id: I5989b330cd55328510cc1bb20b6c00eeac18353b
2022-02-07 00:26:13 +09:00
Zuul bfd3346540 Merge "Add socket keepalive options for the pymemcache backend" 2022-01-28 09:39:45 +00:00
Takashi Kajinami 4026124a72 Add socket keepalive options for the pymemcache backend
This patch specifies a set of options required to setup the socket
keepalive feature of pymemcache (dogpile.cache) cache backend.

Original oslo.cache change:
https://review.opendev.org/c/openstack/oslo.cache/+/803716

Co-Authored-By: Grzegorz Grasza <xek@redhat.com>
Depends-On: https://review.opendev.org/807851
Change-Id: I683f1328ab68839b4877e91513cae206656a6ad2
2022-01-27 20:40:17 +09:00
Takashi Kajinami 60f1b574d9 Fix duplicate (Optional) in parameter description
Trivial-Fix

Change-Id: I2e7e87a346445b19abc0d99d10d465cecebfaa03
2022-01-27 20:37:04 +09:00
Zuul 5965ec9c5b Merge "Fix dependency to purge default vhost config" 2022-01-12 17:23:37 +00:00
Takashi Kajinami 2fb01b0a85 Fix dependency to purge default vhost config
It turned out defining dependency for openstacklib::wsgi::apache
doesn't properly enforce resource order and the default vhost file
is not purged properly.
This change adds the more explicit dependency to enforce the order
properly.

Change-Id: I5d03a133bb9d6e8a5ed67b7b06ee73608cff37ee
2022-01-11 18:54:34 +09:00
Zuul 067273d60b Merge "Disable the zaqar-messaging service user" 2022-01-05 03:03:40 +00:00
Takashi Kajinami fe7da441a6 Accept system scope credentials for Keystone API request
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: I2a54b0d0c03a98b3fe7a3a4a28051247eea7e70a
2022-01-03 15:28:31 +09:00
Takashi Kajinami 7eeb46e04d Disable the zaqar-messaging service user
The zaqar::keystone::auth_websocket class has been added to create
an independent keystone endpoint for websocket service but the service
user created by the class has never been used.
This change disables the logic to create the user and the associated
resources like roles and projects, so that only required resources are
created.

Change-Id: Iaa0042acb9fda198f10e6067523301bfd08bf249
2022-01-03 15:15:54 +09:00
Takashi Kajinami 1261e9ad08 Clean up direct dependencies on puppetlabs-apache
This change removes direct reference to some classes in
puppetlabs-apache. Details are explained below.

- The server 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: I7f2f5dbb7f7e07be611da61905201d90baee28ef
2021-12-08 23:07:06 +09:00
Zuul 768e1dc434 Merge "Install cache backend packages before starting services" 2021-12-07 18:02:45 +00:00
Takashi Kajinami 6052dfd0ff [trustee] password should be secret
Change-Id: I8a29944a53171db1d17eb598f4a16c58c71febad
2021-11-29 13:48:29 +00:00
Takashi Kajinami 4dc46e3f21 Install cache backend packages before starting services
Change-Id: I5a2d7bfa34c9003d071f08b24d2f0b6a8fd8bcd4
2021-11-29 10:29:21 +09:00
Takashi Kajinami 5bae33de89 Fix dependencies related to openstacklib::policy
Since [1] was merged, not only openstacklib::poliy::base but also
openstacklib::policy::default is included to manage the policy file.
This change ensure openstacklib::policy::default is executed after
the packages are installed.

[1] 9c04deee7f

Change-Id: Ie9dce227429a12d893b3cbbe495f604ed1b5620b
2021-11-29 10:03:19 +09:00
Takashi Kajinami cb27283f18 Use consistent format for service description
Change-Id: I0312e7258f49f2e71748fd232abcb59983e103ef
2021-11-18 14:31:27 +00:00