|
126 | 126 | # Python dotted path to the WSGI application used by Django's runserver. |
127 | 127 | WSGI_APPLICATION = 'wirecloud_instance.wsgi.application' |
128 | 128 |
|
129 | | -# FIWARE IdM configuration |
130 | | -IDM_AUTH = None |
131 | | -if os.environ.get('FIWARE_IDM_SERVER', '').strip() != '': |
132 | | - FIWARE_IDM_SERVER = os.environ.get('FIWARE_IDM_SERVER', '').strip() |
133 | | - FIWARE_IDM_PUBLIC_URL = os.environ.get('FIWARE_IDM_PUBLIC_URL', FIWARE_IDM_SERVER).strip() |
134 | | - SOCIAL_AUTH_FIWARE_KEY = os.environ.get('SOCIAL_AUTH_FIWARE_KEY', '').strip() |
135 | | - SOCIAL_AUTH_FIWARE_SECRET = os.environ.get('SOCIAL_AUTH_FIWARE_SECRET', '').strip() |
136 | | - IDM_AUTH = 'fiware' if FIWARE_IDM_SERVER and SOCIAL_AUTH_FIWARE_KEY and SOCIAL_AUTH_FIWARE_SECRET else None |
137 | | - |
138 | | -elif os.environ.get('KEYCLOAK_IDM_SERVER', '').strip() != '': |
139 | | - KEYCLOAK_IDM_SERVER = os.environ.get('KEYCLOAK_IDM_SERVER', '').strip() |
140 | | - KEYCLOAK_REALM = os.environ.get('KEYCLOAK_REALM', '').strip() |
141 | | - KEYCLOAK_KEY = os.environ.get('KEYCLOAK_KEY', '').strip() |
142 | | - KEYCLOAK_GLOBAL_ROLE = os.environ.get('KEYCLOAK_GLOBAL_ROLE', '').strip() == 'True' |
143 | | - SOCIAL_AUTH_KEYCLOAK_KEY = os.environ.get('SOCIAL_AUTH_KEYCLOAK_KEY', '').strip() |
144 | | - SOCIAL_AUTH_KEYCLOAK_SECRET = os.environ.get('SOCIAL_AUTH_KEYCLOAK_SECRET', '').strip() |
145 | | - IDM_AUTH = 'keycloak' if KEYCLOAK_IDM_SERVER and KEYCLOAK_REALM and KEYCLOAK_KEY and SOCIAL_AUTH_KEYCLOAK_KEY and SOCIAL_AUTH_KEYCLOAK_SECRET else None |
| 129 | + |
| 130 | +# Handle some basic settings |
| 131 | + |
| 132 | +## String settings |
| 133 | +STRING_SETTINGS = ( |
| 134 | + "FIWARE_IDM_SERVER", |
| 135 | + "FIWARE_IDM_PUBLIC_URL", |
| 136 | + "SOCIAL_AUTH_FIWARE_KEY", |
| 137 | + "SOCIAL_AUTH_FIWARE_SECRET", |
| 138 | + "KEYCLOAK_SERVER", |
| 139 | + "KEYCLOAK_REALM", |
| 140 | + "KEYCLOAK_KEY", |
| 141 | + "SOCIAL_AUTH_KEYCLOAK_KEY", |
| 142 | + "SOCIAL_AUTH_KEYCLOAK_SECRET", |
| 143 | +) |
| 144 | +for setting in STRING_SETTINGS: |
| 145 | + value = os.environ.get(setting, "").strip() |
| 146 | + if value != "": |
| 147 | + locals()[setting] = value |
| 148 | + |
| 149 | +## Boolean settings |
| 150 | +BOOLEAN_SETTINGS = ( |
| 151 | + "KEYCLOAK_GLOBAL_ROLE", |
| 152 | +) |
| 153 | +for setting in BOOLEAN_SETTINGS: |
| 154 | + value = os.environ.get(setting, "").strip() |
| 155 | + if value != "": |
| 156 | + locals()[setting] = value.lower() == "true" |
| 157 | + |
| 158 | + |
| 159 | +# FIWARE & Keycloak configuration |
| 160 | +IDM_AUTH = 'fiware' if "FIWARE_IDM_SERVER" in locals() and "SOCIAL_AUTH_FIWARE_KEY" in locals() and "SOCIAL_AUTH_FIWARE_SECRET" in locals() else None |
| 161 | +IDM_AUTH = 'keycloak' if "KEYCLOAK_IDM_SERVER" in locals() and "KEYCLOAK_REALM" in locals() and "KEYCLOAK_KEY" in locals() and "SOCIAL_AUTH_KEYCLOAK_KEY" in locals() and "SOCIAL_AUTH_KEYCLOAK_SECRET" in locals() else IDM_AUTH |
146 | 162 |
|
147 | 163 | if IDM_AUTH == 'fiware': |
148 | 164 | INSTALLED_APPS += ( |
|
0 commit comments