Revision e3ff6830 snf-cyclades-app/synnefo/ui/views.py
b/snf-cyclades-app/synnefo/ui/views.py | ||
---|---|---|
34 | 34 |
|
35 | 35 |
import os |
36 | 36 |
|
37 |
from urlparse import urlparse |
|
38 |
|
|
37 | 39 |
from django.conf import settings |
38 | 40 |
from django.utils.translation import gettext_lazy as _ |
39 | 41 |
from django.template import loader |
... | ... | |
49 | 51 |
from synnefo.lib import join_urls |
50 | 52 |
|
51 | 53 |
from snf_django.lib.astakos import get_user |
54 |
from synnefo import cyclades_settings |
|
52 | 55 |
|
53 | 56 |
SYNNEFO_JS_LIB_VERSION = get_component_version('app') |
57 |
PROXY_USER_SERVICES = getattr(settings, 'CYCLADES_PROXY_USER_SERVICES', True) |
|
58 |
|
|
59 |
|
|
60 |
# resolve astakos base url to be used by ui |
|
61 |
UI_ASTAKOS_BASE_HREF = cyclades_settings.ASTAKOS_BASE_URL |
|
62 |
if PROXY_USER_SERVICES: |
|
63 |
UI_ASTAKOS_BASE_HREF = \ |
|
64 |
'/' + cyclades_settings.BASE_ASTAKOS_PROXY_PATH.lstrip('/') |
|
65 |
|
|
66 |
UI_ASTAKOS_ACCOUNTS_HREF = join_urls(UI_ASTAKOS_BASE_HREF, |
|
67 |
cyclades_settings.ASTAKOS_ACCOUNTS_PREFIX) |
|
68 |
|
|
69 |
UI_ASTAKOS_VIEWS_HREF = join_urls(UI_ASTAKOS_BASE_HREF, |
|
70 |
cyclades_settings.ASTAKOS_VIEWS_PREFIX) |
|
71 |
|
|
72 |
UI_ASTAKOS_KEYSTONE_HREF = join_urls(UI_ASTAKOS_BASE_HREF, |
|
73 |
cyclades_settings.ASTAKOS_KEYSTONE_PREFIX) |
|
54 | 74 |
|
55 | 75 |
# api configuration |
56 |
COMPUTE_API_URL = getattr(settings, 'COMPUTE_API_URL', '/api/v1.1') |
|
76 |
api_path = join_urls(cyclades_settings.COMPUTE_PREFIX, 'v1.1').lstrip('/') |
|
77 |
api_path = '/' + join_urls(cyclades_settings.BASE_PATH, api_path).lstrip('/') |
|
78 |
COMPUTE_API_HREF = getattr(settings, 'COMPUTE_API_URL', api_path) |
|
57 | 79 |
|
58 | 80 |
# UI preferences settings |
59 | 81 |
TIMEOUT = getattr(settings, "TIMEOUT", 10000) |
60 | 82 |
UPDATE_INTERVAL = getattr(settings, "UI_UPDATE_INTERVAL", 5000) |
61 | 83 |
CHANGES_SINCE_ALIGNMENT = getattr(settings, "UI_CHANGES_SINCE_ALIGNMENT", 0) |
62 |
UPDATE_INTERVAL_INCREASE = getattr(settings, "UI_UPDATE_INTERVAL_INCREASE", 500) |
|
84 |
UPDATE_INTERVAL_INCREASE = getattr(settings, "UI_UPDATE_INTERVAL_INCREASE", |
|
85 |
500) |
|
63 | 86 |
UPDATE_INTERVAL_INCREASE_AFTER_CALLS_COUNT = \ |
64 | 87 |
getattr(settings, "UI_UPDATE_INTERVAL_INCREASE_AFTER_CALLS_COUNT", 3) |
65 | 88 |
UPDATE_INTERVAL_FAST = getattr(settings, "UI_UPDATE_INTERVAL_FAST", 2500) |
... | ... | |
84 | 107 |
SUPPORT_SSH_OS_LIST = getattr(settings, "UI_SUPPORT_SSH_OS_LIST",) |
85 | 108 |
OS_CREATED_USERS = getattr(settings, "UI_OS_DEFAULT_USER_MAP") |
86 | 109 |
UNKNOWN_OS = getattr(settings, "UI_UNKNOWN_OS", "unknown") |
87 |
LOGOUT_URL = getattr(settings, "UI_LOGOUT_URL", '/im/authenticate') |
|
88 |
LOGIN_URL = getattr(settings, "UI_LOGIN_URL", '/im/login') |
|
110 |
|
|
111 |
LOGOUT_PATH = join_urls(cyclades_settings.ASTAKOS_ACCOUNTS_PREFIX, |
|
112 |
getattr(settings, "UI_LOGOUT_PATH", 'authenticate')) |
|
113 |
LOGOUT_URL = join_urls(cyclades_settings.ASTAKOS_BASE_URL, LOGOUT_PATH) |
|
114 |
|
|
115 |
LOGIN_PATH = join_urls(cyclades_settings.ASTAKOS_VIEWS_PREFIX, |
|
116 |
getattr(settings, "UI_LOGIN_PATH", 'login')) |
|
117 |
LOGIN_URL = join_urls(cyclades_settings.ASTAKOS_BASE_URL, LOGIN_PATH) |
|
118 |
|
|
89 | 119 |
AUTH_COOKIE_NAME = getattr(settings, "UI_AUTH_COOKIE_NAME", 'synnefo_user') |
90 | 120 |
|
91 | 121 |
# UI behaviour settings |
... | ... | |
130 | 160 |
|
131 | 161 |
# extensions |
132 | 162 |
ENABLE_GLANCE = getattr(settings, 'UI_ENABLE_GLANCE', True) |
133 |
GLANCE_API_URL = getattr(settings, 'UI_GLANCE_API_URL', '/glance') |
|
163 |
glance_path = join_urls(cyclades_settings.BASE_PATH, |
|
164 |
cyclades_settings.PLANKTON_PREFIX) |
|
165 |
glance_path = '/' + glance_path.lstrip('/') |
|
166 |
GLANCE_API_HREF = getattr(settings, 'UI_GLANCE_API_URL', glance_path) |
|
167 |
|
|
134 | 168 |
DIAGNOSTICS_UPDATE_INTERVAL = \ |
135 | 169 |
getattr(settings, 'UI_DIAGNOSTICS_UPDATE_INTERVAL', 2000) |
136 | 170 |
|
... | ... | |
161 | 195 |
GROUPED_PUBLIC_NETWORK_NAME = \ |
162 | 196 |
getattr(settings, 'UI_GROUPED_PUBLIC_NETWORK_NAME', 'Internet') |
163 | 197 |
|
164 |
ASTAKOS_BASE_URL = '/' |
|
165 |
ASTAKOS_API_URL = join_urls(ASTAKOS_BASE_URL, 'astakos/api') |
|
198 |
USER_CATALOG_PATH = getattr(settings, 'UI_USER_CATALOG_PATH', 'user_catalogs') |
|
199 |
USER_CATALOG_HREF = join_urls(UI_ASTAKOS_ACCOUNTS_HREF, USER_CATALOG_PATH) |
|
200 |
|
|
201 |
FEEDBACK_POST_PATH = getattr(settings, 'UI_FEEDBACK_POST_PATH', 'feedback') |
|
202 |
FEEDBACK_POST_HREF = join_urls(UI_ASTAKOS_ACCOUNTS_HREF, FEEDBACK_POST_PATH) |
|
203 |
|
|
204 |
|
|
205 |
ACCOUNTS_API_VERSION = getattr(settings, 'UI_ACCOUNTS_API_VERSION', '') |
|
206 |
ACCOUNTS_API_HREF = join_urls(UI_ASTAKOS_ACCOUNTS_HREF, ACCOUNTS_API_VERSION) |
|
166 | 207 |
|
167 |
USER_CATALOG_URL = getattr(settings, 'UI_USER_CATALOG_URL', |
|
168 |
join_urls(ASTAKOS_API_URL, 'user_catalogs')) |
|
169 |
FEEDBACK_POST_URL = getattr(settings, 'UI_FEEDBACK_POST_URL', |
|
170 |
join_urls(ASTAKOS_API_URL, 'feedback')) |
|
171 |
ACCOUNTS_API_URL = getattr(settings, 'UI_ACCOUNTS_API_URL', ASTAKOS_API_URL) |
|
172 | 208 |
TRANSLATE_UUIDS = not getattr(settings, 'TRANSLATE_UUIDS', False) |
173 | 209 |
|
174 | 210 |
|
... | ... | |
195 | 231 |
'project': '+nefo', |
196 | 232 |
'request': request, |
197 | 233 |
'current_lang': get_language() or 'en', |
198 |
'compute_api_url': json.dumps(COMPUTE_API_URL),
|
|
199 |
'user_catalog_url': json.dumps(USER_CATALOG_URL),
|
|
200 |
'feedback_post_url': json.dumps(FEEDBACK_POST_URL),
|
|
201 |
'accounts_api_url': json.dumps(ACCOUNTS_API_URL),
|
|
234 |
'compute_api_url': json.dumps(COMPUTE_API_HREF),
|
|
235 |
'user_catalog_url': json.dumps(USER_CATALOG_HREF),
|
|
236 |
'feedback_post_url': json.dumps(FEEDBACK_POST_HREF),
|
|
237 |
'accounts_api_url': json.dumps(ACCOUNTS_API_HREF),
|
|
202 | 238 |
'translate_uuids': json.dumps(TRANSLATE_UUIDS), |
203 | 239 |
# update interval settings |
204 | 240 |
'update_interval': UPDATE_INTERVAL, |
... | ... | |
228 | 264 |
'os_created_users': json.dumps(OS_CREATED_USERS), |
229 | 265 |
'userdata_keys_limit': json.dumps(MAX_SSH_KEYS_PER_USER), |
230 | 266 |
'use_glance': json.dumps(ENABLE_GLANCE), |
231 |
'glance_api_url': json.dumps(GLANCE_API_URL),
|
|
267 |
'glance_api_url': json.dumps(GLANCE_API_HREF),
|
|
232 | 268 |
'system_images_owners': json.dumps(SYSTEM_IMAGES_OWNERS), |
233 | 269 |
'custom_image_help_url': CUSTOM_IMAGE_HELP_URL, |
234 | 270 |
'image_deleted_title': json.dumps(IMAGE_DELETED_TITLE), |
Also available in: Unified diff