Statistics
| Branch: | Tag: | Revision:

root / Changelog @ 0be81d73

History | View | Annotate | Download (7.7 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
* Create 'snf_django' Python package to hold common code for all Synnefo
20
  components.
21
* CLOUDBAR_SERVICES_URL should point to /astakos/api/get_services
22

    
23
Astakos
24
-------
25
* Redesign of the accounting system (quotaholder) and integration into
26
astakos.
27

    
28
  * Simplified the quotaholder model; removed tables Entity and Policy; now
29
    table Holding contains limit and usage for every holding.
30

    
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

    
35
  * Refactored code for issuing and resolving commissions for robustness;
36
    added a 'force' option to bypass the upper limit check when issuing a
37
    commission.
38

    
39
  * Simplified syncing to the quotaholder; removed fields from models
40
    Project and ProjectMembership, previously needed for syncing; removed
41
    state PROJECT_DEACTIVATED from ProjectMembership.
42

    
43
* Service and resource specification and handling:
44

    
45
  * Specified a format for defining resources a service exposes. Migrated
46
    internal resource name by prefixing it with service name (e.g. 'vm'
47
    becomes 'cyclades.vm'); renamed registered service 'pithos+' to
48
    'pithos'.
49

    
50
  * Specified a procedure to register a service's resources in astakos and
51
    set their respective default base quota limit. Removed resource
52
    definitions from settings.
53

    
54
  * Moved service and resource presentation data out of the respective db
55
    models into a separate file of UI constants.
56

    
57
* Converted the limit on pending applications from a setting to a quotable
58
  resource. Converted the related user setting to a user-specific base quota
59
  limit. Deprecated model UserSetting; removed setting
60
  ASTAKOS_PENDING_APPLICATION_LIMIT.
61

    
62
* Changes in locking strategy:
63

    
64
  * Lock only project's chain for all project operations; lock user before
65
    syncing to quotaholder.
66

    
67
  * When locking multiple rows (e.g. users or holdings) include an ORDER BY
68
    clause in the query to impose ordering on locking.
69

    
70
* API-related changes:
71

    
72
 * Implemented API calls for quota, resources, and commissions.
73

    
74
 * Moved all API calls under '/astakos/api'. Kept also previous locations
75
   for backwards compatibility.
76

    
77
* Changes in views:
78

    
79
  * Replaced custom transaction context with a simple decorator for managing
80
    transactions and a context 'ExceptionHandler', which logs and suppresses
81
    exceptions
82

    
83
* Management commands:
84

    
85
  * Renamed command astakos-quota to quota; user-update to user-modify.
86

    
87
  * Removed user-set-initial-quota; integrated its functionality in
88
    user-modify and quota.
89

    
90
  * Added quota and project-related information in user-show command; added
91
    membership information in project-show.
92

    
93

    
94
Cyclades
95
--------
96
* Make 'type' attribute required for network create API request.
97
* Networks not created to all Ganeti backends upon creation, they are instead
98
  created to a backend only when a VM connects to the network.
99
* Add 'ASTAKOS_POOLSIZE' setting which tunes the size of the http connection
100
  pool to astakos.
101
* Remove 'CYCLADES_USER_CATALOG_URL' and 'CYCLADES_USER_FEEDBACK_URL' settings
102
* Remove CYCLADES_USE_QUOTAHOLDER, CYCLADES_QUOTAHOLDER_TOKEN,
103
  CYCLADES_QUOTAHOLDER_URL, CYCLADES_QUOTAHOLDER_POOLSIZE settings
104
* Rename 'cyclades-usage-verify' management command to
105
  'reconcile-resources-cyclades'. Also, remove 'cyclades-usage-reset' command,
106
  which is equivalent to 'reconcile-resources-cyclades --fix'.
107
* Rename 'cyclades-reconcile-commissions' management command to
108
  'reconcile-commissions-cyclades'.
109
* Remove obsolete 'MAX_VMS_PER_USER', 'MAX_NETWORKS_PER_USER',
110
  "VMS_USER_QUOTA" and "NETWORKS_USER_QUOTA" settings, since their usage
111
  is covered by Quotaholder.
112

    
113

    
114
Pithos
115
------
116
* Remove PITHOS_AUTHENTICATION_USERS setting, which was used to override
117
  astakos users.
118
* Remove 'PITHOS_USER_CATALOG_URL', 'PITHOS_USER_FEEDBACK_URL' and
119
  'PITHOS_USER_LOGIN_URL' settings.
120
* Remove PITHOS_USE_QUOTAHOLDER, PITHOS_QUOTAHOLDER_URL,
121
  PITHOS_QUOTAHOLDER_TOKEN and PITHOS_ASTAKOSCLIENT_POOLSIZE
122

    
123
Tools
124
-----
125

    
126

    
127
.. _Changelog-0.13:
128

    
129
v0.13
130
=====
131

    
132
Released: Wed Apr 10 18:52:50 EEST 2013
133

    
134
In v0.13 the code was very heavily refactored for increased uniformity since
135
most of the Synnefo components have been merged into a single repository. Thus,
136
**just for this version** we will not document a complete Changelog (features,
137
fixes, improvements, issues, setting changes), but rather just copy from the
138
`NEWS` file with minor additions wherever needed.
139

    
140
Synnefo-wide
141
------------
142

    
143
* Support for pooling throughout Synnefo
144

    
145
  * Pooled Django DB connections, Pithos backend connections, HTTP
146
    connections using single `objpool` package
147

    
148
* Improved management commands
149

    
150
  * Unified codebase for output of tables in JSON, CSV
151

    
152
* Bring most of Synnefo code inside a single, unified repository
153

    
154
  * support automatic Python and Debian package builds for individual commits
155
  * with automatic version generation
156

    
157
* Overhauling of Synnefo settings: renames and refactoring, for increased
158
  uniformity (in progress)
159
* Deployment: Standardize on gunicorn, with gevent-based workers
160
  and use of Green threads throughout Synnefo
161
* Documentation: New scale-out guide, with distinct node roles,
162
  for mass Synnefo deployments
163

    
164
Astakos
165
-------
166

    
167
* Support multiple authentication methods
168

    
169
  * Classic (username/password), Shibboleth, LDAP/Active Directory,
170
    Google, Twitter, LinkedIn
171
  * Users can enable/disable auth methods, and switch between them
172

    
173
* Introduce a UUID as a global identifier for users, throughout Synnefo
174

    
175
  * The UUID remains constant as the user enables/disables login methods
176

    
177
* Allow users to modify their email address freely
178
* Per-user, per-resource accounting mechanism (quotaholder)
179
* Full quota support, with per-user, per-resource quotas, based on quotaholder
180
* Projects: Users can create and join Projects
181

    
182
  * Projects grant extra resources to their members
183

    
184
* UI Enhancements for quotas and projects
185

    
186
  * distinct Usage tab, showing usage of individual resources
187
  * Project management UI
188
  * New Overview page
189

    
190
Cyclades
191
--------
192

    
193
* Commission resources on quotaholder/Astakos
194
* Support mass creation of flavors
195
* Support for the ExtStorage disk template in Ganeti
196
* Query and report quotas in the UI
197
* Pass VM configuration parameters over a VM-side API (`vmapi`)
198

    
199
  * Do not pass sensitive data as Ganeti OS parameters
200
  * Keep sensitive data in memory caches (memcached) and
201
    never allow them to hit the disk
202

    
203
* Display additional backend information in helpdesk machines list
204
* Allow helpdesk users to search for an account using a known machine id
205
* Helpdesk actions are now logged using the synnefo's common login
206
  infrastructure
207

    
208
Pithos
209
------
210

    
211
* Support storage of blocks on a RADOS backend, for Archipelago
212

    
213
  * new settings:
214
    PITHOS_RADOS_STORAGE, PITHOS_RADOS_POOL_BLOCKS, PITHOS_RADOS_POOL_MAPS
215

    
216
* Rewritten support for public URLs, with admin-selectable length
217

    
218
  * new settings:
219
    PITHOS_PUBLIC_URL_SECURITY, PITHOS_PUBLIC_URL_ALPHABET
220

    
221
* Enable pithos backend to use external quotaholder component
222

    
223
  * new settings:
224
    PITHOS_USE_QUOTAHOLDER, PITHOS_QUOTAHOLDER_URL, PITHOS_QUOTAHOLDER_TOKEN,
225
    PITHOS_QUOTAHOLDER_POOLSIZE
226

    
227
* Moderated version debiting mechanism
228

    
229
  * new setting:
230
    PITHOS_BACKEND_FREE_VERSIONING
231

    
232
* Proxy Astakos user-visible services
233

    
234
  * new settings:
235
    PITHOS_PROXY_USER_SERVICES, PITHOS_USER_CATALOG_URL,
236
    PITHOS_USER_FEEDBACK_URL, PITHOS_USER_LOGIN_URL
237

    
238
Tools
239
-----
240

    
241
* Extend snf-burnin to include testing of Pithos functionality