pagezyhf HF Staff commited on
Commit
af7098c
Β·
1 Parent(s): 67e6efa

add variables

Browse files
Files changed (1) hide show
  1. main.py +11 -11
main.py CHANGED
@@ -18,7 +18,7 @@ MODEL_CATALOG_WEBHOOK_SECRET = os.environ.get("MODEL_CATALOG_WEBHOOK_SECRET")
18
  SIMSHIP_WEBHOOK = os.environ.get("SIMSHIP_WEBHOOK")
19
  SIMSHIP_WEBHOOK_SECRET = os.environ.get("SIMSHIP_WEBHOOK_SECRET")
20
 
21
- def send_slack_message(message: str, max_retries: int = 3, timeout: int = 10, retry_delay: int = 2):
22
  """
23
  Send a message to Slack using webhook URL with timeout and retry mechanism
24
 
@@ -29,11 +29,9 @@ def send_slack_message(message: str, max_retries: int = 3, timeout: int = 10, re
29
  retry_delay: Delay between retries in seconds (default: 2)
30
  """
31
  if not SLACK_WEBHOOK_URL:
32
- logger.warning(f"No Slack webhook URL configured. Message: {message}")
33
  return
34
 
35
- payload = {"text": message}
36
-
37
  for attempt in range(max_retries + 1): # +1 for initial attempt
38
  try:
39
  logger.info(f"Sending Slack message (attempt {attempt + 1}/{max_retries + 1})")
@@ -43,7 +41,7 @@ def send_slack_message(message: str, max_retries: int = 3, timeout: int = 10, re
43
  timeout=timeout
44
  )
45
  response.raise_for_status()
46
- logger.info(f"Slack message sent successfully: {message}")
47
  return # Success, exit the function
48
 
49
  except requests.exceptions.Timeout as e:
@@ -109,7 +107,7 @@ def process_model_catalog_webhook(data: dict):
109
  f"Model in the catalog renamed πŸ”„ \n"
110
  f"{repo.get('name', '')} β†’ https://hf.co/{movedTo.get('name', '')}"
111
  )
112
- send_slack_message(message)
113
 
114
  # repo deleted
115
  elif (
@@ -122,7 +120,7 @@ def process_model_catalog_webhook(data: dict):
122
  f"Model in the catalog deleted πŸ—‘οΈ\n"
123
  f"https://hf.co/{repo.get('name', '')}"
124
  )
125
- send_slack_message(message)
126
 
127
  # other events
128
  else:
@@ -142,12 +140,13 @@ def process_simship_webhook(data: dict):
142
  event.get("scope") == "repo" and
143
  event.get("action") == "create"
144
  ):
 
145
  message = (
146
  "πŸ›₯️ SimShip Provider Alert πŸ›₯️\n\n"
147
  f"SimShip Model created πŸ†•\n"
148
- f"https://hf.co/{repo.get('name', '')}"
149
  )
150
- send_slack_message(message)
151
 
152
  # repo visibility update
153
  elif (
@@ -156,12 +155,13 @@ def process_simship_webhook(data: dict):
156
  event.get("action") == "update" and
157
  updatedConfig.get("private") is False
158
  ):
 
159
  message = (
160
  "πŸ›₯️ SimShip Provider Alert πŸ›₯️\n\n"
161
  f"SimShip Model made public πŸ†•\n"
162
- f"https://hf.co/{repo.get('name', '')}"
163
  )
164
- send_slack_message(message)
165
 
166
  # other events
167
  else:
 
18
  SIMSHIP_WEBHOOK = os.environ.get("SIMSHIP_WEBHOOK")
19
  SIMSHIP_WEBHOOK_SECRET = os.environ.get("SIMSHIP_WEBHOOK_SECRET")
20
 
21
+ def send_slack_message(payload: dict, max_retries: int = 3, timeout: int = 10, retry_delay: int = 2):
22
  """
23
  Send a message to Slack using webhook URL with timeout and retry mechanism
24
 
 
29
  retry_delay: Delay between retries in seconds (default: 2)
30
  """
31
  if not SLACK_WEBHOOK_URL:
32
+ logger.warning(f"No Slack webhook URL configured. Payload: {payload}")
33
  return
34
 
 
 
35
  for attempt in range(max_retries + 1): # +1 for initial attempt
36
  try:
37
  logger.info(f"Sending Slack message (attempt {attempt + 1}/{max_retries + 1})")
 
41
  timeout=timeout
42
  )
43
  response.raise_for_status()
44
+ logger.info(f"Slack message sent successfully: {payload}")
45
  return # Success, exit the function
46
 
47
  except requests.exceptions.Timeout as e:
 
107
  f"Model in the catalog renamed πŸ”„ \n"
108
  f"{repo.get('name', '')} β†’ https://hf.co/{movedTo.get('name', '')}"
109
  )
110
+ send_slack_message({"text": message, "type": "", "link": ""})
111
 
112
  # repo deleted
113
  elif (
 
120
  f"Model in the catalog deleted πŸ—‘οΈ\n"
121
  f"https://hf.co/{repo.get('name', '')}"
122
  )
123
+ send_slack_message({"text": message, "type": "", "link": ""})
124
 
125
  # other events
126
  else:
 
140
  event.get("scope") == "repo" and
141
  event.get("action") == "create"
142
  ):
143
+ link = f"https://hf.co/{repo.get('name', '')}"
144
  message = (
145
  "πŸ›₯️ SimShip Provider Alert πŸ›₯️\n\n"
146
  f"SimShip Model created πŸ†•\n"
147
+ f"{link}"
148
  )
149
+ send_slack_message({"text": message, "link": link, "type": "simship"})
150
 
151
  # repo visibility update
152
  elif (
 
155
  event.get("action") == "update" and
156
  updatedConfig.get("private") is False
157
  ):
158
+ link = f"https://hf.co/{repo.get('name', '')}"
159
  message = (
160
  "πŸ›₯️ SimShip Provider Alert πŸ›₯️\n\n"
161
  f"SimShip Model made public πŸ†•\n"
162
+ f"{link}"
163
  )
164
+ send_slack_message({"text": message, "link": link, "type": "simship"})
165
 
166
  # other events
167
  else: