Skip to content

Commit 62232a3

Browse files
authored
Update get_email_webhook.py
1 parent 7db3981 commit 62232a3

File tree

1 file changed

+51
-11
lines changed

1 file changed

+51
-11
lines changed

β€Žget_email_webhook.pyβ€Ž

Lines changed: 51 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -95,17 +95,56 @@ def format_repo_event(repo, action):
9595
updated_at = convert_to_utc4(repo.get("updated_at"))
9696
url = repo.get("html_url", "")
9797

98-
subject = f"[GitHub Alert] Repository {action}: {repo_name}"
99-
body = (
100-
f"A repository was {action} in your GitHub organization.\n\n"
101-
f"πŸ“Œ Repository Name: {repo_name}\n"
102-
f"{visibility_icon}\n"
103-
f"πŸ‘€ Owner: {owner}\n"
104-
f"🌿 Default branch: {default_branch}\n"
105-
f"πŸ•’ Created at: {created_at}\n"
106-
f"πŸ•’ Last updated: {updated_at}\n"
107-
f"🌍 URL: {url}\n"
108-
)
98+
# Special cases for visibility changes
99+
if action == "publicized":
100+
subject = f"[GitHub Alert] Repository changed from PRIVATE β†’ PUBLIC: {repo_name}"
101+
body = (
102+
f"The repository visibility has been changed.\n\n"
103+
f"➑️ Now PUBLIC\n\n"
104+
f"πŸ“Œ Repository Name: {repo_name}\n"
105+
f"{visibility_icon}\n"
106+
f"πŸ‘€ Owner: {owner}\n"
107+
f"🌿 Default branch: {default_branch}\n"
108+
f"πŸ•’ Created at: {created_at}\n"
109+
f"πŸ•’ Last updated: {updated_at}\n"
110+
f"🌍 URL: {url}\n"
111+
)
112+
elif action == "privatized":
113+
subject = f"[GitHub Alert] Repository changed from PUBLIC β†’ PRIVATE: {repo_name}"
114+
body = (
115+
f"The repository visibility has been changed.\n\n"
116+
f"➑️ Now PRIVATE\n\n"
117+
f"πŸ“Œ Repository Name: {repo_name}\n"
118+
f"{visibility_icon}\n"
119+
f"πŸ‘€ Owner: {owner}\n"
120+
f"🌿 Default branch: {default_branch}\n"
121+
f"πŸ•’ Created at: {created_at}\n"
122+
f"πŸ•’ Last updated: {updated_at}\n"
123+
f"🌍 URL: {url}\n"
124+
)
125+
else:
126+
# Generic events
127+
action_labels = {
128+
"created": "Repository created",
129+
"deleted": "Repository deleted",
130+
"archived": "Repository archived",
131+
"unarchived": "Repository unarchived",
132+
"edited": "Repository edited",
133+
"renamed": "Repository renamed",
134+
"transferred": "Repository transferred"
135+
}
136+
subject = f"[GitHub Alert] {action_labels.get(action, action)}: {repo_name}"
137+
body = (
138+
f"A repository event occurred: {action_labels.get(action, action)}\n\n"
139+
f"πŸ“Œ Repository Name: {repo_name}\n"
140+
f"{visibility_icon}\n"
141+
f"πŸ‘€ Owner: {owner}\n"
142+
f"🌿 Default branch: {default_branch}\n"
143+
f"πŸ•’ Created at: {created_at}\n"
144+
f"πŸ•’ Last updated: {updated_at}\n"
145+
f"🌍 URL: {url}\n"
146+
)
147+
109148
return subject, body
110149

111150
# --- GitHub Webhook + Health Handlers ---
@@ -140,6 +179,7 @@ def github_webhook():
140179
"privatized", # public β†’ private
141180
"archived",
142181
"unarchived",
182+
"edited",
143183
"renamed",
144184
"transferred"
145185
]

0 commit comments

Comments
Β (0)