Add warning log if auth_strategy is not keystone
A user came to the IRC channel with CLI errors: "Client-side error: Validation failure: Missing project ID in request where one is required." The root cause was the [api_settings] auth_strategy was set to "noauth" instead of "keystone". This patch adds a warning log message to the API process that warns users that typically the auth_strategy should be set to keystone. It also points the user to have an administrator check the keystone settings in the octavia.conf. Change-Id: I7793d7a9113b23ac88e7c53d5dc292a70b9453b5
This commit is contained in:
parent
e3aacb67ad
commit
48371c98ee
@ -324,7 +324,9 @@ class LoadBalancersController(base.BaseController):
|
||||
|
||||
if not load_balancer.project_id:
|
||||
raise exceptions.ValidationException(detail=_(
|
||||
"Missing project ID in request where one is required."))
|
||||
"Missing project ID in request where one is required. "
|
||||
"An administrator should check the keystone settings "
|
||||
"in the Octavia configuration."))
|
||||
|
||||
self._auth_validate_action(context, load_balancer.project_id,
|
||||
constants.RBAC_POST)
|
||||
|
@ -20,6 +20,7 @@ from oslo_log import log as logging
|
||||
from oslo_reports import guru_meditation_report as gmr
|
||||
|
||||
from octavia.api import app as api_app
|
||||
from octavia.common import constants
|
||||
from octavia import version
|
||||
|
||||
|
||||
@ -35,6 +36,11 @@ def main():
|
||||
port = cfg.CONF.api_settings.bind_port
|
||||
LOG.info("Starting API server on %(host)s:%(port)s",
|
||||
{"host": host, "port": port})
|
||||
if cfg.CONF.api_settings.auth_strategy != constants.KEYSTONE:
|
||||
LOG.warning('Octavia configuration [api_settings] auth_strategy is '
|
||||
'not set to "keystone". This is not a normal '
|
||||
'configuration and you may get "Missing project ID" '
|
||||
'errors from API calls."')
|
||||
srv = simple_server.make_server(host, port, app)
|
||||
|
||||
srv.serve_forever()
|
||||
|
Loading…
Reference in New Issue
Block a user