def job_exec_rollout_cfg_section_parser()

in src/jobs_configure.py [0:0]


def job_exec_rollout_cfg_section_parser(config):
    JobExecutionsRolloutConfig = {}
    status = is_config_in_use(config, 'JOB_EXECUTE_ROLLOUT_CONFIG', 'DEFAULT')
    if status:
        JobExecutionsRolloutConfig['maximumPerMinute'] = int(config['JOB_EXECUTE_ROLLOUT_CONFIG']['maximumPerMinute'])
        if is_config_in_use(config, 'EXP_RATE_CONFIG', 'JOB_EXECUTE_ROLLOUT_CONFIG'):
            JobExecutionsRolloutConfig['exponentialRate'] = {
                'baseRatePerMinute': int(config['EXP_RATE_CONFIG']['baseRatePerMinute']),
                'incrementFactor': float(config['EXP_RATE_CONFIG']['incrementFactor'])
            }
            if is_config_in_use(config, 'INCREASE_CRITERIA', 'EXP_RATE_CONFIG'):
                JobExecutionsRolloutConfig['exponentialRate']['rateIncreaseCriteria'] = {
                    'numberOfNotifiedThings': int(config['INCREASE_CRITERIA']['numberOfNotifiedThings']),
                    'numberOfSucceededThings': int(config['INCREASE_CRITERIA']['numberOfSucceededThings'])
                }

    return status, JobExecutionsRolloutConfig