Skip to content

Commit 5d30acc

Browse files
committed
Fix linting errors in arr_webhook_utils.py
- Fixed variable assignment issues - Changed to lazy logging format - Fixed f-string warnings
1 parent 7f41367 commit 5d30acc

1 file changed

Lines changed: 27 additions & 28 deletions

File tree

arr_webhook_utils.py

Lines changed: 27 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -77,29 +77,33 @@ def create_webhook(arr_url: str, arr_api_key: str, webhook_url: str, arr_type: s
7777
name = f"PlexBot {arr_type.capitalize()} Webhook"
7878

7979
# Determine which events to listen to based on ARR type
80-
if arr_type.lower() == 'sonarr':
81-
on_grab = True
82-
on_download = True
83-
on_upgrade = True
80+
arr_type_lower = arr_type.lower()
81+
82+
# Common events for all ARR types
83+
on_grab = True
84+
on_download = True
85+
on_upgrade = True
86+
on_health_issue = False
87+
88+
# Type-specific events
89+
on_rename = False
90+
on_series_delete = False
91+
on_episode_file_delete = False
92+
on_movie_delete = False
93+
on_book_delete = False
94+
on_author_delete = False
95+
96+
if arr_type_lower == 'sonarr':
8497
on_rename = False
8598
on_series_delete = False
8699
on_episode_file_delete = False
87-
on_health_issue = False
88-
elif arr_type.lower() == 'radarr':
89-
on_grab = True
90-
on_download = True
91-
on_upgrade = True
100+
elif arr_type_lower == 'radarr':
92101
on_rename = False
93102
on_movie_delete = False
94-
on_health_issue = False
95-
elif arr_type.lower() == 'readarr':
96-
on_grab = True
97-
on_download = True
98-
on_upgrade = True
103+
elif arr_type_lower == 'readarr':
99104
on_rename = True
100105
on_book_delete = False
101106
on_author_delete = False
102-
on_health_issue = False
103107
else:
104108
return {"success": False, "message": f"Unknown ARR type: {arr_type}"}
105109

@@ -109,11 +113,6 @@ def create_webhook(arr_url: str, arr_api_key: str, webhook_url: str, arr_type: s
109113
"onDownload": on_download,
110114
"onUpgrade": on_upgrade,
111115
"onRename": on_rename,
112-
"onSeriesDelete": on_series_delete if arr_type.lower() == 'sonarr' else False,
113-
"onEpisodeFileDelete": on_episode_file_delete if arr_type.lower() == 'sonarr' else False,
114-
"onMovieDelete": on_movie_delete if arr_type.lower() == 'radarr' else False,
115-
"onBookDelete": on_book_delete if arr_type.lower() == 'readarr' else False,
116-
"onAuthorDelete": on_author_delete if arr_type.lower() == 'readarr' else False,
117116
"onHealthIssue": on_health_issue,
118117
"onApplicationUpdate": False,
119118
"includeHealthWarnings": False,
@@ -141,12 +140,12 @@ def create_webhook(arr_url: str, arr_api_key: str, webhook_url: str, arr_type: s
141140
}
142141

143142
# Add type-specific fields
144-
if arr_type.lower() == 'sonarr':
143+
if arr_type_lower == 'sonarr':
145144
notification_data["onSeriesDelete"] = on_series_delete
146145
notification_data["onEpisodeFileDelete"] = on_episode_file_delete
147-
elif arr_type.lower() == 'radarr':
146+
elif arr_type_lower == 'radarr':
148147
notification_data["onMovieDelete"] = on_movie_delete
149-
elif arr_type.lower() == 'readarr':
148+
elif arr_type_lower == 'readarr':
150149
notification_data["onBookDelete"] = on_book_delete
151150
notification_data["onAuthorDelete"] = on_author_delete
152151

@@ -159,8 +158,8 @@ def create_webhook(arr_url: str, arr_api_key: str, webhook_url: str, arr_type: s
159158
response = requests.post(api_url, json=notification_data, headers=headers, timeout=10)
160159
response.raise_for_status()
161160

162-
logger.info(f"Successfully created webhook for {arr_type} at {arr_url}")
163-
return {"success": True, "message": f"Webhook created successfully"}
161+
logger.info("Successfully created webhook for %s at %s", arr_type, arr_url)
162+
return {"success": True, "message": "Webhook created successfully"}
164163

165164
except requests.exceptions.RequestException as e:
166165
error_msg = f"Failed to create webhook: {str(e)}"
@@ -169,7 +168,7 @@ def create_webhook(arr_url: str, arr_api_key: str, webhook_url: str, arr_type: s
169168
logger.error(error_msg)
170169
return {"success": False, "message": error_msg}
171170
except Exception as e:
172-
logger.error(f"Error creating webhook for {arr_type}: {e}", exc_info=True)
171+
logger.error("Error creating webhook for %s: %s", arr_type, e, exc_info=True)
173172
return {"success": False, "message": f"Error: {str(e)}"}
174173

175174

@@ -195,7 +194,7 @@ def test_arr_connection(arr_url: str, arr_api_key: str, arr_type: str = "sonarr"
195194
data = response.json()
196195
version = data.get('version', 'Unknown')
197196

198-
logger.info(f"Successfully connected to {arr_type} at {arr_url} (version {version})")
197+
logger.info("Successfully connected to %s at %s (version %s)", arr_type, arr_url, version)
199198
return {
200199
"success": True,
201200
"message": f"Connected successfully (version {version})",
@@ -211,7 +210,7 @@ def test_arr_connection(arr_url: str, arr_api_key: str, arr_type: str = "sonarr"
211210
logger.error(error_msg)
212211
return {"success": False, "message": error_msg}
213212
except Exception as e:
214-
logger.error(f"Error testing {arr_type} connection: {e}", exc_info=True)
213+
logger.error("Error testing %s connection: %s", arr_type, e, exc_info=True)
215214
return {"success": False, "message": f"Error: {str(e)}"}
216215

217216

0 commit comments

Comments
 (0)