def run(self): logging.info("---------- Redis Backups Starting ----------") configfile = os.path.join(os.environ['STARTPATH'], "config.ini") conf = Config(configfile) serverList = conf.getServers() logging.debug("got server list: %s" % serverList) servers = {} for server in serverList: servers[server] = conf.getSectionDetails(server) awsconf = conf.getSectionDetails("aws") sensuconf = conf.getSectionDetails("sensu") logging.debug(servers) logging.debug(awsconf) logging.debug(sensuconf) while True: logging.debug("Backup process starting...") for server, value in servers.iteritems(): logging.debug(value) prefix = None if value['prefix'] == 'none' else value['prefix'] # if value['prefix'] == 'none': # prefix = None # else: # prefix = value['prefix'] job = Backup(sensuconf=sensuconf, server_name=value['hostname'], port=int(value['port']), save_directory=value['redis_save_dir'], dbFileName=value['redis_db_name'], aws=awsconf, prefix=prefix) job.run() time.sleep(3600)
if not os.path.isfile('config/global.ini'): raise FileNotFoundError('config/global.ini') config = configparser.ConfigParser() config.read('config/global.ini') servers = config['global']['proxmox_servers'].replace(' ', '').split(',') if is_list_empty(servers): raise RuntimeError('no servers found in config') log.set_loglevel(map_loglevel(config['global']['log_level'])) log.debug(f'CLI args: {vars(args)}') try: if args.action == 'backup': backup = Backup(servers, config) if args.action_backup == 'run': if os.path.isfile('/tmp/proxmox-rbd-backup.lock'): print('There is already an instance running, abort', file=sys.stderr, flush=True) exit(1) backup.init_proxmox() vms_uuid = args.vm_uuid vms_id = args.vm_id vm_name_match = args.vm_name snapshot_name_prefix = args.snapshot_name_prefix allow_using_any_existing_snapshot = args.allow_using_any_existing_snapshot if snapshot_name_prefix: backup.set_snapshot_name_prefix(snapshot_name_prefix) else: