Merge "Run validation without authentication in particular context"

This commit is contained in:
Zuul 2020-11-19 22:45:29 +00:00 committed by Gerrit Code Review
commit 2fff553f7f
1 changed files with 20 additions and 9 deletions

View File

@ -18,6 +18,7 @@ import json
import logging
import yaml
from openstack import exceptions as os_exceptions
from osc_lib import exceptions
from osc_lib.i18n import _
from prettytable import PrettyTable
@ -320,15 +321,25 @@ class TripleOValidatorRun(command.Command):
def _run_validator_run(self, parsed_args):
LOG = logging.getLogger(__name__ + ".ValidationsRunAnsible")
clients = self.app.client_manager
plans = plan_management.list_deployment_plans(clients)
if parsed_args.plan and parsed_args.plan not in plans:
raise exceptions.CommandError(
_("The plan '{}' doesn't exist. "
"Please use one of those {}".format(parsed_args, plans)))
# Try to perform OpenStack authentication, if no authentication
# and static inventory provided continue, else raise error.
try:
clients = self.app.client_manager
clients._auth_required = True
clients.setup_auth()
except os_exceptions.ConfigException:
LOG.warning("Running Validations without authentication.")
if not parsed_args.static_inventory:
raise exceptions.CommandError(
_("No static inventory provided, please provide a valid"
"inventory or use authentication."))
else:
plans = plan_management.list_deployment_plans(clients)
if parsed_args.plan and parsed_args.plan not in plans:
raise exceptions.CommandError(
_("The plan '{}' doesn't exist. "
"Please use one of those {}".format(parsed_args,
plans)))
limit = parsed_args.limit
extra_vars = parsed_args.extra_vars
if parsed_args.extra_vars_file: