我有一个脚本,我想在更新特定目录时执行。更具体一点:开发团队有4个目录(比如“a”,“b”,“c”和“d”),它们会不时更新。我有一个脚本作为目录的参数名称。当目录“a”更新时,我想用参数“a”执行这个脚本。詹金斯可以吗?如果是这样,我可以使用SVN做同样的事情吗?
答案 0 :(得分:2)
你可以使用python本身,watchdog
库。
from watchdog.observers import Observer
from watchdog.events import PatternMatchingEventHandler
class FileHandler(PatternMatchingEventHandler):
def process(self, event):
print event.src_path, event.event_type # print now only for degug
def on_modified(self, event):
self.process(event)
def on_created(self, event):
self.process(event)
if __name__ == '__main__':
args = sys.argv[1:]
observer = Observer()
observer.schedule(MyHandler(), path=args[0] if args else '.')
observer.start()
try:
while True:
time.sleep(1)
except KeyboardInterrupt:
observer.stop()
observer.join()