root / snf-app / synnefo / settings / common / ui.py @ 1faf0b9c
History | View | Annotate | Download (4.1 kB)
1 | 1277fb19 | Vangelis Koukis | # -*- coding: utf-8 -*-
|
---|---|---|---|
2 | 1277fb19 | Vangelis Koukis | #
|
3 | 1277fb19 | Vangelis Koukis | # UI settings
|
4 | 1277fb19 | Vangelis Koukis | ###################
|
5 | 1277fb19 | Vangelis Koukis | |
6 | 04a38bd0 | Kostas Papadimitriou | from admins import * |
7 | 242767c2 | Kostas Papadimitriou | from site import * |
8 | 04a38bd0 | Kostas Papadimitriou | |
9 | 30b6f316 | Kostas Papadimitriou | # API URL
|
10 | 30b6f316 | Kostas Papadimitriou | COMPUTE_API_URL = '/api/v1.1'
|
11 | 30b6f316 | Kostas Papadimitriou | |
12 | 7970aa87 | Kostas Papadimitriou | # base url for ui static files
|
13 | 04a38bd0 | Kostas Papadimitriou | # if not set, defaults to MEDIA_URL + 'snf-<latest_ui_version>/'
|
14 | adbf7980 | Kostas Papadimitriou | UI_MEDIA_URL = MEDIA_URL + 'snf/'
|
15 | 7970aa87 | Kostas Papadimitriou | |
16 | 1277fb19 | Vangelis Koukis | # UI requests to the API layer time out after that many milliseconds
|
17 | 1277fb19 | Vangelis Koukis | TIMEOUT = 10 * 1000 |
18 | 1277fb19 | Vangelis Koukis | |
19 | 1277fb19 | Vangelis Koukis | # A list of suggested server tags (server metadata keys)
|
20 | 1277fb19 | Vangelis Koukis | DEFAULT_KEYWORDS = ["OS", "Role", "Location", "Owner"] |
21 | 1277fb19 | Vangelis Koukis | |
22 | 1277fb19 | Vangelis Koukis | # A list of allowed icons for OS Images
|
23 | 1277fb19 | Vangelis Koukis | IMAGE_ICONS = ["redhat", "ubuntu", "debian", "windows", "gentoo", "archlinux", |
24 | 1277fb19 | Vangelis Koukis | "centos", "fedora", "freebsd", "netbsd", "openbsd", "slackware", |
25 | 6ee2466c | Kostas Papadimitriou | "suse", "kubuntu"] |
26 | 6fb884b2 | Christodoulos Psaltis | |
27 | 6fb884b2 | Christodoulos Psaltis | # How often should the UI request changes from the API
|
28 | 1cc6e94f | Kostas Papadimitriou | UI_UPDATE_INTERVAL = 5000
|
29 | 1cc6e94f | Kostas Papadimitriou | |
30 | 1cc6e94f | Kostas Papadimitriou | # Milieconds to increase the interval after UI_UPDATE_INTERVAL_INCREASE_AFTER_CALLS_COUNT calls
|
31 | 1cc6e94f | Kostas Papadimitriou | # of recurrent api requests
|
32 | 1cc6e94f | Kostas Papadimitriou | UI_UPDATE_INTERVAL_INCREASE = UI_UPDATE_INTERVAL / 4
|
33 | 1cc6e94f | Kostas Papadimitriou | UI_UPDATE_INTERVAL_INCREASE_AFTER_CALLS_COUNT = 4
|
34 | 1cc6e94f | Kostas Papadimitriou | |
35 | 1cc6e94f | Kostas Papadimitriou | # Maximum update interval
|
36 | 1cc6e94f | Kostas Papadimitriou | UI_UPDATE_INTERVAL_MAX = UI_UPDATE_INTERVAL * 3
|
37 | 1cc6e94f | Kostas Papadimitriou | |
38 | 1cc6e94f | Kostas Papadimitriou | # Fast update interval
|
39 | 1cc6e94f | Kostas Papadimitriou | UI_UPDATE_INTERVAL_FAST = UI_UPDATE_INTERVAL / 2
|
40 | faf5ddde | Kostas Papadimitriou | |
41 | faf5ddde | Kostas Papadimitriou | # List of emails used for sending the feedback messages to (following the ADMINS format)
|
42 | faf5ddde | Kostas Papadimitriou | FEEDBACK_CONTACTS = ( |
43 | faf5ddde | Kostas Papadimitriou | # ('Contact Name', 'contact_email@domain.com'),
|
44 | faf5ddde | Kostas Papadimitriou | ) |
45 | faf5ddde | Kostas Papadimitriou | |
46 | faf5ddde | Kostas Papadimitriou | # Email from which the feedback emails will be sent from
|
47 | 3d3c58d7 | Georgios Gousios | FEEDBACK_EMAIL_FROM = DEFAULT_FROM_EMAIL |
48 | dacd179a | Kostas Papadimitriou | |
49 | 9ea77141 | Kostas Papadimitriou | # URL to redirect user to when he logs out from the ui (if not set
|
50 | 9ea77141 | Kostas Papadimitriou | # settings.LOGIN_URL will be used)
|
51 | 9ea77141 | Kostas Papadimitriou | #LOGOUT_URL = ""
|
52 | e0dea91a | Kostas Papadimitriou | |
53 | 04a38bd0 | Kostas Papadimitriou | # Flavor options that we provide to the user as predefined
|
54 | 66be390b | Kostas Papadimitriou | # cpu/ram/disk combinations on vm create wizard
|
55 | 66be390b | Kostas Papadimitriou | VM_CREATE_SUGGESTED_FLAVORS = { |
56 | e0dea91a | Kostas Papadimitriou | 'small': {
|
57 | e0dea91a | Kostas Papadimitriou | 'cpu': 1, |
58 | e0dea91a | Kostas Papadimitriou | 'ram': 1024, |
59 | d965e6dc | Kostas Papadimitriou | 'disk': 20, |
60 | d965e6dc | Kostas Papadimitriou | 'disk_template': 'drbd' |
61 | e0dea91a | Kostas Papadimitriou | }, |
62 | e0dea91a | Kostas Papadimitriou | 'medium': {
|
63 | e0dea91a | Kostas Papadimitriou | 'cpu': 2, |
64 | e0dea91a | Kostas Papadimitriou | 'ram': 2048, |
65 | d965e6dc | Kostas Papadimitriou | 'disk': 30, |
66 | d965e6dc | Kostas Papadimitriou | 'disk_template': 'drbd' |
67 | d965e6dc | Kostas Papadimitriou | |
68 | e0dea91a | Kostas Papadimitriou | }, |
69 | e0dea91a | Kostas Papadimitriou | 'large': {
|
70 | e0dea91a | Kostas Papadimitriou | 'cpu': 4, |
71 | e0dea91a | Kostas Papadimitriou | 'ram': 4096, |
72 | d965e6dc | Kostas Papadimitriou | 'disk': 40, |
73 | d965e6dc | Kostas Papadimitriou | 'disk_template': 'drbd' |
74 | d965e6dc | Kostas Papadimitriou | |
75 | e0dea91a | Kostas Papadimitriou | } |
76 | e0dea91a | Kostas Papadimitriou | } |
77 | bcd451ea | Kostas Papadimitriou | |
78 | bcd451ea | Kostas Papadimitriou | # A list of metadata keys to clone from image
|
79 | bcd451ea | Kostas Papadimitriou | # to the virtual machine on its creation.
|
80 | bcd451ea | Kostas Papadimitriou | VM_IMAGE_COMMON_METADATA = ["OS", "loginname", "logindomain"] |
81 | 66be390b | Kostas Papadimitriou | |
82 | 66be390b | Kostas Papadimitriou | # A list of suggested vm roles to display to user on create wizard
|
83 | 66be390b | Kostas Papadimitriou | VM_CREATE_SUGGESTED_ROLES = ["Database server", "File server", "Mail server", "Web server", "Proxy"] |
84 | 66be390b | Kostas Papadimitriou | |
85 | c130b56e | Kostas Papadimitriou | # Template to be used for suggesting the user a default name for newly created
|
86 | 1a97a220 | Kostas Papadimitriou | # vms. {0} gets replaced by the image OS value
|
87 | c130b56e | Kostas Papadimitriou | VM_CREATE_NAME_TPL = "My {0} server"
|
88 | c130b56e | Kostas Papadimitriou | |
89 | 51bffc84 | Kostas Papadimitriou | # Name/description metadata for the available flavor disk templates
|
90 | 51bffc84 | Kostas Papadimitriou | # Dict key is the disk_template value as stored in database
|
91 | d965e6dc | Kostas Papadimitriou | UI_FLAVORS_DISK_TEMPLATES_INFO = { |
92 | d965e6dc | Kostas Papadimitriou | 'drbd': {'name': 'DRBD', |
93 | d965e6dc | Kostas Papadimitriou | 'description': 'DRBD storage.'}, |
94 | d965e6dc | Kostas Papadimitriou | } |
95 | d965e6dc | Kostas Papadimitriou | |
96 | 1faf0b9c | Kostas Papadimitriou | |
97 | 66be390b | Kostas Papadimitriou | #######################
|
98 | 66be390b | Kostas Papadimitriou | # UI BEHAVIOUR SETTINGS
|
99 | 66be390b | Kostas Papadimitriou | #######################
|
100 | 66be390b | Kostas Papadimitriou | |
101 | 66be390b | Kostas Papadimitriou | # Whether to increase the time of recurrent requests (networks/vms update) if
|
102 | 04a38bd0 | Kostas Papadimitriou | # window loses its focus
|
103 | 66be390b | Kostas Papadimitriou | UI_DELAY_ON_BLUR = False
|
104 | 66be390b | Kostas Papadimitriou | |
105 | 04a38bd0 | Kostas Papadimitriou | # Whether not visible vm views will update their content if vm changes
|
106 | 66be390b | Kostas Papadimitriou | UI_UPDATE_HIDDEN_VIEWS = False
|
107 | 66be390b | Kostas Papadimitriou | |
108 | 66be390b | Kostas Papadimitriou | # After how many timeouts of reccurent ajax requests to display the timeout
|
109 | 66be390b | Kostas Papadimitriou | # error overlay
|
110 | 66be390b | Kostas Papadimitriou | UI_SKIP_TIMEOUTS = 1
|
111 | 66be390b | Kostas Papadimitriou | |
112 | 66be390b | Kostas Papadimitriou | # Whether UI should display error overlay for all Javascript exceptions
|
113 | 66be390b | Kostas Papadimitriou | UI_HANDLE_WINDOW_EXCEPTIONS = True
|
114 | 66be390b | Kostas Papadimitriou | |
115 | 5db5b149 | Kostas Papadimitriou | # A list of os names that support ssh public key assignment
|
116 | 5db5b149 | Kostas Papadimitriou | UI_SUPPORT_SSH_OS_LIST = ['debian', 'fedora', 'okeanos', 'ubuntu', 'kubuntu', 'centos'] |
117 | 5db5b149 | Kostas Papadimitriou | |
118 | 5db5b149 | Kostas Papadimitriou | # OS/username map to identify default user name for the specified os
|
119 | 5db5b149 | Kostas Papadimitriou | UI_OS_DEFAULT_USER_MAP = { |
120 | 04a38bd0 | Kostas Papadimitriou | 'debian':'root', 'fedora': 'root', 'okeanos': 'root', |
121 | 04a38bd0 | Kostas Papadimitriou | 'ubuntu': 'root', 'kubuntu': 'root', 'centos': 'root', |
122 | 5db5b149 | Kostas Papadimitriou | 'windows': 'Administrator' |
123 | 5db5b149 | Kostas Papadimitriou | } |
124 | 30b6f316 | Kostas Papadimitriou | |
125 | 30b6f316 | Kostas Papadimitriou | |
126 | 30b6f316 | Kostas Papadimitriou | ###############
|
127 | 30b6f316 | Kostas Papadimitriou | # UI EXTENSIONS
|
128 | 30b6f316 | Kostas Papadimitriou | ###############
|
129 | 30b6f316 | Kostas Papadimitriou | |
130 | ae8cb3d5 | Kostas Papadimitriou | # Glance images API endpoint
|
131 | 30b6f316 | Kostas Papadimitriou | UI_GLANCE_API_URL = '/plankton'
|
132 | ae8cb3d5 | Kostas Papadimitriou | |
133 | ae8cb3d5 | Kostas Papadimitriou | # Whether or not UI should display images from the Glance API
|
134 | ae8cb3d5 | Kostas Papadimitriou | # set in UI_GLANCE_API_URL, if setting is set to False, ui will
|
135 | ae8cb3d5 | Kostas Papadimitriou | # request images from Compute API
|
136 | ae8cb3d5 | Kostas Papadimitriou | UI_ENABLE_GLANCE = True
|
137 | 1faf0b9c | Kostas Papadimitriou | |
138 | 1faf0b9c | Kostas Papadimitriou | # a dict of image owner ids and their associate name
|
139 | 1faf0b9c | Kostas Papadimitriou | # to be displayed on images list
|
140 | 1faf0b9c | Kostas Papadimitriou | UI_SYSTEM_IMAGES_OWNERS = { |
141 | 1faf0b9c | Kostas Papadimitriou | 'admin@synnefo.gr': 'system', |
142 | 1faf0b9c | Kostas Papadimitriou | 'images@synnefo.gr': 'system' |
143 | 1faf0b9c | Kostas Papadimitriou | } |