in lambdas/scale_out_runner/app.py [0:0]
def commiters(ssm_repo_name: str = os.getenv('SSM_REPO_NAME', 'apache/airflow')):
global _commiters
if not _commiters:
client = boto3.client('ssm')
param_path = os.path.join('/runners/', ssm_repo_name, 'configOverlay')
app.log.info("Loading config overlay from %s", param_path)
try:
resp = client.get_parameter(Name=param_path, WithDecryption=True)
except client.exceptions.ParameterNotFound:
app.log.debug("Failed to load config overlay", exc_info=True)
return set()
try:
overlay = json.loads(resp['Parameter']['Value'])
except ValueError:
app.log.debug("Failed to parse config overlay", exc_info=True)
return set()
_commiters = set(overlay['pullRequestSecurity']['allowedAuthors'])
return _commiters