Commit Graph

75 Commits

Author SHA1 Message Date
Sam Morrison ac752a4ee1 Support max_password_length config option
Change-Id: Ic00419f12a922d866b490e351d0eb87c96380315
2024-04-17 09:03:25 +00:00
Takashi Kajinami da2bc869a3 Expose rabbit_transient_quorum_queue
Depends-on: https://review.opendev.org/911021
Change-Id: Ibe989d7a9bb10d6dff72b001c0e689bb029960b5
2024-03-14 09:34:06 +09:00
Takashi Kajinami 7a84c30fd1 RabbitMQ: Add support for quorum queue options
Depends-on: https://review.opendev.org/894866
Change-Id: Ia52ed95999a66efdf3eaa0f645d93595392426ac
2023-09-15 11:25:30 +09:00
Takashi Kajinami b50bfe61d0 Remove deprecated catalog_type parameter
... because it was deprecated a few cycles ago[1].

This also removes the hard-coded default of [catalog] driver because
the value currently hard-coded is same as the service default.

[1] cd9f931c45

Change-Id: Ifeadb331d118e2c6e61048b6ace6d6b3d8afcf3e
2023-06-20 15:54:32 +09:00
Takashi Kajinami f271472b48 Deprecate client class
The python-keystoneclient package removed CLI long ago so installing
the package is now useless. It provides only library implementations
and should be installed by package dependencies.

Change-Id: I46b09092847eeb821f97172e1a912ad8a1b8a2e3
2023-05-30 01:02:18 +00:00
Takashi Kajinami c39fca315c Ensure options for domain specific drivers are purged by default
... to avoid leaving these options unmaintained.

Change-Id: Ib00e93663c2fd90bf5befbd71ad896343652f027
2023-05-17 12:30:36 +09:00
Takashi Kajinami eab0404ff3 Expose executor_thread_pool_size
This option has been supported by puppet-oslo but has not been
configurable.

Change-Id: Iadb2308d8a7f6c32e01395ca17861b172217f3d6
2023-03-13 11:47:42 +09:00
Takashi Kajinami 486d7f1435 Replace legacy facts and use fact hash
... because the latest lint no longer allows usage of legacy facts and
top scope fact.

Change-Id: Ie757167eedce6fa1c99d08f96be1173871f21817
2023-03-02 12:24:38 +09:00
Takashi Kajinami b99810d6f9 Remove deprecated parameters for [ssl] options
These parameters were deprecated during the previous cycle[1].

[1] 0954fea1d6

Change-Id: I67755c4181868e137928f9444fae4be09f511c36
2022-11-18 10:43:28 +09:00
Takashi Kajinami 19b541df10 Debian: Ensure keystone service is stopped when httpd is used
This change fixes the missing logic to ensure the standalone keystone
service is stopped when httpd + mod_wsgi is used to run the keystone
service.

Change-Id: I3ae6b9192c3c3d15fbf25be5d276efbcf2e9639b
2022-09-06 13:36:11 +09:00
Takashi Kajinami c76bfbe41f Ensure key contents are hidden
By default, the file resource shows differences when the file changes.
This change disables that for the key files so that key contents are
not displayed in output.

Closes-Bug: #1979672
Change-Id: Ic0398cfbb14782ce16710a838e5428be50f2a0b3
2022-06-24 01:22:43 +09:00
Takashi Kajinami fd5b32aeb6 Make sure keystone package name is asserted
... and fix a type in a spec file.

Change-Id: Ibb80e96982f5639ef7235d4ea893d4d12c05a14c
Co-Authored-By: Rajesh Tailor <ratailor@redhat.com>
2022-06-15 20:40:49 +09:00
Takashi Kajinami 6d90c87e01 Add support for [DEFAULT] notification_opt_out
Change-Id: I0866f2d546b9f23acef5a7e15bdf334ff781655d
2022-05-09 09:52:14 +09:00
Takashi Kajinami 0954fea1d6 Remove [ssl] parameters
... because these were already removed from Keystone during Newton
cycle[1].

Note some parameters like [ssl] enabled were earlier migrated to
the [eventlet_server_ssl] section[2] but later removed during Newton by
a different patch[3].

[1] 20b851b240bc74694737a9a2e8f58816882b59ae
[2] 2ed506995850ff5b60cac0be858d65375d15bf4b
[3] ac039414ce997cfcafa09efa9e089e09c3058b70

Closes-Bug: #1967717
Change-Id: I74fe1bce563ff084ebe43425c3f6ffe51b321014
2022-04-06 01:23:15 +09:00
Takashi Kajinami cd9f931c45 Deprecate the catalog_type parameter
... because the parameter is almost duplicate of catalog_driver which
more "natively" corresponds to the keystone parameter.

Change-Id: Id80495a191e3cd05507f732335b33b9a493c6d10
2022-03-01 15:23:52 +00:00
Takashi Kajinami 637dd71c05 Do not define service resource when service management is disabled
Change-Id: I3f995ff8048624defeec9ffc0b7aaa5c7347c4a2
2022-02-10 18:59:52 +09:00
Takashi Kajinami 15f35ba9f9 Use systemctl to restart the keystone service
... instead of the service command which is deprecated. The systemctl
command is now hard-coded because all OS versions we currently support
now use the systemd provider to manage services.

Change-Id: I6a15b93c3fe07ed2d9c05490a490ab4a20e4727f
Closes-Bug: #1957023
2022-01-13 01:00:13 +09:00
Zuul b08662bf8b Merge "Deprecate support for member_role_id/name" 2021-12-14 19:36:41 +00:00
Takashi Kajinami b4e600bbd0 Enable credential setup by default
Credential setup should have been enabled by default when
the credential feature in keystone become available in in UCA but we
missed updating the parameter default.

This change updates the parameter because the credential parameter is
available in UCA as well.

Change-Id: I56bcc20d69110f25645c13230036341a9c5c519b
2021-12-13 23:06:07 +00:00
Takashi Kajinami f4bba7122a Deprecate support for member_role_id/name
... because these parameters were already removed from keystone by [1].

[1] c838d93c35fdacae5f5bd77a55c62978b8a0b138

Change-Id: Ib7642c957d51c59606ba033b86a6f989c034459e
2021-12-13 23:13:20 +09:00
Takashi Kajinami 46b04c3a1a Clear [ssl] parameters when ssl is disabled
... instead of leaving these parameters unmanaged.

Change-Id: I3154bef04c4ad91c2a17b0e945a48d3469b91125
2021-11-16 09:54:00 +09:00
Takashi Kajinami cd4fe36190 Refactor unit tests for the keystone class
Change-Id: I760580a32047900c0f9e5b662e700afef3afc0d5
2020-12-30 03:05:52 +00:00
Tobias Urdin 960c621923 Remove deprecated bind, port and workers parameters
Change-Id: I4291174f58b8cc74a687fa63734d249bcdba31aa
2020-08-18 09:35:02 +02:00
Tobias Urdin 5ae2172cbc Remove deprecated keystone cache parameters
Change-Id: Iae8a1263ef40c83e107a08a5d0f2b6f98214a8f0
2020-08-18 09:17:18 +02:00
Takashi Kajinami a1a1e62012 Unset public_endpoint by default
When public_endpoint is set but different urls are used for endpoints
(especially for admin endpoint and public endpoint), it can cause
problem with self-url detection in keystone because it always assumes
that the url should be directed to that public_endpoint even when
a request comes from admin endpoint.

This patch makes public_endpoint unset by default to avoid issues in
the deployment where admin endpoint and public endpoint are still
separated.

Related-bug: #1889017
Change-Id: Ia43e9dcd8085bbb0954b64873504398a85771032
2020-07-27 08:56:17 +09:00
Tobias Urdin 5ba56d49bf Ensure fernet keys are created before bootstrap
The bootstrap command will fail if the fernet keys
has not been created/generated or it will fail.

See [1] this output.

[1] http://paste.openstack.org/show/794949/

Change-Id: I560438a9bd402feba425656ba5213a087ab9e663
2020-06-18 16:20:47 +02:00
Takashi Kajinami 6382396f09 Fix broken unit tests because of list in notification drivers
Because the value for oslo_messaging_notifications/driver is now
a list[1], we should expect that a list is set when multiple drivers
are given.

[1] c7b0cc82fac79b47c3dd9a625cbd5a1eb192ed00

Change-Id: I7f8c3c9ab72e7962e96464842b45f5b7946ea439
2020-04-26 23:11:53 +09:00
Takashi Kajinami af685832ce Split out cache configuration to keystone::cache
Add the new class keystone::cache to manage all configurations for
cache, so that we can reduce the complexity of init.pp .

Change-Id: I0062829d05697ad2159e21458dfb8826853693e1
2020-04-01 06:39:52 +00:00
Tobias Urdin 7def56f92f Convert to rspec-puppet-facts and cleanup docs/testing
This converts some more testing to rspec-puppet-facts
so there is only these three missing now until done:

* keystone_init_spec.rb
* keystone_federation_identity_provider_spec.rb
* keystone_ldap_spec.rb

Also does cleanup of some formatting for documentation
and testing specs.

Change-Id: Ifd74aa8cedf630d98f9e12ab276300409a68eecd
2020-02-04 09:36:53 +01:00
Tobias Urdin bc1ff1d7cb Add keystone::bootstrap class
This class combines the keystone-manage bootstrap command
from init, the keystone::endpoint functionality that manages
the keystone endpoints and the keystone::roles::admin class
that manages users and projects.

This is one of the steps to make sure we only have a single
point of entry for bootstrapping (keystone-manage bootstrap)
and then only managing resources after that.

This is especially required since we are getting rid of the
admin token and cannot manage resources before keystone-manage
bootstrap has created the user, project, service and endpoints
for us.

These resources should always be in the default domain and
deployments should manage domain specific configuration themselves
using the provider resources.

This class uses the default values from the keystone-manage
bootstrap command.

In the past puppet-keystone has always created a openstack project
that is assumed as a admin project even though the bootstrap command
creates the admin project. Since this uses the default values from
the bootstrap command we should move away from having an openstack
project, if we need that in testing it should be created there and
not in the default deployment.

Depends-On: https://review.opendev.org/#/c/698528/
Change-Id: I683fcdd743bddf6d4e989dd7e7c553db745934db
2019-12-11 16:37:51 +00:00
Tobias Urdin fa11274b2f Convert all class usage to relative names
Change-Id: Ia631adf31be1eeadb7ab0f12b75f1eaed73d5fbf
2019-12-08 23:09:22 +01:00
Tobias Urdin 3c95205e02 Remove keystone::service validation
This patch removes the validation in the keyston::service
class. This functionality should be replaced by using
something like the healthcheck module [1].

In the future somebody might want to implement a
keystone_validator provider that does a proper keystone
check but the http_conn_validator should be sufficient enough.

[1] https://github.com/voxpupuli/puppet-healthcheck

Change-Id: Ia20cf42ec23cdbfa1a499b3c5fcece1e5bbb8c22
2019-11-02 16:39:30 +01:00
Takashi Kajinami d58fcfe75e Do not set public_bind_host and public_port in eventlet section
Remove public_bind_host and public_port configured under eventlet
section as they were alrady deprecated.
Set public_endpoint from public_bind_host and public_port so that
these information can be refered by provider code to get endpoint
even if public_endpoint isn't explicitly given.

Change-Id: Ic38e41b31155a7d3a4f1f5fc606421dd525c1025
2019-09-21 10:37:15 +09:00
Zuul 615b5507a8 Merge "Deprecate options related to eventlet server" 2019-08-23 23:44:25 +00:00
Takashi Kajinami bfcc84b73e Deprecate options related to eventlet server
The usage of eventlet server in keystone was already depreacted,
so we should deprecate parameters related to the feature.

Notes:
 - public_bind_host and public_port still remain as valid parameters,
   to wait until users migrate to public_endpoint, which should be
   used instead.
 - admin_endpoint does not affect keystone configuration, but it is
   not yet deprecated as it is still used when validate_service is True.

Change-Id: Ibc8023caf8ad4ee16ebc08a943bdcc9f188c73c1
2019-08-23 10:03:52 +09:00
Zuul 0fac41fc0f Merge "Migrate configuration options related to eventlet server from DEFAULT" 2019-08-22 21:33:20 +00:00
Takashi Kajinami a4f74ef5fa Migrate configuration options related to eventlet server from DEFAULT
This patch migrates configuration options related to eventlet server
from DEFAULT section to eventlet_server, as the ones in DEFAULT
section was deprecated[1]

[1] I6dd718c4d54056d0e29978f393ec45f7291f802d

Change-Id: I1a726c706f509f2a2be68098cda8431cddc0fe92
2019-08-21 19:45:53 +09:00
ZhongShengping 4e2c15e763 Introduce the new rabbit_heartbeat_in_pthread option
oslo.messaging RabbitMQ driver have now a new option that allow user to
run the RabbitMQ heartbeat over a native python thread.

These change allow user to use this new option.

Change-Id: If5cb4855e20fe9553b4a4a0d787918923a4334ba
Closes-Bug: #1840868
2019-08-21 14:23:46 +08:00
ZhongShengping 31c32e0611 oslo middleware: check puppet resource instead of actual config in spec
Change-Id: Ib1d2378a2d0b0c54fec50bd50190dac20bbd8f42
2019-07-04 13:35:31 +08:00
Zuul ec6cecdedf Merge "Change memcache_socket_timeout to a float" 2019-07-04 02:24:18 +00:00
Johan Guldmyr a60980f3da
Manage oslo_middleware/max_request_body_size
So that we can increase it from the default 114688

Useful in case for example the OS-Federation mapping is too large.

If this limit is breached keystone will return a 413 Entity Too Large
and not log anything to keystone.log.

Closes-Bug: #1835161

Change-Id: If9fc5c0bb5d6216b8656ee1673e1812c543de305
Signed-off-by: Johan Guldmyr <johan.guldmyr@csc.fi>
2019-07-03 11:57:46 +03:00
ZhongShengping be06ab40d3 Change memcache_socket_timeout to a float
see https://review.opendev.org/#/c/519353/

Change-Id: I67259233996caed153446d70ecf037a9bae1c908
Closes-Bug: #1835162
2019-07-03 15:23:26 +08:00
Harald Jensås 54dd622aef Prefix memcached_servers IPv6 address with `inet6:`
Depends-On: https://review.opendev.org/661299
Depends-On: https://review.opendev.org/661136
Change-Id: Ia5cb8f1956c9ea1ae91d3a217c5fb0b8132ce747
2019-05-24 16:27:43 +02:00
Alex Schultz ce7fd5d0a8 Fix database test in keystone class test
We were checking for the value of a database setting which is now
managed via puppet-olso in the keystone init class.  We should not be
checking the values set by another class in the unit tests. This change
updates the unit tests to just make sure we're including the
keystone::db class rather than the values configured by it.

Change-Id: I0a1b1adec24ba528b623ad0b17e5bba16e0b279a
2019-04-30 08:15:37 -06:00
ZhongShengping 49f89f39bd Deprecate idle_timeout option
The idle_timeout parameter is deprecated, use connection_recycle_time
instead[1].

[1]https://review.opendev.org/#/c/334182/

Change-Id: I3aae547f050b556b4213ef62f5f8b17a3154d8ec
Depends-On: https://review.opendev.org/656106/
Closes-Bug: #1826692
2019-04-29 08:46:03 +08:00
Alex Schultz 4cdcf63e5b Remove duplicated owner key in test
rspec was throwing a warning about the duplicated owner key.

Change-Id: Ifa856605e646fe712c6f8c56312f1a01fa3aab7b
2019-04-24 15:58:02 -06:00
Tobias Urdin 7fea7a2145 Use validate_legacy
This changes all the puppet 3 validate_* functions
to use the validate_legacy function.

The validate_legacy function has been available since
about three years but require Puppet >= 4.4.0 and since
there is Puppet 4.10.12 as latest we should assume people
are running a fairly new Puppet 4 version.

This is the first step to then remove all validate function
calls and use proper types for parameter as described in spec [1].

[1] https://review.openstack.org/#/c/568929/

Depends-On: https://review.openstack.org/#/c/639215/
Change-Id: Idd720f18893bea0ec1d26859e0a6907a5daa8980
2019-02-25 23:02:21 +00:00
Tobias Urdin 9f8d2341e4 Deprecate keystone::token_driver
This config option in Keystone was deprecated for
removal since the Pike release and was removed in
the Rocky release.

We used this value to determine if the appropriate
memcache package was required which is causing issues
when puppet-oslo with manage_memcache_package is set to true
(default value is true).

This deprecates this parameter and removes the memcache
package installation logic which is superceeded by the
oslo::cache class since Rocky release.

Depends-On: https://review.openstack.org/#/c/632962/
Change-Id: I95a5982097529f119d99f0e7c77ac53d62da5733
2019-01-24 10:13:53 +01:00
Tobias Urdin a25e8ee970 Remove deprecated PKI
Removes deprecated PKI parameters.

Depends-On: https://review.openstack.org/#/c/619475/
Change-Id: I2f6b919934b423c05372717a20e7af0c8ec5dab4
2018-12-06 09:29:50 +01:00
Tobias Urdin a2a6d22e39 Remove deprecated logging parameters
Remove those that was moved to keystone::logging
and deprecated in ::keystone.

Change-Id: I99730c7bb7f775aced7aacfbaef6eb7f38525f69
2018-12-06 09:21:38 +01:00