def get_worker_manager(config, cloud=None, verbose=10): if cloud is None: return None assert cloud in ['gcloud', 'gcspot', 'ec2', 'ec2spot'] logger = logs.get_logger('runner.get_worker_manager') logger.setLevel(verbose) auth = get_auth(config['database']['authentication']) auth_cookie = auth.get_token_file() if auth else None branch = config['cloud'].get('branch') logger.info('using branch {}'.format(branch)) if cloud in ['gcloud', 'gcspot']: cloudconfig = config['cloud']['gcloud'] worker_manager = GCloudWorkerManager( auth_cookie=auth_cookie, zone=cloudconfig['zone'], branch=branch, user_startup_script=config['cloud'].get('user_startup_script')) if cloud in ['ec2', 'ec2spot']: worker_manager = EC2WorkerManager( auth_cookie=auth_cookie, branch=branch, user_startup_script=config['cloud'].get('user_startup_script')) return worker_manager
def get_worker_manager(self): project = 'studio-ed756' return GCloudWorkerManager(project)