#!/usr/bin/python3 import ast, datetime, setuptools, ssltools, twitools if __name__ == "__main__": hosts = ast.literal_eval(setuptools.getSetting("SSL", "hosts")) pbefore = int(setuptools.getSetting("SSL", "pbefore")) pafter = int(setuptools.getSetting("SSL", "pafter")) two = twitools.twObject() for h in hosts: expiry = ssltools.getRemoteExpiry(h[0], h[1]) diff = expiry - datetime.datetime.now() if diff < datetime.timedelta(days=pbefore): if expiry > datetime.datetime.now(): two.tweet("@%s %s certificate expiring soon (%s). Please renew." % (h[2], h[0], expiry)) elif expiry + datetime.timedelta(days=pafter) < datetime.datetime.now(): two.tweet("@%s %s certificate has expired! (%s) Please renew ASAP!" % (h[2], h[0], expiry))