summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ick2/notificationapi.py21
1 files changed, 12 insertions, 9 deletions
diff --git a/ick2/notificationapi.py b/ick2/notificationapi.py
index ab261bd..877b929 100644
--- a/ick2/notificationapi.py
+++ b/ick2/notificationapi.py
@@ -17,29 +17,32 @@
import ick2
-class NotificationAPI:
+N = 1000 # Max number of line to include in log
+
+class NotificationAPI:
def __init__(self, config):
self._config = config
def find_missing_route(self, missing_path):
return [
{
- 'method': 'POST',
- 'path': '/notify',
- 'callback': self.notify,
+ "method": "POST",
+ "path": "/notify",
+ "callback": self.notify,
},
]
def notify(self, content_type, body, **kwargs):
- ick2.log.log('info', msg_text='Notification requested', kwargs=kwargs)
+ ick2.log.log("info", msg_text="Notification requested", kwargs=kwargs)
- recipients = body.get('recipients', [])
- build = body.get('build', {})
- log = body.get('log', '')
+ recipients = body.get("recipients", [])
+ build = body.get("build", {})
+ log = body.get("log", "")
+ log = "".join(f"{line}\n" for line in log.splitlines()[-N:])
sendmail = ick2.Sendmail()
sendmail.set_config(self._config)
sendmail.send(recipients, build, log)
- return ick2.OK('')
+ return ick2.OK("")