From b584d341f1a48b59e8da49d0d409dafe90786e34 Mon Sep 17 00:00:00 2001 From: Pierre-Yves Chibon Date: Aug 30 2019 10:12:24 +0000 Subject: Always try to serialize the dates but be more careful when doing it Basically, we should check for every message we are trying to send if they contain dates and if they do serialize them. But since we're not sure if they do, we need to be more careful when checking it. Signed-off-by: Pierre-Yves Chibon --- diff --git a/fedmsg-koji-plugin.py b/fedmsg-koji-plugin.py index 89e55b5..706494d 100644 --- a/fedmsg-koji-plugin.py +++ b/fedmsg-koji-plugin.py @@ -29,11 +29,11 @@ def camel_to_dots(name): return re.sub('([a-z0-9])([A-Z])', r'\1.\2', s1).lower() -def serialize_datetime_in_task(task): +def serialize_datetime(msg): for date_key in ("completion_time", "create_time", "start_time"): - if task[date_key] is None: + if msg.get(date_key) is None: continue - task[date_key] = time.mktime(task[date_key].timetuple()) + msg[date_key] = time.mktime(msg[date_key].timetuple()) def get_message_body(topic, *args, **kws): @@ -53,7 +53,6 @@ def get_message_body(topic, *args, **kws): msg['update'] = kws.get('update', None) elif topic == 'task.state.change': info = kws['info'] - serialize_datetime_in_task(info) # Stuff in information about descendant tasks task = kojihub.Task(info['id']) @@ -149,6 +148,8 @@ def get_message_body(topic, *args, **kws): msg['build'] = kws['build'] msg['rpm'] = kws['rpm'] + serialize_datetime(msg) + return msg