Commit Graph

1831 Commits

Author SHA1 Message Date
Frédéric Péters 447a5c0c65 general: advertise hobo itself as a service (#6503)
This is useful to get it automatically registered as a service provider, but
this requires a new settings (BASE_URL) as it cannot be determined
automatically in all circumstances (management commands for example).
2015-02-16 14:05:47 +01:00
Thomas NOËL 017fa6bcb6 amqp: limit tasks time to live (#6507) 2015-02-16 10:19:19 +01:00
Thomas NOËL 0e4b93e0db hobo.agent is no longer a django app (#6501) 2015-02-13 22:47:29 +01:00
Frédéric Péters 987e824e5a fixing up previous patch (#6501) 2015-02-13 18:45:22 +01:00
Thomas NOËL 3e5d9c44e4 separate server and agent Celery usage (#6501)
agent is not a Django application.
2015-02-13 18:16:11 +01:00
Frédéric Péters 1154dad076 agent: bootstrap authentic with hobo users (#6495) 2015-02-13 11:49:50 +01:00
Serghei Mihai a41a3c39d5 middleware: add a middleware to set authentic SAML settings from tenant (#6484) 2015-02-13 11:49:50 +01:00
Frédéric Péters 84ce7245de middleware: add a middleware to set template_vars from tenant (#6474) 2015-02-13 11:49:50 +01:00
Frédéric Péters 2e4132dbdd middleware: add a middleware to set mellon settings from tenant (#6472) 2015-02-13 11:49:50 +01:00
Thomas NOËL dddb63b713 multitenant: pass tenant_dir to load_file method (#6493)
FileBasedTenantSettingBaseMiddleware::load_file is called when a file is
new or updated, but it could need other files of the tenant. So we need
to know tenant_dir to load them.
2015-02-13 11:49:50 +01:00
Serghei Mihai 16c014f5b5 agent: move tenant directory layout knowledge into tenant model 2015-02-13 11:49:50 +01:00
Frédéric Péters 801b19280c agent: finish by writing the hobo.json, so it gets the most recent timestamp 2015-02-13 11:49:50 +01:00
Frédéric Péters 2f519fd7ee agent: use common deployment code for wcs (#6486) 2015-02-13 11:49:50 +01:00
Frédéric Péters bf177b6ace agent: don't hardcode openssl path 2015-02-13 11:49:50 +01:00
Serghei Mihai 32718e3555 agent: add authentic deployment agent (#6476) 2015-02-13 11:49:50 +01:00
Serghei Mihai a42bf1e75d agent: move sso configuration to its own method
The configuration code for SSO is common to all service providers but can be
skipped in the authentic agent, making it its own method makes this possible.
2015-02-13 11:49:50 +01:00
Frédéric Péters 77875ea2be agent: add an attribute to current tenant for easier retrieval
The tenants are using domain names but the native hobo json file has base_url
(scheme + domaine name + port); an attribute is added to mark the current
tenant, to avoid having to run urlparse everytime.
2015-02-13 11:49:50 +01:00
Frédéric Péters 395eb63201 advertise metadata URL of Combo sites 2015-02-13 11:49:49 +01:00
Frédéric Péters df1826a404 agent: remove obsolete runagent command 2015-02-13 11:49:49 +01:00
Frédéric Péters a9c0e8e241 agent: add option to ignore timestamp 2015-02-13 11:49:49 +01:00
Frédéric Péters 835701138b agent: add downloading of idp metadata 2015-02-13 11:49:49 +01:00
Frédéric Péters 7f07faee2a agent: only read stdin if - is passed as filename
This makes it easier to use pdb to interactively debug the deployment code.
2015-02-13 11:49:49 +01:00
Frédéric Péters ed2b9a88f0 agent: write down hobo.json in tenant directory 2015-02-13 11:49:49 +01:00
Frédéric Péters a308049c34 agent: new hobo.agent.common, with hobo_deploy command (#6471) 2015-02-13 11:49:49 +01:00
Frédéric Péters 2f1a1ee5ed worker: call new hobo_deploy command (#6471) 2015-02-13 11:49:49 +01:00
Frédéric Péters f065136800 agent: remove DJANGO_SETTINGS_MODULE from environment
This is necessary so the management commands of the other projects don't find
themselves loading hobo own settings.py...
2015-02-13 11:49:49 +01:00
Frédéric Péters 136d74b189 move celery worker to its own submodule
This is required as we don't want the celery app to be started when using
another part of hobo.agent (ex: hobo.agent.common).
2015-02-13 11:49:49 +01:00
Serghei Mihai fccf8590ea setup.py: add dependencies (#6499) 2015-02-13 11:34:11 +01:00
Benjamin Dauvergne db9d939e09 Add generic cache backend for multitenant applications
Path of the new backend is hobo.multitenant.cache.TenantCache

You can use it like this in your settings:

  CACHES = {
    'default': {
      'BACKEND': 'hobo.multitenant.cache.TenantCache',
      'REAL_BACKEND': 'django.core.cache.backends.memcached.MemcachedCache',
      'LOCATION': '127.0.0.1:11211',
    }
  }
2015-02-12 18:58:14 +01:00
Frédéric Péters 4a371988d1 gitignore: ignore local_settings.py 2015-02-12 10:19:05 +01:00
Frédéric Péters 3f19986549 gitignore: ignore egg-info directory 2015-02-12 10:18:37 +01:00
Frédéric Péters e3382c71b1 let unauthenticated users flow to the login page (#6477) 2015-02-12 09:52:43 +01:00
Frédéric Péters 9c734c5c13 tenant: make it possible for create_tenant to get domains from stdin (#6464) 2015-02-11 11:08:22 +01:00
Frédéric Péters ec5a9149ec multitenant: update references from entrouvert.djommon to hobo 2015-02-11 11:06:26 +01:00
Frédéric Péters fa79801a8f tenant: do not duplicate --domain option in tenant_command (#6459) 2015-02-11 11:06:26 +01:00
Frédéric Péters 1b29b549b2 tenant: add "create super user" to example commands 2015-02-11 11:06:26 +01:00
Frédéric Péters 78edcc1c8d tenant: fix documentation reference to the manage.py command 2015-02-11 11:06:26 +01:00
Thomas NOËL 91b452768a multitenant: update README 2015-02-11 11:06:26 +01:00
Thomas NOËL d7cbe32076 multitenant: sync syncdb with upstream 2015-02-11 11:06:26 +01:00
Thomas NOËL d79a8f9565 multitenant: sync_schemas disabled for django 1.7 2015-02-11 11:06:26 +01:00
Thomas NOËL 7ad118fd99 tenant: fix django 1.6 usage (missing __init__.py) 2015-02-11 11:06:26 +01:00
Thomas NOËL 9be5df36c9 result of tenant.create_schema is undefined 2015-02-11 11:06:26 +01:00
Thomas NOËL c8d6b48c83 remove useless get_tenant_by_domain command (#6398) 2015-02-11 11:06:26 +01:00
Thomas NOËL af4d4ded26 renamed create_schema to create_schemas 2015-02-11 11:06:26 +01:00
Thomas NOËL 87f72fc519 migrate: disable if django 1.7 (#6388) 2015-02-11 11:06:26 +01:00
Thomas NOËL 519b329e9b multitenant: use self.schema_name in SyncCommon (#6420) 2015-02-11 11:06:26 +01:00
Thomas NOËL ffd1317751 tenants in TENANT_BASE/hostname (#6398) 2015-02-11 11:06:26 +01:00
Thomas NOËL 9e5f897975 migrate_schemas: use django 1.7 if available (#6388) 2015-02-11 11:06:26 +01:00
Serghei Mihai 89a12778ea tenant object passed to context manager.
"deploy tenant" method should be called with three parameters

Closes #6340
2015-02-11 11:06:26 +01:00
Benjamin Dauvergne 3eaa5bd521 Add a generic command to deploy service tenants from hobo (#6340)
It must be overloaded by applications.
2015-02-11 11:06:26 +01:00