Removes all the deprecated resources for paste
support in keystone which we notified about in Stein.
Keystone doesn't use paste so it doesn't work in Stein
either so we remove it for Train.
Depends-On: https://review.opendev.org/#/c/658546/
Change-Id: Id7dfdf2f5cb9453044d39812b7cbd216b7f3eb50
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
Keystone no longer uses it's paste ini file or
uses the paste deploy parts so we deprecate all
that now. [1]
Unfortunately this should probably have been done
in Rocky but got missed, in Stein keystone will
effectively remove the paste ini file. [1]
[1] https://docs.openstack.org/releasenotes/keystone/rocky.html
Change-Id: Ifefea626f754d247b376745fbb2791e725ebafbc
Closes-Bug: 1794045
This code moves all deps to an external class so that Keystone can be
installed with mechanisms besides packages (like venv or docker). This
also cleans-up the dependency tree by removing false or confusing
dependencies.
Change-Id: If69cd7cba267f75faad51fdbc80a58b24d2095d8
Co-Author: Clayton O'Neill <clayton.oneill@twcable.com>
It is needed in order to have possibility to add custom api options
without direct usage of config providers in manifests.
Change-Id: I3e4a2ba175d6974ba4c4fb170aa663d15cb8467a
This keystone::config is aim to use keystone_config resources
to manage custom configurations in keystone config files.
This will make end user easy to add their own custom options
in Hiera data.
Fully implements blueprint keystone-custom-config
Change-Id: I1e0742382bfca3f627029c7f17fe05fd9d3d0dbe
This commit introduces fragments to manage
the keystone.conf file.
It introduces the following templates that can
be used to manage part of the final keystone file
- footer (things that dont need to be configured)
- sqlite - configures db as sqlite
- mysql - configures db as mysql
- identity - manages the identity used
- ldap - adds ldap snippet
- default - DEFAULT config section
- sql_catalog - adds sql catalog support
- template_catalog - adds template support for
catalogs
The templates can be assembled using keystone::config
into a customizable final template.