multitenant: add statistics providers setting (#49685)
gitea-wip/hobo/pipeline/head There was a failure building this commit Details
gitea/hobo/pipeline/head Something is wrong with the build of this commit Details

This commit is contained in:
Valentin Deniaud 2020-12-22 16:18:54 +01:00
parent 17ee1bf6d5
commit fc91120734
4 changed files with 26 additions and 0 deletions

View File

@ -330,6 +330,7 @@ if PROJECT_NAME != 'wcs':
'hobo.multitenant.settings_loaders.SettingsJSON',
'hobo.multitenant.settings_loaders.SettingsVars',
'hobo.multitenant.settings_loaders.BackofficeLoginHint',
'hobo.multitenant.settings_loaders.StatisticsSettings',
)
# templates in <tenant>/templates

View File

@ -283,6 +283,20 @@ class SharedThemeSettings(FileBaseSettingsLoader):
break
class StatisticsSettings(FileBaseSettingsLoader):
FILENAME = 'hobo.json'
def update_settings_from_path(self, tenant_settings, path):
with open(path) as f:
hobo_json = json.load(f)
for service in hobo_json.get('services', []):
if service.get('service-id') != 'combo':
continue
if 'portal-agent' not in service.get('template_name', ''):
continue
tenant_settings.STATISTICS_PROVIDERS = ['authentic']
class CookieNames(object):
def get_new_time(self, tenant):
return 0

View File

@ -83,6 +83,7 @@ TENANT_SETTINGS_LOADERS = (
'hobo.multitenant.settings_loaders.CookieNames',
'hobo.multitenant.settings_loaders.SettingsJSON',
'hobo.multitenant.settings_loaders.SettingsVars',
'hobo.multitenant.settings_loaders.StatisticsSettings',
)
GLOBAL1 = 0

View File

@ -201,6 +201,16 @@ def test_known_services(tenants, settings):
== KnownServices.shared_secret(key1, key2))
def test_tenant_statistics_settings(tenants, settings, client):
django.conf.settings.clear_tenants_settings()
settings.SETTINGS_MODULE = 'fake.settings'
for tenant in tenants:
with tenant_context(tenant):
hobo_json = tenant.get_hobo_json()
assert settings.STATISTICS_PROVIDERS == ['authentic']
def test_unique_cookies(tenants, settings):
settings.clear_tenants_settings()