示例#1
0
def run_last_events_files(minutes=0, page_size=50):
    """
    Retrieve last events from target instance and import related data and
    action.
    """
    path = "events/last?only_files=true&page_size=%s" % page_size
    if minutes > 0:
        now = datetime.datetime.now()
        min_before = now - datetime.timedelta(minutes=minutes)
        after = min_before.strftime("%Y-%m-%dT%H:%M:%S")
        path += "&before=%s" % now.strftime("%Y-%m-%dT%H:%M:%S")
        path += "&after=%s" % after
    events = gazu.client.fetch_all(path)
    events.reverse()
    for event in events:
        event_name = event["name"].split(":")[0]
        if event_name == "preview-file":
            preview_file = PreviewFile.get(event["data"]["preview_file_id"])
            if preview_file is not None:
                download_preview_from_another_instance(preview_file)
        else:
            download_thumbnail_from_another_instance(
                event_name,
                event["data"]["%s_id" % event_name]
            )
示例#2
0
def run_last_events_sync(minutes=0, page_size=300):
    """
    Retrieve last events from target instance and import related data and
    action.
    """
    path = "events/last?page_size=%s" % page_size
    if minutes > 0:
        now = datetime.datetime.now()
        min_before = now - datetime.timedelta(minutes=minutes)
        after = min_before.strftime("%Y-%m-%dT%H:%M:%S")
        path += "&before=%s" % now.strftime("%Y-%m-%dT%H:%M:%S")
        path += "&after=%s" % after
    events = gazu.client.fetch_all(path)
    events.reverse()
    for event in events:
        event_name = event["name"].split(":")[0]
        if event_name in event_name_model_map:
            try:
                sync_event(event)
            except Exception:
                pass