@@ -190,6 +190,7 @@ def get_groups_membership(self, username):
190
190
groups = [group ['name' ] for group in response .json ()['results' ]]
191
191
return groups
192
192
193
+ @retry ()
193
194
def get_system_info_page (self ):
194
195
login_url = f'{ self .host } /dologin.action'
195
196
auth_url = f'{ self .host } /doauthenticate.action'
@@ -220,7 +221,11 @@ def get_system_info_page(self):
220
221
self .session .post (url = tsv_auth_url , json = tsv_login_body )
221
222
222
223
system_info_html = self .session .post (url = auth_url , data = auth_body , headers = {'X-Atlassian-Token' : 'no-check' }, verify = self .verify )
223
- return system_info_html .content .decode ("utf-8" )
224
+ page_decoded = system_info_html .content .decode ("utf-8" )
225
+ if page_decoded :
226
+ return page_decoded
227
+ else :
228
+ raise Exception (f"ERROR: System info page is empty. Content: { page_decoded } " )
224
229
225
230
def get_installed_apps (self ):
226
231
plugins_url = f'{ self .host } /rest/plugins/1.0/'
@@ -230,10 +235,13 @@ def get_installed_apps(self):
230
235
231
236
232
237
def get_deployment_type (self ):
233
- html_pattern = 'deployment=terraform'
234
- confluence_system_page = self .get_system_info_page ()
235
- if confluence_system_page .count (html_pattern ):
236
- return 'terraform'
238
+ try :
239
+ html_pattern = 'deployment=terraform'
240
+ confluence_system_page = self .get_system_info_page ()
241
+ if confluence_system_page .count (html_pattern ):
242
+ return 'terraform'
243
+ except Exception as e :
244
+ print (f"Warning: Could not get deployment type. Error: { e } " )
237
245
return 'other'
238
246
239
247
def get_node_ip (self , node_id : str ) -> str :
0 commit comments