Statistics
| Branch: | Tag: | Revision:

root / Changelog @ aca448cf

History | View | Annotate | Download (8.8 kB)

1 5ede2c79 Constantinos Venetsanopoulos
.. _Changelog:
2 bbcd3dd1 Constantinos Venetsanopoulos
3 bbcd3dd1 Constantinos Venetsanopoulos
Unified Changelog file for Synnefo versions >= 0.13
4 bbcd3dd1 Constantinos Venetsanopoulos
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
5 bbcd3dd1 Constantinos Venetsanopoulos
6 3045e739 Constantinos Venetsanopoulos
Since v0.13 most of the Synnefo components have been merged into a single
7 3045e739 Constantinos Venetsanopoulos
repository and have aligned versions.
8 5ede2c79 Constantinos Venetsanopoulos
9 a43b07ae Christos Stavrakakis
10 a43b07ae Christos Stavrakakis
.. _Changelog-0.13next:
11 a43b07ae Christos Stavrakakis
12 a43b07ae Christos Stavrakakis
v0.13next
13 a43b07ae Christos Stavrakakis
=========
14 a43b07ae Christos Stavrakakis
15 a43b07ae Christos Stavrakakis
Released: UNRELEASED
16 a43b07ae Christos Stavrakakis
17 a43b07ae Christos Stavrakakis
Synnefo-wide
18 a43b07ae Christos Stavrakakis
------------
19 008fd5cd Constantinos Venetsanopoulos
20 f0001470 Christos Stavrakakis
* Create 'snf_django' Python package to hold common code for all Synnefo
21 f0001470 Christos Stavrakakis
  components.
22 a43b07ae Christos Stavrakakis
23 a43b07ae Christos Stavrakakis
Astakos
24 a43b07ae Christos Stavrakakis
-------
25 7e7cd786 Kostas Papadimitriou
26 38d5464c Giorgos Korfiatis
* Redesign of the accounting system (quotaholder) and integration into
27 008fd5cd Constantinos Venetsanopoulos
  Astakos.
28 38d5464c Giorgos Korfiatis
29 38d5464c Giorgos Korfiatis
  * Simplified the quotaholder model; removed tables Entity and Policy; now
30 38d5464c Giorgos Korfiatis
    table Holding contains limit and usage for every holding.
31 38d5464c Giorgos Korfiatis
  * Extended table Holding, so that we can keep track of quota for every
32 38d5464c Giorgos Korfiatis
    valid combination of holder (e.g. user), resource, and source (e.g. the
33 38d5464c Giorgos Korfiatis
    default system or some specific project).
34 38d5464c Giorgos Korfiatis
  * Refactored code for issuing and resolving commissions for robustness;
35 38d5464c Giorgos Korfiatis
    added a 'force' option to bypass the upper limit check when issuing a
36 38d5464c Giorgos Korfiatis
    commission.
37 38d5464c Giorgos Korfiatis
  * Simplified syncing to the quotaholder; removed fields from models
38 38d5464c Giorgos Korfiatis
    Project and ProjectMembership, previously needed for syncing; removed
39 38d5464c Giorgos Korfiatis
    state PROJECT_DEACTIVATED from ProjectMembership.
40 48646327 Giorgos Korfiatis
  * Removed settings ASTAKOS_QUOTAHOLDER_URL, ASTAKOS_QUOTAHOLDER_TOKEN,
41 48646327 Giorgos Korfiatis
    and ASTAKOS_QUOTAHOLDER_POOLSIZE.
42 48646327 Giorgos Korfiatis
43 38d5464c Giorgos Korfiatis
* Service and resource specification and handling:
44 38d5464c Giorgos Korfiatis
45 38d5464c Giorgos Korfiatis
  * Specified a format for defining resources a service exposes. Migrated
46 38d5464c Giorgos Korfiatis
    internal resource name by prefixing it with service name (e.g. 'vm'
47 38d5464c Giorgos Korfiatis
    becomes 'cyclades.vm'); renamed registered service 'pithos+' to
48 38d5464c Giorgos Korfiatis
    'pithos'.
49 38d5464c Giorgos Korfiatis
  * Specified a procedure to register a service's resources in astakos and
50 38d5464c Giorgos Korfiatis
    set their respective default base quota limit. Removed resource
51 38d5464c Giorgos Korfiatis
    definitions from settings.
52 38d5464c Giorgos Korfiatis
  * Moved service and resource presentation data out of the respective db
53 38d5464c Giorgos Korfiatis
    models into a separate file of UI constants.
54 38d5464c Giorgos Korfiatis
55 38d5464c Giorgos Korfiatis
* Converted the limit on pending applications from a setting to a quotable
56 38d5464c Giorgos Korfiatis
  resource. Converted the related user setting to a user-specific base quota
57 38d5464c Giorgos Korfiatis
  limit. Deprecated model UserSetting; removed setting
58 38d5464c Giorgos Korfiatis
  ASTAKOS_PENDING_APPLICATION_LIMIT.
59 38d5464c Giorgos Korfiatis
60 38d5464c Giorgos Korfiatis
* Changes in locking strategy:
61 38d5464c Giorgos Korfiatis
62 38d5464c Giorgos Korfiatis
  * Lock only project's chain for all project operations; lock user before
63 38d5464c Giorgos Korfiatis
    syncing to quotaholder.
64 38d5464c Giorgos Korfiatis
  * When locking multiple rows (e.g. users or holdings) include an ORDER BY
65 38d5464c Giorgos Korfiatis
    clause in the query to impose ordering on locking.
66 38d5464c Giorgos Korfiatis
67 38d5464c Giorgos Korfiatis
* API-related changes:
68 38d5464c Giorgos Korfiatis
69 008fd5cd Constantinos Venetsanopoulos
  * Implemented API calls for quota, resources, and commissions.
70 7421af4a Giorgos Korfiatis
  * Moved all API calls under '/account/v1.0'. Kept also previous locations
71 008fd5cd Constantinos Venetsanopoulos
    for backwards compatibility.
72 38d5464c Giorgos Korfiatis
73 38d5464c Giorgos Korfiatis
* Changes in views:
74 38d5464c Giorgos Korfiatis
75 38d5464c Giorgos Korfiatis
  * Replaced custom transaction context with a simple decorator for managing
76 38d5464c Giorgos Korfiatis
    transactions and a context 'ExceptionHandler', which logs and suppresses
77 38d5464c Giorgos Korfiatis
    exceptions
78 38d5464c Giorgos Korfiatis
79 7e7cd786 Kostas Papadimitriou
* Added fine grain user auth provider's policies.
80 7e7cd786 Kostas Papadimitriou
81 7e7cd786 Kostas Papadimitriou
  * Administrator can override default auth provider policies to a specific 
82 7e7cd786 Kostas Papadimitriou
    user or group of users.
83 7e7cd786 Kostas Papadimitriou
  * Optionally a user can be assigned to a list of groups, based on the
84 7e7cd786 Kostas Papadimitriou
    authentication method he choosed to signup.
85 7e7cd786 Kostas Papadimitriou
86 7e7cd786 Kostas Papadimitriou
* Removed explicit handling of SMTP errors on each email delivery. Exceptions 
87 7e7cd786 Kostas Papadimitriou
  are now propagated to base django exception handler.
88 7e7cd786 Kostas Papadimitriou
89 7e7cd786 Kostas Papadimitriou
* Improvements in user activation flow
90 7e7cd786 Kostas Papadimitriou
91 7e7cd786 Kostas Papadimitriou
  * User moderation now takes place after the user has verified his email
92 7e7cd786 Kostas Papadimitriou
    address.
93 7e7cd786 Kostas Papadimitriou
  * User model enriched with additional user state fields
94 7e7cd786 Kostas Papadimitriou
  * Split activation email from moderation process. Administrator is required 
95 7e7cd786 Kostas Papadimitriou
    to moderate user explicitly using the `user-modify --accept` or
96 7e7cd786 Kostas Papadimitriou
    `user-modify --reject` commands.
97 008fd5cd Constantinos Venetsanopoulos
  * Improved logging throught out user activation procedures.
98 7e7cd786 Kostas Papadimitriou
99 38d5464c Giorgos Korfiatis
* Management commands:
100 38d5464c Giorgos Korfiatis
101 38d5464c Giorgos Korfiatis
  * Renamed command astakos-quota to quota; user-update to user-modify.
102 38d5464c Giorgos Korfiatis
  * Removed user-set-initial-quota; integrated its functionality in
103 38d5464c Giorgos Korfiatis
    user-modify and quota.
104 38d5464c Giorgos Korfiatis
  * Added quota and project-related information in user-show command; added
105 38d5464c Giorgos Korfiatis
    membership information in project-show.
106 7e7cd786 Kostas Papadimitriou
  * New commands introduced
107 7e7cd786 Kostas Papadimitriou
108 7e7cd786 Kostas Papadimitriou
    * user-group-{add, list}
109 7e7cd786 Kostas Papadimitriou
    * user-auth-policy-{add, list, remove, set, show}
110 7e7cd786 Kostas Papadimitriou
111 a43b07ae Christos Stavrakakis
Cyclades
112 a43b07ae Christos Stavrakakis
--------
113 008fd5cd Constantinos Venetsanopoulos
114 fe5ea1c4 Christos Stavrakakis
* Make 'type' attribute required for network create API request.
115 fe5ea1c4 Christos Stavrakakis
* Networks not created to all Ganeti backends upon creation, they are instead
116 fe5ea1c4 Christos Stavrakakis
  created to a backend only when a VM connects to the network.
117 28c41829 Christos Stavrakakis
* Add 'ASTAKOS_POOLSIZE' setting which tunes the size of the http connection
118 28c41829 Christos Stavrakakis
  pool to astakos.
119 6e27e449 Christos Stavrakakis
* Remove 'CYCLADES_USER_CATALOG_URL' and 'CYCLADES_USER_FEEDBACK_URL' settings
120 d0986bac Christos Stavrakakis
* Remove CYCLADES_USE_QUOTAHOLDER, CYCLADES_QUOTAHOLDER_TOKEN,
121 d0986bac Christos Stavrakakis
  CYCLADES_QUOTAHOLDER_URL, CYCLADES_QUOTAHOLDER_POOLSIZE settings
122 62c86226 Christos Stavrakakis
* Rename 'cyclades-usage-verify' management command to
123 62c86226 Christos Stavrakakis
  'reconcile-resources-cyclades'. Also, remove 'cyclades-usage-reset' command,
124 62c86226 Christos Stavrakakis
  which is equivalent to 'reconcile-resources-cyclades --fix'.
125 62c86226 Christos Stavrakakis
* Rename 'cyclades-reconcile-commissions' management command to
126 62c86226 Christos Stavrakakis
  'reconcile-commissions-cyclades'.
127 30096a2e Christos Stavrakakis
* Remove obsolete 'MAX_VMS_PER_USER', 'MAX_NETWORKS_PER_USER',
128 30096a2e Christos Stavrakakis
  "VMS_USER_QUOTA" and "NETWORKS_USER_QUOTA" settings, since their usage
129 30096a2e Christos Stavrakakis
  is covered by Quotaholder.
130 62c86226 Christos Stavrakakis
131 f62b110e Kostas Papadimitriou
Cyclades helpdesk
132 f62b110e Kostas Papadimitriou
-----------------
133 008fd5cd Constantinos Venetsanopoulos
134 f62b110e Kostas Papadimitriou
* Additional start/stop vm action
135 f62b110e Kostas Papadimitriou
* Display extend backend info in vm's view
136 f62b110e Kostas Papadimitriou
* Fixed IP lookup
137 f62b110e Kostas Papadimitriou
138 a43b07ae Christos Stavrakakis
Pithos
139 a43b07ae Christos Stavrakakis
------
140 008fd5cd Constantinos Venetsanopoulos
141 f0001470 Christos Stavrakakis
* Remove PITHOS_AUTHENTICATION_USERS setting, which was used to override
142 f0001470 Christos Stavrakakis
  astakos users.
143 a5fbc00d Christos Stavrakakis
* Remove 'PITHOS_USER_CATALOG_URL', 'PITHOS_USER_FEEDBACK_URL' and
144 a5fbc00d Christos Stavrakakis
  'PITHOS_USER_LOGIN_URL' settings.
145 79b5d61b Sofia Papagiannaki
* Remove PITHOS_USE_QUOTAHOLDER, PITHOS_QUOTAHOLDER_URL,
146 79b5d61b Sofia Papagiannaki
  PITHOS_QUOTAHOLDER_TOKEN and PITHOS_ASTAKOSCLIENT_POOLSIZE
147 a43b07ae Christos Stavrakakis
148 a43b07ae Christos Stavrakakis
Tools
149 a43b07ae Christos Stavrakakis
-----
150 a43b07ae Christos Stavrakakis
151 a43b07ae Christos Stavrakakis
152 5ede2c79 Constantinos Venetsanopoulos
.. _Changelog-0.13:
153 5ede2c79 Constantinos Venetsanopoulos
154 5ede2c79 Constantinos Venetsanopoulos
v0.13
155 5ede2c79 Constantinos Venetsanopoulos
=====
156 5ede2c79 Constantinos Venetsanopoulos
157 7e41df58 Christos Stavrakakis
Released: Wed Apr 10 18:52:50 EEST 2013
158 5ede2c79 Constantinos Venetsanopoulos
159 3045e739 Constantinos Venetsanopoulos
In v0.13 the code was very heavily refactored for increased uniformity since
160 3045e739 Constantinos Venetsanopoulos
most of the Synnefo components have been merged into a single repository. Thus,
161 3045e739 Constantinos Venetsanopoulos
**just for this version** we will not document a complete Changelog (features,
162 3045e739 Constantinos Venetsanopoulos
fixes, improvements, issues, setting changes), but rather just copy from the
163 3045e739 Constantinos Venetsanopoulos
`NEWS` file with minor additions wherever needed.
164 3045e739 Constantinos Venetsanopoulos
165 3045e739 Constantinos Venetsanopoulos
Synnefo-wide
166 3045e739 Constantinos Venetsanopoulos
------------
167 3045e739 Constantinos Venetsanopoulos
168 3045e739 Constantinos Venetsanopoulos
* Support for pooling throughout Synnefo
169 3045e739 Constantinos Venetsanopoulos
170 3045e739 Constantinos Venetsanopoulos
  * Pooled Django DB connections, Pithos backend connections, HTTP
171 3045e739 Constantinos Venetsanopoulos
    connections using single `objpool` package
172 3045e739 Constantinos Venetsanopoulos
173 3045e739 Constantinos Venetsanopoulos
* Improved management commands
174 3045e739 Constantinos Venetsanopoulos
175 3045e739 Constantinos Venetsanopoulos
  * Unified codebase for output of tables in JSON, CSV
176 3045e739 Constantinos Venetsanopoulos
177 3045e739 Constantinos Venetsanopoulos
* Bring most of Synnefo code inside a single, unified repository
178 3045e739 Constantinos Venetsanopoulos
179 3045e739 Constantinos Venetsanopoulos
  * support automatic Python and Debian package builds for individual commits
180 3045e739 Constantinos Venetsanopoulos
  * with automatic version generation
181 3045e739 Constantinos Venetsanopoulos
182 3045e739 Constantinos Venetsanopoulos
* Overhauling of Synnefo settings: renames and refactoring, for increased
183 3045e739 Constantinos Venetsanopoulos
  uniformity (in progress)
184 3045e739 Constantinos Venetsanopoulos
* Deployment: Standardize on gunicorn, with gevent-based workers
185 3045e739 Constantinos Venetsanopoulos
  and use of Green threads throughout Synnefo
186 3045e739 Constantinos Venetsanopoulos
* Documentation: New scale-out guide, with distinct node roles,
187 3045e739 Constantinos Venetsanopoulos
  for mass Synnefo deployments
188 3045e739 Constantinos Venetsanopoulos
189 5ede2c79 Constantinos Venetsanopoulos
Astakos
190 5ede2c79 Constantinos Venetsanopoulos
-------
191 5ede2c79 Constantinos Venetsanopoulos
192 3045e739 Constantinos Venetsanopoulos
* Support multiple authentication methods
193 3045e739 Constantinos Venetsanopoulos
194 3045e739 Constantinos Venetsanopoulos
  * Classic (username/password), Shibboleth, LDAP/Active Directory,
195 3045e739 Constantinos Venetsanopoulos
    Google, Twitter, LinkedIn
196 3045e739 Constantinos Venetsanopoulos
  * Users can enable/disable auth methods, and switch between them
197 3045e739 Constantinos Venetsanopoulos
198 3045e739 Constantinos Venetsanopoulos
* Introduce a UUID as a global identifier for users, throughout Synnefo
199 3045e739 Constantinos Venetsanopoulos
200 3045e739 Constantinos Venetsanopoulos
  * The UUID remains constant as the user enables/disables login methods
201 3045e739 Constantinos Venetsanopoulos
202 3045e739 Constantinos Venetsanopoulos
* Allow users to modify their email address freely
203 3045e739 Constantinos Venetsanopoulos
* Per-user, per-resource accounting mechanism (quotaholder)
204 3045e739 Constantinos Venetsanopoulos
* Full quota support, with per-user, per-resource quotas, based on quotaholder
205 3045e739 Constantinos Venetsanopoulos
* Projects: Users can create and join Projects
206 3045e739 Constantinos Venetsanopoulos
207 3045e739 Constantinos Venetsanopoulos
  * Projects grant extra resources to their members
208 3045e739 Constantinos Venetsanopoulos
209 3045e739 Constantinos Venetsanopoulos
* UI Enhancements for quotas and projects
210 3045e739 Constantinos Venetsanopoulos
211 3045e739 Constantinos Venetsanopoulos
  * distinct Usage tab, showing usage of individual resources
212 3045e739 Constantinos Venetsanopoulos
  * Project management UI
213 3045e739 Constantinos Venetsanopoulos
  * New Overview page
214 5ede2c79 Constantinos Venetsanopoulos
215 5ede2c79 Constantinos Venetsanopoulos
Cyclades
216 5ede2c79 Constantinos Venetsanopoulos
--------
217 5ede2c79 Constantinos Venetsanopoulos
218 3045e739 Constantinos Venetsanopoulos
* Commission resources on quotaholder/Astakos
219 3045e739 Constantinos Venetsanopoulos
* Support mass creation of flavors
220 3045e739 Constantinos Venetsanopoulos
* Support for the ExtStorage disk template in Ganeti
221 3045e739 Constantinos Venetsanopoulos
* Query and report quotas in the UI
222 3045e739 Constantinos Venetsanopoulos
* Pass VM configuration parameters over a VM-side API (`vmapi`)
223 3045e739 Constantinos Venetsanopoulos
224 3045e739 Constantinos Venetsanopoulos
  * Do not pass sensitive data as Ganeti OS parameters
225 3045e739 Constantinos Venetsanopoulos
  * Keep sensitive data in memory caches (memcached) and
226 3045e739 Constantinos Venetsanopoulos
    never allow them to hit the disk
227 3045e739 Constantinos Venetsanopoulos
228 3045e739 Constantinos Venetsanopoulos
* Display additional backend information in helpdesk machines list
229 3045e739 Constantinos Venetsanopoulos
* Allow helpdesk users to search for an account using a known machine id
230 3045e739 Constantinos Venetsanopoulos
* Helpdesk actions are now logged using the synnefo's common login
231 3045e739 Constantinos Venetsanopoulos
  infrastructure
232 5ede2c79 Constantinos Venetsanopoulos
233 5ede2c79 Constantinos Venetsanopoulos
Pithos
234 5ede2c79 Constantinos Venetsanopoulos
------
235 5ede2c79 Constantinos Venetsanopoulos
236 3045e739 Constantinos Venetsanopoulos
* Support storage of blocks on a RADOS backend, for Archipelago
237 072047b1 Sofia Papagiannaki
238 072047b1 Sofia Papagiannaki
  * new settings:
239 072047b1 Sofia Papagiannaki
    PITHOS_RADOS_STORAGE, PITHOS_RADOS_POOL_BLOCKS, PITHOS_RADOS_POOL_MAPS
240 072047b1 Sofia Papagiannaki
241 3045e739 Constantinos Venetsanopoulos
* Rewritten support for public URLs, with admin-selectable length
242 5ede2c79 Constantinos Venetsanopoulos
243 072047b1 Sofia Papagiannaki
  * new settings:
244 072047b1 Sofia Papagiannaki
    PITHOS_PUBLIC_URL_SECURITY, PITHOS_PUBLIC_URL_ALPHABET
245 072047b1 Sofia Papagiannaki
246 072047b1 Sofia Papagiannaki
* Enable pithos backend to use external quotaholder component
247 072047b1 Sofia Papagiannaki
248 072047b1 Sofia Papagiannaki
  * new settings:
249 072047b1 Sofia Papagiannaki
    PITHOS_USE_QUOTAHOLDER, PITHOS_QUOTAHOLDER_URL, PITHOS_QUOTAHOLDER_TOKEN,
250 072047b1 Sofia Papagiannaki
    PITHOS_QUOTAHOLDER_POOLSIZE
251 072047b1 Sofia Papagiannaki
252 072047b1 Sofia Papagiannaki
* Moderated version debiting mechanism
253 072047b1 Sofia Papagiannaki
254 072047b1 Sofia Papagiannaki
  * new setting:
255 072047b1 Sofia Papagiannaki
    PITHOS_BACKEND_FREE_VERSIONING
256 072047b1 Sofia Papagiannaki
257 072047b1 Sofia Papagiannaki
* Proxy Astakos user-visible services
258 072047b1 Sofia Papagiannaki
259 072047b1 Sofia Papagiannaki
  * new settings:
260 072047b1 Sofia Papagiannaki
    PITHOS_PROXY_USER_SERVICES, PITHOS_USER_CATALOG_URL,
261 072047b1 Sofia Papagiannaki
    PITHOS_USER_FEEDBACK_URL, PITHOS_USER_LOGIN_URL
262 072047b1 Sofia Papagiannaki
263 3045e739 Constantinos Venetsanopoulos
Tools
264 5ede2c79 Constantinos Venetsanopoulos
-----
265 5ede2c79 Constantinos Venetsanopoulos
266 3045e739 Constantinos Venetsanopoulos
* Extend snf-burnin to include testing of Pithos functionality