from config import Config
from plcapi import PLCAPI
-
+import random
savedargv = sys.argv[:]
callback = getattr(module, 'GetSlivers')
callback(data)
+def UpdateHostKey(plc):
+ logger.log('Trying to update ssh host key at PLC...')
+ ssh_host_key = open('/etc/ssh/ssh_host_rsa_key.pub').read().strip()
+ plc.BootUpdateNode(dict(ssh_host_key=ssh_host_key))
+ logger.log('Host key update succeeded')
+
def run():
try:
if options.daemon: tools.daemon()
plc = PLCAPI(config.plc_api_uri, config.cacert, session, timeout=options.period/2)
while True:
+ try: UpdateHostKey(plc)
+ except: logger.log_exc()
try: GetSlivers(plc)
except: logger.log_exc()
- time.sleep(options.period)
+ time.sleep(options.period + random.randrange(0,301))
except: logger.log_exc()