22from pathlib import Path
33from typing import Optional , Dict
44from cli .user_settings .config_file_manager import ConfigFileManager
5- from cli .consts import DEFAULT_BASE_URL , BASE_URL_ENV_VAR_NAME
5+ from cli .consts import DEFAULT_BASE_URL , BASE_URL_ENV_VAR_NAME , VERBOSE_ENV_VAR_NAME
66
77
88class ConfigurationManager :
@@ -14,7 +14,7 @@ def __init__(self):
1414 self .global_config_file_manager = ConfigFileManager (Path .home ())
1515 self .local_config_file_manager = ConfigFileManager (os .getcwd ())
1616
17- def get_base_url (self ) -> Optional [ str ] :
17+ def get_base_url (self ) -> str :
1818 base_url = self .get_base_url_from_environment_variables ()
1919 if base_url is not None :
2020 return base_url
@@ -29,8 +29,18 @@ def get_base_url(self) -> Optional[str]:
2929
3030 return DEFAULT_BASE_URL
3131
32- def get_base_url_from_environment_variables (self ) -> str :
33- return os .getenv (BASE_URL_ENV_VAR_NAME )
32+ def get_verbose_flag (self ) -> bool :
33+ verbose_flag_env_var = self .get_verbose_flag_from_environment_variables ()
34+ verbose_flag_local_config = self .local_config_file_manager .get_verbose_flag ()
35+ verbose_flag_global_config = self .global_config_file_manager .get_verbose_flag ()
36+ return verbose_flag_env_var or verbose_flag_local_config or verbose_flag_global_config
37+
38+ def get_base_url_from_environment_variables (self ) -> Optional [str ]:
39+ return self ._get_value_from_environment_variables (BASE_URL_ENV_VAR_NAME )
40+
41+ def get_verbose_flag_from_environment_variables (self ) -> bool :
42+ value = self ._get_value_from_environment_variables (VERBOSE_ENV_VAR_NAME , '' )
43+ return value .lower () in ('true' , '1' )
3444
3545 def get_exclusions_by_scan_type (self , scan_type ) -> Dict :
3646 local_exclusions = self .local_config_file_manager .get_exclusions_by_scan_type (scan_type )
@@ -51,3 +61,6 @@ def update_base_url(self, base_url: str, scope: str = 'local'):
5161
5262 def get_config_file_manager (self , scope ):
5363 return self .local_config_file_manager if scope == 'local' else self .global_config_file_manager
64+
65+ def _get_value_from_environment_variables (self , env_var_name , default = None ):
66+ return os .getenv (env_var_name , default )
0 commit comments