def process(config): env = Environment(root=join(config['databasePath'], 'harvester')) for repository in env.getRepositories(): if not repository.active: continue dna = be( (Observable(), (Harvest(), (SruUpload( hostname=config['hostName'], portnumber=int(config['portNumber']), path=config['sru.updatePath'], apiKey=repository.apiKey),) ) ) ) list(compose(dna.all.process(repository=repository)))