IdentityPython / SATOSA

Proxy translating between different authentication protocols (SAML2, OpenID Connect and OAuth2)
https://idpy.org
Apache License 2.0
200 stars 123 forks source link

Reading config fails if no microservcies are configured #184

Open surfnet-niels opened 6 years ago

surfnet-niels commented 6 years ago

https://github.com/IdentityPython/SATOSA/blob/34c5836e1a4e616348ac4fe029eff8d4d82df733/src/satosa/satosa_config.py#L47

If no microservcies are configured in proxy.yaml, SaToSa will not start nor construct SAML metadata as the above module fails to load plugin configuration:

File \"/home/debian/vopaas/virtualenv/lib/python3.5/site-packages/satosa/scripts/satosa_saml_metadata.py\", line 43, in create_and_write_saml_metadata, 
    satosa_config = SATOSAConfig(proxy_conf), 
File \"/home/debian/vopaas/virtualenv/lib/python3.5/site-packages/satosa/satosa_config.py\", line 50, in __init__, 
    for config in self._config.get(key, []):, 
TypeError: 'NoneType' object is not iterable"], "stdout": "", "stdout_lines": []
vladimir-mencl-eresearch commented 3 years ago

FYI, a way around this is to use the YAML syntax for empty list instead of letting the YAML parser put in the None value:

MICRO_SERVICES: []