Skip to content

Instantly share code, notes, and snippets.

@msoutopico
Last active February 13, 2020 15:38
Show Gist options
  • Save msoutopico/b779fef67176f2e799b2c99b5d5c9607 to your computer and use it in GitHub Desktop.
Save msoutopico/b779fef67176f2e799b2c99b5d5c9607 to your computer and use it in GitHub Desktop.
import pyinotify
import asyncore # not found when installing in server with pip3
import os
import sys
from pprint import pprint
from datetime import datetime
from file_poster import post_to_xdiff
from get_paths import get_paths_to_folders
import logging # not found when installing in server with pip3
import time # not found when installing in server with pip3
#from watchdog.observers.polling import PollingObserver as Observer
from watchdog.events import LoggingEventHandler
from watchdog.observers import Observer
file_with_paths = "./200129_Steps_for_Difference_Reports.xlsx"
path_to_ft = "/media/data/data/company/PISA_2021/FIELD_TRIAL/"
list_of_paths = get_paths_to_folders(path_to_ft, file_with_paths)
class Event(LoggingEventHandler):
def __init__(self, path_pair, func):
self.path_pair = path_pair
self.post_to_xdiff = func
def on_created(self, event):
if event.src_path.endswith('.omt'):
self.post_to_xdiff(self.path_pair)
if __name__ == "__main__":
#logging.basicConfig(level=logging.INFO, format='%(asctime)s - %(message)s', datefmt='%Y-%m-%d %H:%M:%S')
#event_handler = LoggingEventHandler()
observer = Observer()
if len(list_of_paths) > 1:
for path_pair in list_of_paths:
#print(paths[i])
event_handler = Event(path_pair, post_to_xdiff)
observer.schedule(event_handler, path_pair['edit'], recursive=False)
#else:
#observer.schedule(event_handler, dir_edit, recursive=True)
observer.start()
try:
while True:
time.sleep(1)
except KeyboardInterrupt:
observer.stop()
observer.join()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment