summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTakashi Kajinami <tkajinam@redhat.com>2021-08-22 01:54:29 +0900
committerTakashi Kajinami <tkajinam@redhat.com>2021-08-22 01:58:07 +0900
commitb41329876351f988589574b2ea81e1dade8e379c (patch)
treea1563d42621c1a3b6234fb1a61873cff22d9d8cc
parentda7987ca926e9bd82ff2989a920ea9740da24f95 (diff)
downloadoslo-middleware-b41329876351f988589574b2ea81e1dade8e379c.tar.gz
Add oslo.config.opts entrypoint for basic auth middleware
... so that its options can be rendered by oslo-config-generator by adding the entry point. This change also updates the base oslo.middleware entry point to include options of the middleware because the base entry point is supposed to include all options in the oslo.middleware library. Closes-Bug: #1940747 Change-Id: Ic9d79d9c46fc1dc78aa4d089e36219b2a34f4099
-rw-r--r--oslo_middleware/opts.py27
-rw-r--r--setup.cfg1
2 files changed, 28 insertions, 0 deletions
diff --git a/oslo_middleware/opts.py b/oslo_middleware/opts.py
index 734c21f..eb03db0 100644
--- a/oslo_middleware/opts.py
+++ b/oslo_middleware/opts.py
@@ -15,6 +15,7 @@
import copy
import itertools
+from oslo_middleware import basic_auth
from oslo_middleware import cors
from oslo_middleware.healthcheck import opts as healthcheck_opts
from oslo_middleware import http_proxy_to_wsgi
@@ -28,6 +29,7 @@ __all__ = [
'list_opts_cors',
'list_opts_http_proxy_to_wsgi',
'list_opts_healthcheck',
+ 'list_opts_basic_auth',
]
@@ -57,6 +59,7 @@ def list_opts():
list_opts_cors(),
list_opts_http_proxy_to_wsgi(),
list_opts_healthcheck(),
+ list_opts_basic_auth(),
)
)
@@ -183,3 +186,27 @@ def list_opts_healthcheck():
healthcheck_opts.DISABLE_BY_FILE_OPTS +
healthcheck_opts.DISABLE_BY_FILES_OPTS))
]
+
+
+def list_opts_basic_auth():
+ """Return a list of oslo.config options for basic auth middleware.
+
+ The returned list includes all oslo.config options which may be registered
+ at runtime by the library.
+
+ Each element of the list is a tuple. The first element is the name of the
+ group under which the list of elements in the second element will be
+ registered. A group name of None corresponds to the [DEFAULT] group in
+ config files.
+
+ This function is also discoverable via the 'oslo.middleware' entry point
+ under the 'oslo.config.opts' namespace.
+
+ The purpose of this is to allow tools like the Oslo sample config file
+ generator to discover the options exposed to users by this library.
+
+ :returns: a list of (group_name, opts) tuples
+ """
+ return [
+ ('oslo_middleware', copy.deepcopy(basic_auth.OPTS)),
+ ]
diff --git a/setup.cfg b/setup.cfg
index de5689a..7d3d771 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -33,6 +33,7 @@ oslo.config.opts =
oslo.middleware.ssl = oslo_middleware.opts:list_opts_ssl
oslo.middleware.http_proxy_to_wsgi = oslo_middleware.opts:list_opts_http_proxy_to_wsgi
oslo.middleware.healthcheck = oslo_middleware.opts:list_opts_healthcheck
+ oslo.middleware.basic_auth = oslo_middleware.opts:list_opts_basic_auth
oslo.middleware.healthcheck =
disable_by_file = oslo_middleware.healthcheck.disable_by_file:DisableByFileHealthcheck