]> review.fuel-infra Code Review - tools/sustaining.git/commitdiff
Validation of auth data has been added. 80/41680/1
authorTaras Khlivnyak <tkhlivnyak@mirantis.com>
Wed, 20 Jan 2021 15:10:14 +0000 (17:10 +0200)
committerTaras Khlivnyak <tkhlivnyak@mirantis.com>
Wed, 20 Jan 2021 15:32:53 +0000 (17:32 +0200)
Change-Id: I73f910c24116fc754069aaa07fbbe4210b60ca44

os_cloud_cleaner/shell.py

index 8554134c592786d60fbb4971340e24cd25b04914..e7d391be4f38e8dbd0629ed1da0617c0a80f1741 100644 (file)
@@ -1,5 +1,6 @@
 import argparse
 import os
+import sys
 from prettytable import PrettyTable
 
 from cleaner import Cleaner
@@ -68,22 +69,27 @@ search_subparser.add_argument('--only-uuids', '-i',
 # args = parser.parse_args("search -i".split(" "))
 # args = parser.parse_args("search".split(" "))
 args = parser.parse_args()
-
-auth_url = args.os_auth_url or os.environ.get('OS_AUTH_URL')
-username = args.os_username or os.environ.get('OS_USERNAME')
-password = args.os_password or os.environ.get('OS_PASSWORD')
-project_name = args.os_project_name or os.environ.get('OS_PROJECT_NAME')
-project_domain_name = args.os_project_domain_name or os.environ.get(
+auth_data = {}
+auth_data['auth_url'] = args.os_auth_url or os.environ.get('OS_AUTH_URL')
+auth_data['username'] = args.os_username or os.environ.get('OS_USERNAME')
+auth_data['password'] = args.os_password or os.environ.get('OS_PASSWORD')
+auth_data['project_name'] = args.os_project_name or os.environ.get('OS_PROJECT_NAME')
+auth_data['project_domain_name'] = args.os_project_domain_name or os.environ.get(
     'OS_PROJECT_DOMAIN_NAME') or os.environ.get('OS_PROJECT_DOMAIN_ID')
-user_domain_name = args.os_user_domain_name or os.environ.get(
+auth_data['user_domain_name'] = args.os_user_domain_name or os.environ.get(
     'OS_USER_DOMAIN_NAME')
 
-cleaner = Cleaner(os_auth_url=auth_url,
-                  os_user=username,
-                  os_password=password,
-                  os_project_name=project_name,
-                  os_project_domain_name=project_domain_name,
-                  os_user_domain_name=user_domain_name,
+for validated_item in auth_data:
+  if not auth_data[validated_item]:
+    logger.error("Parameter {} NOT defined.".format(validated_item))
+    sys.exit(124)
+
+cleaner = Cleaner(os_auth_url=auth_data['auth_url'],
+                  os_user=auth_data['username'],
+                  os_password=auth_data['password'],
+                  os_project_name=auth_data['project_name'],
+                  os_project_domain_name=auth_data['project_domain_name'],
+                  os_user_domain_name=auth_data['user_domain_name'],
                   ignorelist_file=args.ignorelist_file)
 
 if args.action == "cleanup":