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