@@ -129,9 +129,15 @@ def load_config_yml(self, config_file: str) -> None:
129
129
def load_env_config (self ) -> None :
130
130
logger .info ("Load environment config: OpenStack" )
131
131
132
+ self .AUTH_URL = os .environ .get ("OS_AUTH_URL" )
133
+ if not self .AUTH_URL :
134
+ logger .error ("OS_AUTH_URL not provided in env!" )
135
+ sys .exit (1 )
136
+
132
137
self .USE_APPLICATION_CREDENTIALS = os .environ .get (
133
138
"USE_APPLICATION_CREDENTIALS" , False
134
139
)
140
+
135
141
if self .USE_APPLICATION_CREDENTIALS :
136
142
logger .info ("APPLICATION CREDENTIALS will be used!" )
137
143
try :
@@ -141,25 +147,34 @@ def load_env_config(self) -> None:
141
147
self .APPLICATION_CREDENTIAL_SECRET = os .environ [
142
148
"OS_APPLICATION_CREDENTIAL_SECRET"
143
149
]
144
- except KeyError :
150
+ except KeyError as e :
145
151
logger .error (
146
- "Usage of Application Credentials enabled - but no credential id or/and secret provided in env!"
152
+ f "Usage of Application Credentials enabled - but { e . args [ 0 ] } not provided in env!"
147
153
)
148
154
sys .exit (1 )
149
155
else :
150
- try :
156
+ required_keys = [
157
+ "OS_USERNAME" ,
158
+ "OS_PASSWORD" ,
159
+ "OS_PROJECT_NAME" ,
160
+ "OS_PROJECT_ID" ,
161
+ "OS_USER_DOMAIN_NAME" ,
162
+ "OS_PROJECT_DOMAIN_ID" ,
163
+ ]
164
+ missing_keys = [key for key in required_keys if key not in os .environ ]
165
+ if missing_keys :
166
+ missing_keys_str = ", " .join (missing_keys )
167
+ logger .error (
168
+ f"Usage of Username/Password enabled - but keys { missing_keys_str } not provided in env!"
169
+ )
170
+ sys .exit (1 )
171
+ else :
151
172
self .USERNAME = os .environ ["OS_USERNAME" ]
152
173
self .PASSWORD = os .environ ["OS_PASSWORD" ]
153
174
self .PROJECT_NAME = os .environ ["OS_PROJECT_NAME" ]
154
175
self .PROJECT_ID = os .environ ["OS_PROJECT_ID" ]
155
176
self .USER_DOMAIN_NAME = os .environ ["OS_USER_DOMAIN_NAME" ]
156
- self .AUTH_URL = os .environ ["OS_AUTH_URL" ]
157
177
self .PROJECT_DOMAIN_ID = os .environ ["OS_PROJECT_DOMAIN_ID" ]
158
- except KeyError :
159
- logger .error (
160
- "Usage of Username/Password enabled - but some keys not provided in env!"
161
- )
162
- sys .exit (1 )
163
178
164
179
def create_server (
165
180
self ,
0 commit comments