Merge lp:~devcamcar/horizon/pep8-fixes into lp:~hudson-openstack/horizon/trunk
- pep8-fixes
- Merge into trunk
Proposed by
Devin Carlen
Status: | Merged |
---|---|
Approved by: | Devin Carlen |
Approved revision: | 59 |
Merged at revision: | 59 |
Proposed branch: | lp:~devcamcar/horizon/pep8-fixes |
Merge into: | lp:~hudson-openstack/horizon/trunk |
Diff against target: |
1560 lines (+363/-294) 31 files modified
django-openstack/src/django_openstack/core/connection.py (+2/-6) django-openstack/src/django_openstack/management/commands/createnovausers.py (+1/-0) django-openstack/src/django_openstack/models.py (+4/-3) django-openstack/src/django_openstack/nova/exceptions.py (+0/-2) django-openstack/src/django_openstack/nova/forms.py (+28/-12) django-openstack/src/django_openstack/nova/manager.py (+34/-30) django-openstack/src/django_openstack/nova/shortcuts.py (+8/-5) django-openstack/src/django_openstack/nova/templatetags/region_tags.py (+0/-1) django-openstack/src/django_openstack/nova/tests/base.py (+0/-1) django-openstack/src/django_openstack/nova/tests/credential_tests.py (+2/-2) django-openstack/src/django_openstack/nova/tests/image_tests.py (+4/-2) django-openstack/src/django_openstack/nova/tests/instance_tests.py (+21/-20) django-openstack/src/django_openstack/nova/tests/keypair_tests.py (+2/-2) django-openstack/src/django_openstack/nova/tests/region_tests.py (+0/-2) django-openstack/src/django_openstack/nova/tests/volume_tests.py (+2/-1) django-openstack/src/django_openstack/nova/views/admin.py (+78/-62) django-openstack/src/django_openstack/nova/views/credentials.py (+2/-2) django-openstack/src/django_openstack/nova/views/images.py (+5/-6) django-openstack/src/django_openstack/nova/views/instances.py (+52/-40) django-openstack/src/django_openstack/nova/views/keypairs.py (+12/-8) django-openstack/src/django_openstack/nova/views/projects.py (+20/-16) django-openstack/src/django_openstack/nova/views/securitygroups.py (+35/-30) django-openstack/src/django_openstack/nova/views/volumes.py (+32/-27) django-openstack/src/django_openstack/templatetags/templatetags/admin_extras.py (+7/-4) django-openstack/src/django_openstack/templatetags/templatetags/django_openstack_tags.py (+1/-1) django-openstack/src/django_openstack/templatetags/templatetags/sidebar_tags.py (+4/-2) django-openstack/src/django_openstack/templatetags/templatetags/truncate_filter.py (+2/-1) django-openstack/src/django_openstack/testurls.py (+0/-1) openstack-dashboard/dashboard/settings.py (+1/-1) openstack-dashboard/dashboard/urls.py (+3/-3) openstack-dashboard/dashboard/views.py (+1/-1) |
To merge this branch: | bzr merge lp:~devcamcar/horizon/pep8-fixes |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Devin Carlen | Pending | ||
Review via email: mp+63058@code.launchpad.net |
Commit message
Description of the change
Lots of minor pep8 fixes
To post a comment you must log in.
Preview Diff
[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1 | === modified file 'django-openstack/src/django_openstack/core/connection.py' |
2 | --- django-openstack/src/django_openstack/core/connection.py 2011-05-16 21:24:17 +0000 |
3 | +++ django-openstack/src/django_openstack/core/connection.py 2011-06-01 01:17:23 +0000 |
4 | @@ -27,12 +27,8 @@ |
5 | """ |
6 | Returns a Nova administration connection. |
7 | """ |
8 | - return adminclient.NovaAdminClient ( |
9 | + return adminclient.NovaAdminClient( |
10 | clc_url=settings.NOVA_DEFAULT_ENDPOINT, |
11 | region=settings.NOVA_DEFAULT_REGION, |
12 | access_key=settings.NOVA_ACCESS_KEY, |
13 | - secret_key=settings.NOVA_SECRET_KEY |
14 | - ) |
15 | - |
16 | - |
17 | - |
18 | + secret_key=settings.NOVA_SECRET_KEY) |
19 | |
20 | === modified file 'django-openstack/src/django_openstack/management/commands/createnovausers.py' |
21 | --- django-openstack/src/django_openstack/management/commands/createnovausers.py 2011-03-03 01:20:17 +0000 |
22 | +++ django-openstack/src/django_openstack/management/commands/createnovausers.py 2011-06-01 01:17:23 +0000 |
23 | @@ -24,6 +24,7 @@ |
24 | from django.contrib.auth.models import User |
25 | from django_nova.connection import get_nova_admin_connection |
26 | |
27 | + |
28 | class Command(NoArgsCommand): |
29 | help = 'Creates nova users for all users in the django auth database.' |
30 | |
31 | |
32 | === modified file 'django-openstack/src/django_openstack/models.py' |
33 | --- django-openstack/src/django_openstack/models.py 2011-05-16 21:24:17 +0000 |
34 | +++ django-openstack/src/django_openstack/models.py 2011-06-01 01:17:23 +0000 |
35 | @@ -33,7 +33,7 @@ |
36 | from django_openstack.core.connection import get_nova_admin_connection |
37 | |
38 | |
39 | -SHA1_RE=re.compile('^[a-f0-9]{40}$') |
40 | +SHA1_RE = re.compile('^[a-f0-9]{40}$') |
41 | |
42 | |
43 | class CredentialsAuthorization(models.Model): |
44 | @@ -65,10 +65,11 @@ |
45 | @staticmethod |
46 | def create_auth_token(username): |
47 | salt = sha.new(str(random.random())).hexdigest()[:5] |
48 | - return sha.new(salt+username).hexdigest() |
49 | + return sha.new(salt + username).hexdigest() |
50 | |
51 | def auth_token_expired(self): |
52 | - expiration_date = datetime.timedelta(days=int(settings.CREDENTIAL_AUTHORIZATION_DAYS)) |
53 | + expiration_date = datetime.timedelta( |
54 | + days=int(settings.CREDENTIAL_AUTHORIZATION_DAYS)) |
55 | |
56 | return self.auth_date + expiration_date <= datetime.datetime.now() |
57 | |
58 | |
59 | === modified file 'django-openstack/src/django_openstack/nova/exceptions.py' |
60 | --- django-openstack/src/django_openstack/nova/exceptions.py 2011-05-16 21:18:16 +0000 |
61 | +++ django-openstack/src/django_openstack/nova/exceptions.py 2011-06-01 01:17:23 +0000 |
62 | @@ -91,5 +91,3 @@ |
63 | except NovaUnavailableError: |
64 | return redirect('nova_unavailable') |
65 | return decorator |
66 | - |
67 | - |
68 | |
69 | === modified file 'django-openstack/src/django_openstack/nova/forms.py' |
70 | --- django-openstack/src/django_openstack/nova/forms.py 2011-05-16 21:24:17 +0000 |
71 | +++ django-openstack/src/django_openstack/nova/forms.py 2011-06-01 01:17:23 +0000 |
72 | @@ -47,6 +47,7 @@ |
73 | (t.name, t.memory_mb, t.vcpus, t.disk_gb))) |
74 | return rv |
75 | |
76 | + |
77 | def get_instance_choices(project): |
78 | choices = [(i.id, "%s (%s)" % (i.id, i.displayName)) |
79 | for i in project.get_instances()] |
80 | @@ -54,6 +55,7 @@ |
81 | choices = [('', 'none available')] |
82 | return choices |
83 | |
84 | + |
85 | def get_key_pair_choices(project): |
86 | choices = [(k.name, k.name) for k in project.get_key_pairs()] |
87 | if not len(choices): |
88 | @@ -66,31 +68,36 @@ |
89 | # choices = [('', 'none available')] |
90 | # return choices |
91 | |
92 | + |
93 | def get_available_volume_choices(project): |
94 | - choices = [(v.id, '%s %s - %dGB' % (v.id, v.displayName, v.size)) for v in \ |
95 | - project.get_volumes() if v.status != "in-use"] |
96 | + choices = [(v.id, '%s %s - %dGB' % (v.id, v.displayName, v.size)) |
97 | + for v in project.get_volumes() if v.status != 'in-use'] |
98 | if not len(choices): |
99 | choices = [('', 'none available')] |
100 | return choices |
101 | |
102 | + |
103 | def get_protocols(): |
104 | return ( |
105 | ('tcp', 'tcp'), |
106 | ('udp', 'udp'), |
107 | ) |
108 | |
109 | + |
110 | @wrap_nova_error |
111 | def get_roles(project_roles=True): |
112 | nova = get_nova_admin_connection() |
113 | roles = nova.get_roles(project_roles=project_roles) |
114 | return [(role.role, role.role) for role in roles] |
115 | |
116 | + |
117 | @wrap_nova_error |
118 | def get_members(project): |
119 | nova = get_nova_admin_connection() |
120 | members = nova.get_project_members(project) |
121 | return [str(user.memberId) for user in members] |
122 | |
123 | + |
124 | @wrap_nova_error |
125 | def set_project_roles(projectname, username, roles): |
126 | nova = get_nova_admin_connection() |
127 | @@ -100,6 +107,7 @@ |
128 | for role in roles: |
129 | nova.add_user_role(username, str(role), projectname) |
130 | |
131 | + |
132 | def _remove_roles(project, username): |
133 | nova = get_nova_admin_connection() |
134 | userroles = nova.get_user_roles(username, project) |
135 | @@ -127,19 +135,21 @@ |
136 | count = forms.ChoiceField(choices=[(x, x) for x in range(1, 6)]) |
137 | size = forms.ChoiceField() |
138 | key_name = forms.ChoiceField() |
139 | - #security_group = forms.ChoiceField() |
140 | - user_data = forms.CharField(required=False, widget=forms.widgets.Textarea(attrs={'rows': 4})) |
141 | + user_data = forms.CharField(required=False, |
142 | + widget=forms.widgets.Textarea( |
143 | + attrs={'rows': 4})) |
144 | |
145 | def __init__(self, project, *args, **kwargs): |
146 | forms.Form.__init__(self, *args, **kwargs) |
147 | - #self.fields['security_group'].choices = get_security_group_choices(project) |
148 | self.fields['key_name'].choices = get_key_pair_choices(project) |
149 | self.fields['size'].choices = get_instance_type_choices() |
150 | |
151 | |
152 | class UpdateInstanceForm(forms.Form): |
153 | nickname = forms.CharField(required=False, label="Name") |
154 | - description = forms.CharField(required=False, widget=forms.Textarea, max_length=70) |
155 | + description = forms.CharField(required=False, |
156 | + widget=forms.Textarea, |
157 | + max_length=70) |
158 | |
159 | def __init__(self, instance, *args, **kwargs): |
160 | forms.Form.__init__(self, *args, **kwargs) |
161 | @@ -149,7 +159,9 @@ |
162 | |
163 | class UpdateImageForm(forms.Form): |
164 | nickname = forms.CharField(required=False, label="Name") |
165 | - description = forms.CharField(required=False, widget=forms.Textarea, max_length=70) |
166 | + description = forms.CharField(required=False, |
167 | + widget=forms.Textarea, |
168 | + max_length=70) |
169 | |
170 | def __init__(self, image, *args, **kwargs): |
171 | forms.Form.__init__(self, *args, **kwargs) |
172 | @@ -164,7 +176,8 @@ |
173 | name = self.cleaned_data['name'] |
174 | |
175 | if self.project.has_key_pair(name): |
176 | - raise forms.ValidationError('A key named %s already exists.' % name) |
177 | + raise forms.ValidationError( |
178 | + 'A key named %s already exists.' % name) |
179 | |
180 | return name |
181 | |
182 | @@ -177,7 +190,8 @@ |
183 | name = self.cleaned_data['name'] |
184 | |
185 | if self.project.has_security_group(name): |
186 | - raise forms.ValidationError('A security group named %s already exists.' % name) |
187 | + raise forms.ValidationError( |
188 | + 'A security group named %s already exists.' % name) |
189 | |
190 | return name |
191 | |
192 | @@ -189,7 +203,9 @@ |
193 | |
194 | |
195 | class CreateVolumeForm(forms.Form): |
196 | - size = forms.IntegerField(label='Size (in GB)', min_value=1, max_value=MAX_VOLUME_SIZE) |
197 | + size = forms.IntegerField(label='Size (in GB)', |
198 | + min_value=1, |
199 | + max_value=MAX_VOLUME_SIZE) |
200 | nickname = forms.CharField() |
201 | description = forms.CharField() |
202 | |
203 | @@ -259,5 +275,5 @@ |
204 | query_list = kwargs.pop('query_list') |
205 | super(SendCredentialsForm, self).__init__(*args, **kwargs) |
206 | |
207 | - self.fields['users'].choices = [(choices, choices) for choices in query_list] |
208 | - |
209 | + self.fields['users'].choices = \ |
210 | + [(choices, choices) for choices in query_list] |
211 | |
212 | === modified file 'django-openstack/src/django_openstack/nova/manager.py' |
213 | --- django-openstack/src/django_openstack/nova/manager.py 2011-05-16 21:24:17 +0000 |
214 | +++ django-openstack/src/django_openstack/nova/manager.py 2011-06-01 01:17:23 +0000 |
215 | @@ -59,11 +59,12 @@ |
216 | sorted_images = [i for i in images if i.ownerId == self.username] + \ |
217 | [i for i in images if i.ownerId != self.username] |
218 | |
219 | - return [i for i in sorted_images if i.type == 'machine' and i.location.split('/')[0] != 'openstack'] |
220 | + return [i for i in sorted_images if i.type == 'machine' |
221 | + and i.location.split('/')[0] != 'openstack'] |
222 | |
223 | def get_image(self, image_id): |
224 | try: |
225 | - return self.get_images(image_ids=[image_id,])[0] |
226 | + return self.get_images(image_ids=[image_id])[0] |
227 | except IndexError: |
228 | return None |
229 | |
230 | @@ -95,7 +96,6 @@ |
231 | operation=operation, |
232 | groups=groups,) |
233 | |
234 | - |
235 | @wrap_nova_error |
236 | def run_instances(self, image_id, **kwargs): |
237 | """ |
238 | @@ -106,7 +106,8 @@ |
239 | |
240 | def get_instance_count(self): |
241 | """ |
242 | - Returns the number of active instances in this project or None if unknown. |
243 | + Returns the number of active instances in this project |
244 | + or None if unknown. |
245 | """ |
246 | try: |
247 | return len(self.get_instances()) |
248 | @@ -132,7 +133,8 @@ |
249 | Returns detail about the specified instance. |
250 | """ |
251 | conn = self.get_openstack_connection() |
252 | - # TODO: Refactor this once openstack's describe_instances filters by instance_id. |
253 | + # TODO: Refactor this once openstack's describe_instances |
254 | + # filters by instance_id. |
255 | reservations = conn.get_all_instances() |
256 | for reservation in reservations: |
257 | for instance in reservation.instances: |
258 | @@ -143,7 +145,8 @@ |
259 | @wrap_nova_error |
260 | def update_instance(self, instance_id, updates): |
261 | conn = self.get_openstack_connection() |
262 | - params = {'InstanceId': instance_id, 'DisplayName': updates['nickname'], |
263 | + params = {'InstanceId': instance_id, |
264 | + 'DisplayName': updates['nickname'], |
265 | 'DisplayDescription': updates['description']} |
266 | return conn.get_object('UpdateInstance', params, |
267 | boto.ec2.instance.Instance) |
268 | @@ -151,14 +154,13 @@ |
269 | def get_instance_graph(self, region, instance_id, graph_name): |
270 | # TODO(devcamcar): Need better support for multiple regions. |
271 | # Need a way to get object store by region. |
272 | - s3 = boto.s3.connection.S3Connection ( |
273 | + s3 = boto.s3.connection.S3Connection( |
274 | aws_access_key_id=settings.NOVA_ACCESS_KEY, |
275 | aws_secret_access_key=settings.NOVA_SECRET_KEY, |
276 | is_secure=False, |
277 | calling_format=boto.s3.connection.OrdinaryCallingFormat(), |
278 | port=3333, |
279 | - host=settings.NOVA_CLC_IP |
280 | - ) |
281 | + host=settings.NOVA_CLC_IP) |
282 | key = '_%s.monitor' % instance_id |
283 | |
284 | try: |
285 | @@ -202,14 +204,16 @@ |
286 | conn = self.get_openstack_connection() |
287 | |
288 | try: |
289 | - return conn.get_all_security_groups(groupnames=name.encode('ASCII'))[0] |
290 | + return conn.get_all_security_groups( |
291 | + groupnames=name.encode('ASCII'))[0] |
292 | except IndexError: |
293 | return None |
294 | |
295 | @wrap_nova_error |
296 | def has_security_group(self, name): |
297 | """ |
298 | - Indicates whether a security group with the specified name exists in this project. |
299 | + Indicates whether a security group with the specified name |
300 | + exists in this project. |
301 | """ |
302 | return self.get_security_group(name) is not None |
303 | |
304 | @@ -227,35 +231,35 @@ |
305 | Deletes a security group from the project. |
306 | """ |
307 | conn = self.get_openstack_connection() |
308 | - return conn.delete_security_group(name = name) |
309 | + return conn.delete_security_group(name=name) |
310 | |
311 | @wrap_nova_error |
312 | - def authorize_security_group(self, group_name, ip_protocol, from_port, to_port): |
313 | + def authorize_security_group(self, group_name, ip_protocol, from_port, |
314 | + to_port): |
315 | """ |
316 | Authorizes a rule for the specified security group. |
317 | """ |
318 | conn = self.get_openstack_connection() |
319 | - return conn.authorize_security_group ( |
320 | - group_name = group_name, |
321 | - ip_protocol = ip_protocol, |
322 | - from_port = from_port, |
323 | - to_port = to_port, |
324 | - cidr_ip = '0.0.0.0/0' |
325 | - ) |
326 | + return conn.authorize_security_group( |
327 | + group_name=group_name, |
328 | + ip_protocol=ip_protocol, |
329 | + from_port=from_port, |
330 | + to_port=to_port, |
331 | + cidr_ip='0.0.0.0/0') |
332 | |
333 | @wrap_nova_error |
334 | - def revoke_security_group(self, group_name, ip_protocol, from_port, to_port): |
335 | + def revoke_security_group(self, group_name, ip_protocol, from_port, |
336 | + to_port): |
337 | """ |
338 | Revokes a rule for the specified security group. |
339 | """ |
340 | conn = self.get_openstack_connection() |
341 | - return conn.revoke_security_group ( |
342 | - group_name = group_name, |
343 | - ip_protocol = ip_protocol, |
344 | - from_port = from_port, |
345 | - to_port = to_port, |
346 | - cidr_ip = '0.0.0.0/0' |
347 | - ) |
348 | + return conn.revoke_security_group( |
349 | + group_name=group_name, |
350 | + ip_protocol=ip_protocol, |
351 | + from_port=from_port, |
352 | + to_port=to_port, |
353 | + cidr_ip='0.0.0.0/0') |
354 | |
355 | @wrap_nova_error |
356 | def get_key_pairs(self): |
357 | @@ -287,7 +291,8 @@ |
358 | @wrap_nova_error |
359 | def has_key_pair(self, name): |
360 | """ |
361 | - Indicates whether a key pair with the specified name exists in this project. |
362 | + Indicates whether a key pair with the specified name exists |
363 | + in this project. |
364 | """ |
365 | return self.get_key_pair(name) != None |
366 | |
367 | @@ -337,4 +342,3 @@ |
368 | def detach_volume(self, volume_id): |
369 | conn = self.get_openstack_connection() |
370 | return conn.detach_volume(volume_id) |
371 | - |
372 | |
373 | === modified file 'django-openstack/src/django_openstack/nova/shortcuts.py' |
374 | --- django-openstack/src/django_openstack/nova/shortcuts.py 2011-05-16 21:24:17 +0000 |
375 | +++ django-openstack/src/django_openstack/nova/shortcuts.py 2011-06-01 01:17:23 +0000 |
376 | @@ -35,7 +35,8 @@ |
377 | Returns a project or 404s if it doesn't exist. |
378 | """ |
379 | |
380 | - # Ensure that a connection is never attempted for a user that is unauthenticated. |
381 | + # Ensure that a connection is never attempted for a |
382 | + # user that is unauthenticated. |
383 | if not request.user.is_authenticated: |
384 | raise PermissionDenied('User not authenticated') |
385 | |
386 | @@ -76,7 +77,8 @@ |
387 | |
388 | if not regions: |
389 | nova = get_nova_admin_connection() |
390 | - conn = nova.connection_for(settings.NOVA_ADMIN_USER, settings.NOVA_PROJECT) |
391 | + conn = nova.connection_for(settings.NOVA_ADMIN_USER, |
392 | + settings.NOVA_PROJECT) |
393 | results = conn.get_all_regions() |
394 | regions = [{'name': r.name, 'endpoint': r.endpoint} for r in results] |
395 | cache.set('regions', regions, 60 * 60 * 24) |
396 | @@ -115,17 +117,18 @@ |
397 | nova = get_nova_admin_connection() |
398 | user_has_modify_permissions = False |
399 | |
400 | - # checks global roles, if user is a sysadmin they can modify image attribtues. |
401 | + # checks global roles, if user is a sysadmin they can |
402 | + # modify image attribtues. |
403 | if not user_has_modify_permissions: |
404 | for role in nova.get_user_roles(username): |
405 | if role.role == "sysadmin": |
406 | user_has_modify_permissions = True |
407 | |
408 | - # checks project roles, if user is a sysadmin they can modify image attribtues. |
409 | + # checks project roles, if user is a sysadmin they can |
410 | + # modify image attribtues. |
411 | if not user_has_modify_permissions: |
412 | for role in nova.get_user_roles(username, project_name): |
413 | if role.role == "sysadmin": |
414 | user_has_modify_permissions = True |
415 | |
416 | return user_has_modify_permissions |
417 | - |
418 | |
419 | === modified file 'django-openstack/src/django_openstack/nova/templatetags/region_tags.py' |
420 | --- django-openstack/src/django_openstack/nova/templatetags/region_tags.py 2011-05-16 21:10:50 +0000 |
421 | +++ django-openstack/src/django_openstack/nova/templatetags/region_tags.py 2011-06-01 01:17:23 +0000 |
422 | @@ -37,4 +37,3 @@ |
423 | @register.tag |
424 | def load_regions(parser, token): |
425 | return RegionsNode() |
426 | - |
427 | |
428 | === modified file 'django-openstack/src/django_openstack/nova/tests/base.py' |
429 | --- django-openstack/src/django_openstack/nova/tests/base.py 2011-05-16 21:10:50 +0000 |
430 | +++ django-openstack/src/django_openstack/nova/tests/base.py 2011-06-01 01:17:23 +0000 |
431 | @@ -87,4 +87,3 @@ |
432 | def create_available_volume_choices(self, volumes): |
433 | return [(v.id, '%s %s - %dGB' % (v.id, v.displayName, v.size)) \ |
434 | for v in volumes] |
435 | - |
436 | |
437 | === modified file 'django-openstack/src/django_openstack/nova/tests/credential_tests.py' |
438 | --- django-openstack/src/django_openstack/nova/tests/credential_tests.py 2011-05-16 21:40:24 +0000 |
439 | +++ django-openstack/src/django_openstack/nova/tests/credential_tests.py 2011-06-01 01:17:23 +0000 |
440 | @@ -20,7 +20,6 @@ |
441 | Unit tests for credential views. |
442 | """ |
443 | |
444 | -import mox |
445 | from django.conf import settings |
446 | from django.core.urlresolvers import reverse |
447 | from django_openstack import models |
448 | @@ -38,7 +37,8 @@ |
449 | |
450 | res = self.client.get(reverse('nova_credentials_authorize', |
451 | args=[auth_token])) |
452 | - self.assertTemplateUsed(res, 'django_openstack/nova/credentials/expired.html') |
453 | + self.assertTemplateUsed(res, |
454 | + 'django_openstack/nova/credentials/expired.html') |
455 | |
456 | self.mox.VerifyAll() |
457 | |
458 | |
459 | === modified file 'django-openstack/src/django_openstack/nova/tests/image_tests.py' |
460 | --- django-openstack/src/django_openstack/nova/tests/image_tests.py 2011-05-16 21:40:24 +0000 |
461 | +++ django-openstack/src/django_openstack/nova/tests/image_tests.py 2011-06-01 01:17:23 +0000 |
462 | @@ -76,7 +76,8 @@ |
463 | args = [TEST_PROJECT, TEST_IMAGE_ID] |
464 | res = self.client.get(reverse('nova_images_launch', args=args)) |
465 | self.assertEqual(res.status_code, 200) |
466 | - self.assertTemplateUsed(res, 'django_openstack/nova/images/launch.html') |
467 | + self.assertTemplateUsed(res, |
468 | + 'django_openstack/nova/images/launch.html') |
469 | self.assertEqual(res.context['ami'].id, TEST_IMAGE_ID) |
470 | |
471 | self.mox.VerifyAll() |
472 | @@ -213,7 +214,8 @@ |
473 | self.mox.StubOutWithMock(self.project, 'update_image') |
474 | |
475 | self.project.get_image(TEST_IMAGE_ID).AndReturn(self.ami) |
476 | - self.project.update_image(TEST_IMAGE_ID, 'test', 'test').AndReturn(True) |
477 | + self.project.update_image(TEST_IMAGE_ID, 'test', 'test') \ |
478 | + .AndReturn(True) |
479 | |
480 | self.mox.ReplayAll() |
481 | |
482 | |
483 | === modified file 'django-openstack/src/django_openstack/nova/tests/instance_tests.py' |
484 | --- django-openstack/src/django_openstack/nova/tests/instance_tests.py 2011-05-16 21:40:24 +0000 |
485 | +++ django-openstack/src/django_openstack/nova/tests/instance_tests.py 2011-06-01 01:17:23 +0000 |
486 | @@ -40,29 +40,30 @@ |
487 | |
488 | res = self.client.get(reverse('nova_instances', args=[TEST_PROJECT])) |
489 | self.assertEqual(res.status_code, 200) |
490 | - self.assertTemplateUsed(res, 'django_openstack/nova/instances/index.html') |
491 | + self.assertTemplateUsed(res, |
492 | + 'django_openstack/nova/instances/index.html') |
493 | self.assertEqual(len(res.context['instances']), 0) |
494 | |
495 | self.mox.VerifyAll() |
496 | |
497 | def test_detail(self): |
498 | - instance = boto.ec2.instance.Instance() |
499 | - instance.id = TEST_INSTANCE_ID |
500 | - instance.displayName = instance.id |
501 | - instance.displayDescription = instance.id |
502 | - |
503 | - self.mox.StubOutWithMock(self.project, 'get_instance') |
504 | - self.project.get_instance(instance.id).AndReturn(instance) |
505 | - self.mox.StubOutWithMock(self.project, 'get_instances') |
506 | - self.project.get_instances().AndReturn([instance]) |
507 | - |
508 | - self.mox.ReplayAll() |
509 | - |
510 | - res = self.client.get(reverse('nova_instances_detail', |
511 | + instance = boto.ec2.instance.Instance() |
512 | + instance.id = TEST_INSTANCE_ID |
513 | + instance.displayName = instance.id |
514 | + instance.displayDescription = instance.id |
515 | + |
516 | + self.mox.StubOutWithMock(self.project, 'get_instance') |
517 | + self.project.get_instance(instance.id).AndReturn(instance) |
518 | + self.mox.StubOutWithMock(self.project, 'get_instances') |
519 | + self.project.get_instances().AndReturn([instance]) |
520 | + |
521 | + self.mox.ReplayAll() |
522 | + |
523 | + res = self.client.get(reverse('nova_instances_detail', |
524 | args=[TEST_PROJECT, TEST_INSTANCE_ID])) |
525 | - self.assertEqual(res.status_code, 200) |
526 | - self.assertTemplateUsed(res, 'django_openstack/nova/instances/index.html') |
527 | - self.assertEqual(res.context['selected_instance'].id, instance.id) |
528 | - |
529 | - self.mox.VerifyAll() |
530 | - |
531 | + self.assertEqual(res.status_code, 200) |
532 | + self.assertTemplateUsed(res, |
533 | + 'django_openstack/nova/instances/index.html') |
534 | + self.assertEqual(res.context['selected_instance'].id, instance.id) |
535 | + |
536 | + self.mox.VerifyAll() |
537 | |
538 | === modified file 'django-openstack/src/django_openstack/nova/tests/keypair_tests.py' |
539 | --- django-openstack/src/django_openstack/nova/tests/keypair_tests.py 2011-05-16 21:40:24 +0000 |
540 | +++ django-openstack/src/django_openstack/nova/tests/keypair_tests.py 2011-06-01 01:17:23 +0000 |
541 | @@ -41,7 +41,8 @@ |
542 | response = self.client.get(reverse('nova_keypairs', |
543 | args=[TEST_PROJECT])) |
544 | self.assertEqual(response.status_code, 200) |
545 | - self.assertTemplateUsed(response, 'django_openstack/nova/keypairs/index.html') |
546 | + self.assertTemplateUsed(response, |
547 | + 'django_openstack/nova/keypairs/index.html') |
548 | self.assertEqual(len(response.context['keypairs']), 0) |
549 | |
550 | self.mox.VerifyAll() |
551 | @@ -90,4 +91,3 @@ |
552 | self.assertEqual(res.status_code, 200) |
553 | self.assertEqual(res['Content-Type'], 'application/binary') |
554 | self.assertContains(res, material) |
555 | - |
556 | |
557 | === modified file 'django-openstack/src/django_openstack/nova/tests/region_tests.py' |
558 | --- django-openstack/src/django_openstack/nova/tests/region_tests.py 2011-05-16 21:10:50 +0000 |
559 | +++ django-openstack/src/django_openstack/nova/tests/region_tests.py 2011-06-01 01:17:23 +0000 |
560 | @@ -22,7 +22,6 @@ |
561 | |
562 | from django.core.urlresolvers import reverse |
563 | from django_openstack.nova.tests.base import BaseViewTests |
564 | -from django_openstack.nova import shortcuts |
565 | |
566 | |
567 | TEST_REGION = 'one' |
568 | @@ -40,4 +39,3 @@ |
569 | res = self.client.post(reverse('region_change'), data) |
570 | self.assertEqual(self.client.session['region'], TEST_REGION) |
571 | self.assertRedirectsNoFollow(res, '/') |
572 | - |
573 | |
574 | === modified file 'django-openstack/src/django_openstack/nova/tests/volume_tests.py' |
575 | --- django-openstack/src/django_openstack/nova/tests/volume_tests.py 2011-05-16 21:40:24 +0000 |
576 | +++ django-openstack/src/django_openstack/nova/tests/volume_tests.py 2011-06-01 01:17:23 +0000 |
577 | @@ -55,7 +55,8 @@ |
578 | response = self.client.get(reverse('nova_volumes', |
579 | args=[TEST_PROJECT])) |
580 | self.assertEqual(response.status_code, 200) |
581 | - self.assertTemplateUsed(response, 'django_openstack/nova/volumes/index.html') |
582 | + self.assertTemplateUsed(response, |
583 | + 'django_openstack/nova/volumes/index.html') |
584 | self.assertEqual(len(response.context['volumes']), 0) |
585 | |
586 | self.mox.VerifyAll() |
587 | |
588 | === modified file 'django-openstack/src/django_openstack/nova/views/admin.py' |
589 | --- django-openstack/src/django_openstack/nova/views/admin.py 2011-05-16 21:40:24 +0000 |
590 | +++ django-openstack/src/django_openstack/nova/views/admin.py 2011-06-01 01:17:23 +0000 |
591 | @@ -47,28 +47,31 @@ |
592 | if len(request.POST.getlist('users')) < 1: |
593 | msg = "Please select a user to send credentials to." |
594 | |
595 | - return render_to_response('admin/django_openstack/nova/project/send_credentials.html', { |
596 | - 'project' : project, |
597 | - 'form' : form, |
598 | - 'users' : users, |
599 | - 'error': msg, |
600 | - }, context_instance = template.RequestContext(request)) |
601 | + return render_to_response( |
602 | + 'admin/django_openstack/nova/project/send_credentials.html', |
603 | + {'project': project, |
604 | + 'form': form, |
605 | + 'users': users, |
606 | + 'error': msg}, |
607 | + context_instance=template.RequestContext(request)) |
608 | else: |
609 | for username in request.POST.getlist('users'): |
610 | models.CredentialsAuthorization.authorize(username, project_id) |
611 | msg = "Credentials were successfully sent." |
612 | - return render_to_response('admin/django_openstack/nova/project/send_credentials.html', { |
613 | - 'project' : project, |
614 | - 'form' : form, |
615 | - 'users' : users, |
616 | - 'success': msg, |
617 | - }, context_instance = template.RequestContext(request)) |
618 | + return render_to_response( |
619 | + 'admin/django_openstack/nova/project/send_credentials.html', |
620 | + {'project': project, |
621 | + 'form': form, |
622 | + 'users': users, |
623 | + 'success': msg}, |
624 | + context_instance=template.RequestContext(request)) |
625 | |
626 | - return render_to_response('admin/django_openstack/nova/project/send_credentials.html', { |
627 | - 'project' : project, |
628 | - 'form' : form, |
629 | - 'users' : users, |
630 | - }, context_instance = template.RequestContext(request)) |
631 | + return render_to_response( |
632 | + 'admin/django_openstack/nova/project/send_credentials.html', |
633 | + {'project': project, |
634 | + 'form': form, |
635 | + 'users': users}, |
636 | + context_instance=template.RequestContext(request)) |
637 | |
638 | |
639 | @staff_member_required |
640 | @@ -97,9 +100,10 @@ |
641 | nova = get_nova_admin_connection() |
642 | projects = nova.get_projects() |
643 | |
644 | - return render_to_response('admin/django_openstack/nova/project/project_list.html', { |
645 | - 'projects' : projects |
646 | - }, context_instance = template.RequestContext(request)) |
647 | + return render_to_response( |
648 | + 'admin/django_openstack/nova/project/project_list.html', |
649 | + {'projects': projects}, |
650 | + context_instance=template.RequestContext(request)) |
651 | |
652 | |
653 | @staff_member_required |
654 | @@ -109,7 +113,8 @@ |
655 | users = nova.get_project_members(project_name) |
656 | |
657 | try: |
658 | - manager = auth_models.User.objects.get(username=project.projectManagerId) |
659 | + manager = auth_models.User.objects.get( |
660 | + username=project.projectManagerId) |
661 | except auth_models.User.DoesNotExist: |
662 | manager = None |
663 | |
664 | @@ -128,7 +133,6 @@ |
665 | 'Unable modify the project %s: %s - %s' % |
666 | (project_name, e.code, e.error_message)) |
667 | |
668 | - |
669 | return redirect('admin_project', request.POST["projectname"]) |
670 | else: |
671 | form = forms.ProjectForm(initial={'projectname': project.projectname, |
672 | @@ -136,19 +140,21 @@ |
673 | 'manager': manager |
674 | }) |
675 | |
676 | - |
677 | for user in users: |
678 | - project_role = [str(role.role) for role in nova.get_user_roles(user.memberId, project_name)] |
679 | - global_role = [str(role.role) for role in nova.get_user_roles(user.memberId, project=False)] |
680 | + project_role = [str(role.role) for role in |
681 | + nova.get_user_roles(user.memberId, project_name)] |
682 | + global_role = [str(role.role) for role in |
683 | + nova.get_user_roles(user.memberId, project=False)] |
684 | |
685 | user.project_roles = ", ".join(project_role) |
686 | user.global_roles = ", ".join(global_role) |
687 | |
688 | - return render_to_response('admin/django_openstack/nova/project/edit_project.html', { |
689 | - 'project' : project, |
690 | - 'users' : users, |
691 | - 'form': form, |
692 | - }, context_instance = template.RequestContext(request)) |
693 | + return render_to_response( |
694 | + 'admin/django_openstack/nova/project/edit_project.html', |
695 | + {'project': project, |
696 | + 'users': users, |
697 | + 'form': form}, |
698 | + context_instance=template.RequestContext(request)) |
699 | |
700 | |
701 | @staff_member_required |
702 | @@ -166,9 +172,10 @@ |
703 | else: |
704 | form = forms.ProjectForm() |
705 | |
706 | - return render_to_response('admin/django_openstack/nova/project/add_project.html', { |
707 | - 'form' : form, |
708 | - }, context_instance = template.RequestContext(request)) |
709 | + return render_to_response( |
710 | + 'admin/django_openstack/nova/project/add_project.html', |
711 | + {'form': form}, |
712 | + context_instance=template.RequestContext(request)) |
713 | |
714 | |
715 | @staff_member_required |
716 | @@ -181,9 +188,11 @@ |
717 | |
718 | project = nova.get_project(project_name) |
719 | |
720 | - return render_to_response('admin/django_openstack/nova/project/delete_project.html', { |
721 | - 'project' : project, |
722 | - }, context_instance = template.RequestContext(request)) |
723 | + return render_to_response( |
724 | + 'admin/django_openstack/nova/project/delete_project.html', |
725 | + {'project': project}, |
726 | + context_instance=template.RequestContext(request)) |
727 | + |
728 | |
729 | def remove_project_roles(username, project): |
730 | nova = get_nova_admin_connection() |
731 | @@ -198,6 +207,7 @@ |
732 | if role == "netadmin": |
733 | nova.remove_user_role(username, "netadmin", project) |
734 | |
735 | + |
736 | def remove_global_roles(username): |
737 | nova = get_nova_admin_connection() |
738 | userroles = nova.get_user_roles(username) |
739 | @@ -223,7 +233,7 @@ |
740 | userroles = nova.get_user_roles(project_user, project_name) |
741 | |
742 | try: |
743 | - modeluser = auth_models.User.objects.get(username = project_user) |
744 | + modeluser = auth_models.User.objects.get(username=project_user) |
745 | except auth_models.User.DoesNotExist: |
746 | modeluser = None |
747 | |
748 | @@ -232,7 +242,8 @@ |
749 | if form.is_valid(): |
750 | username = project_user |
751 | |
752 | - # hacky work around to interface correctly with multiple select form |
753 | + # hacky work around to interface correctly with |
754 | + # multiple select form |
755 | remove_project_roles(username, project_name) |
756 | |
757 | roleform = request.POST.getlist("role") |
758 | @@ -247,12 +258,12 @@ |
759 | {'role': roles, |
760 | 'user': modeluser}) |
761 | |
762 | - |
763 | - return render_to_response('admin/django_openstack/nova/project/project_user.html', { |
764 | - 'form' : form, |
765 | - 'project' : project, |
766 | - 'user': modeluser, |
767 | - }, context_instance = template.RequestContext(request)) |
768 | + return render_to_response( |
769 | + 'admin/django_openstack/nova/project/project_user.html', |
770 | + {'form': form, |
771 | + 'project': project, |
772 | + 'user': modeluser}, |
773 | + context_instance=template.RequestContext(request)) |
774 | |
775 | |
776 | @staff_member_required |
777 | @@ -275,10 +286,11 @@ |
778 | |
779 | project = nova.get_project(project_name) |
780 | |
781 | - return render_to_response('admin/django_openstack/nova/project/add_project_user.html', { |
782 | - 'form' : form, |
783 | - 'project' : project, |
784 | - }, context_instance = template.RequestContext(request)) |
785 | + return render_to_response( |
786 | + 'admin/django_openstack/nova/project/add_project_user.html', |
787 | + {'form': form, |
788 | + 'project': project}, |
789 | + context_instance=template.RequestContext(request)) |
790 | |
791 | |
792 | @staff_member_required |
793 | @@ -292,10 +304,11 @@ |
794 | project = nova.get_project(project_name) |
795 | user = nova.get_user(project_user) |
796 | |
797 | - return render_to_response('admin/django_openstack/nova/project/delete_project_user.html', { |
798 | - 'user' : user, |
799 | - 'project' : project, |
800 | - }, context_instance = template.RequestContext(request)) |
801 | + return render_to_response( |
802 | + 'admin/django_openstack/nova/project/delete_project_user.html', |
803 | + {'user': user, |
804 | + 'project': project}, |
805 | + context_instance=template.RequestContext(request)) |
806 | |
807 | |
808 | @staff_member_required |
809 | @@ -305,13 +318,15 @@ |
810 | |
811 | for user in users: |
812 | # NOTE(devcamcar): Temporarily disabled for performance reasons. |
813 | - #roles = [str(role.role) for role in nova.get_user_roles(user.username)] |
814 | + #roles = [str(role.role) for role in |
815 | + # nova.get_user_roles(user.username)] |
816 | roles = [] |
817 | user.roles = ", ".join(roles) |
818 | |
819 | - return render_to_response('admin/django_openstack/nova/project/user_list.html', { |
820 | - 'users' : users |
821 | - }, context_instance = template.RequestContext(request)) |
822 | + return render_to_response( |
823 | + 'admin/django_openstack/nova/project/user_list.html', |
824 | + {'users': users}, |
825 | + context_instance=template.RequestContext(request)) |
826 | |
827 | |
828 | @staff_member_required |
829 | @@ -328,7 +343,8 @@ |
830 | if form.is_valid(): |
831 | username = user_id |
832 | |
833 | - # hacky work around to interface correctly with multiple select form |
834 | + # hacky work around to interface correctly with |
835 | + # multiple select form |
836 | remove_global_roles(username) |
837 | |
838 | roleform = request.POST.getlist("role") |
839 | @@ -343,8 +359,8 @@ |
840 | 'role': roles, |
841 | }) |
842 | |
843 | - return render_to_response('admin/django_openstack/nova/project/global_edit_user.html', { |
844 | - 'form' : form, |
845 | - 'user' : modeluser, |
846 | - }, context_instance = template.RequestContext(request)) |
847 | - |
848 | + return render_to_response( |
849 | + 'admin/django_openstack/nova/project/global_edit_user.html', |
850 | + {'form': form, |
851 | + 'user': modeluser}, |
852 | + context_instance=template.RequestContext(request)) |
853 | |
854 | === modified file 'django-openstack/src/django_openstack/nova/views/credentials.py' |
855 | --- django-openstack/src/django_openstack/nova/views/credentials.py 2011-05-16 21:40:24 +0000 |
856 | +++ django-openstack/src/django_openstack/nova/views/credentials.py 2011-06-01 01:17:23 +0000 |
857 | @@ -34,7 +34,8 @@ |
858 | |
859 | # NOTE(devcamcar): If nothing returned, then token was bad or has expired. |
860 | if not credentials: |
861 | - return render_to_response('django_openstack/nova/credentials/expired.html') |
862 | + return render_to_response( |
863 | + 'django_openstack/nova/credentials/expired.html') |
864 | |
865 | response = http.HttpResponse(mimetype='application/zip') |
866 | response['Content-Disposition'] = \ |
867 | @@ -43,4 +44,3 @@ |
868 | response.write(credentials.get_zip()) |
869 | |
870 | return response |
871 | - |
872 | |
873 | === modified file 'django-openstack/src/django_openstack/nova/views/images.py' |
874 | --- django-openstack/src/django_openstack/nova/views/images.py 2011-05-16 21:40:24 +0000 |
875 | +++ django-openstack/src/django_openstack/nova/views/images.py 2011-06-01 01:17:23 +0000 |
876 | @@ -62,7 +62,7 @@ |
877 | 'region': project.region, |
878 | 'project': project, |
879 | 'image_lists': _image_lists(images, project_id), |
880 | - }, context_instance = template.RequestContext(request)) |
881 | + }, context_instance=template.RequestContext(request)) |
882 | |
883 | |
884 | @login_required |
885 | @@ -105,7 +105,7 @@ |
886 | 'region': project.region, |
887 | 'project': project, |
888 | 'ami': ami, |
889 | - }, context_instance = template.RequestContext(request)) |
890 | + }, context_instance=template.RequestContext(request)) |
891 | |
892 | |
893 | @login_required |
894 | @@ -124,7 +124,7 @@ |
895 | 'project': project, |
896 | 'image_lists': _image_lists(images, project_id), |
897 | 'ami': ami, |
898 | - }, context_instance = template.RequestContext(request)) |
899 | + }, context_instance=template.RequestContext(request)) |
900 | |
901 | |
902 | @login_required |
903 | @@ -205,7 +205,7 @@ |
904 | 'region': project.region, |
905 | 'project': project, |
906 | 'ami': ami, |
907 | - }, context_instance = template.RequestContext(request)) |
908 | + }, context_instance=template.RequestContext(request)) |
909 | else: |
910 | form = forms.UpdateImageForm(ami) |
911 | return render_to_response('django_openstack/nova/images/edit.html', { |
912 | @@ -213,5 +213,4 @@ |
913 | 'region': project.region, |
914 | 'project': project, |
915 | 'ami': ami, |
916 | - }, context_instance = template.RequestContext(request)) |
917 | - |
918 | + }, context_instance=template.RequestContext(request)) |
919 | |
920 | === modified file 'django-openstack/src/django_openstack/nova/views/instances.py' |
921 | --- django-openstack/src/django_openstack/nova/views/instances.py 2011-05-31 12:09:44 +0000 |
922 | +++ django-openstack/src/django_openstack/nova/views/instances.py 2011-06-01 01:17:23 +0000 |
923 | @@ -38,14 +38,15 @@ |
924 | @handle_nova_error |
925 | def index(request, project_id): |
926 | project = shortcuts.get_project_or_404(request, project_id) |
927 | - instances = sorted(project.get_instances(), key=lambda k: k.public_dns_name) |
928 | + instances = sorted(project.get_instances(), |
929 | + key=lambda k: k.public_dns_name) |
930 | |
931 | return render_to_response('django_openstack/nova/instances/index.html', { |
932 | 'region': project.region, |
933 | 'project': project, |
934 | 'instances': instances, |
935 | - 'detail' : False, |
936 | - }, context_instance = template.RequestContext(request)) |
937 | + 'detail': False, |
938 | + }, context_instance=template.RequestContext(request)) |
939 | |
940 | |
941 | @login_required |
942 | @@ -53,8 +54,9 @@ |
943 | def detail(request, project_id, instance_id): |
944 | project = shortcuts.get_project_or_404(request, project_id) |
945 | instance = project.get_instance(instance_id) |
946 | - instances = sorted(project.get_instances(), key=lambda k: k.public_dns_name) |
947 | - |
948 | + instances = sorted(project.get_instances(), |
949 | + key=lambda k: k.public_dns_name) |
950 | + |
951 | if not instance: |
952 | raise http.Http404() |
953 | |
954 | @@ -65,8 +67,8 @@ |
955 | 'instances': instances, |
956 | 'update_form': nova_forms.UpdateInstanceForm(instance), |
957 | 'enable_vnc': settings.ENABLE_VNC, |
958 | - 'detail' : True, |
959 | - }, context_instance = template.RequestContext(request)) |
960 | + 'detail': True, |
961 | + }, context_instance=template.RequestContext(request)) |
962 | |
963 | |
964 | @login_required |
965 | @@ -78,12 +80,13 @@ |
966 | if not instance: |
967 | raise http.Http404() |
968 | |
969 | - return render_to_response('django_openstack/nova/instances/performance.html', { |
970 | - 'region': project.region, |
971 | - 'project': project, |
972 | - 'instance': instance, |
973 | - 'update_form': nova_forms.UpdateInstanceForm(instance), |
974 | - }, context_instance = template.RequestContext(request)) |
975 | + return render_to_response( |
976 | + 'django_openstack/nova/instances/performance.html', |
977 | + {'region': project.region, |
978 | + 'project': project, |
979 | + 'instance': instance, |
980 | + 'update_form': nova_forms.UpdateInstanceForm(instance)}, |
981 | + context_instance=template.RequestContext(request)) |
982 | |
983 | |
984 | # TODO(devcamcar): Wrap this in an @ajax decorator. |
985 | @@ -93,12 +96,14 @@ |
986 | return http.HttpResponseForbidden() |
987 | |
988 | project = shortcuts.get_project_or_404(request, project_id) |
989 | - instances = sorted(project.get_instances(), key=lambda k: k.public_dns_name) |
990 | + instances = sorted(project.get_instances(), |
991 | + key=lambda k: k.public_dns_name) |
992 | |
993 | - return render_to_response('django_openstack/nova/instances/_instances_list.html', { |
994 | - 'project': project, |
995 | - 'instances': instances, |
996 | - }, context_instance = template.RequestContext(request)) |
997 | + return render_to_response( |
998 | + 'django_openstack/nova/instances/_instances_list.html', |
999 | + {'project': project, |
1000 | + 'instances': instances}, |
1001 | + context_instance=template.RequestContext(request)) |
1002 | |
1003 | |
1004 | @handle_nova_error |
1005 | @@ -109,13 +114,15 @@ |
1006 | |
1007 | project = shortcuts.get_project_or_404(request, project_id) |
1008 | instance = project.get_instance(instance_id) |
1009 | - instances = sorted(project.get_instances(), key=lambda k: k.public_dns_name) |
1010 | + instances = sorted(project.get_instances(), |
1011 | + key=lambda k: k.public_dns_name) |
1012 | |
1013 | - return render_to_response('django_openstack/nova/instances/_instances_list.html', { |
1014 | - 'project': project, |
1015 | - 'selected_instance': instance, |
1016 | - 'instances': instances, |
1017 | - }, context_instance = template.RequestContext(request)) |
1018 | + return render_to_response( |
1019 | + 'django_openstack/nova/instances/_instances_list.html', |
1020 | + {'project': project, |
1021 | + 'selected_instance': instance, |
1022 | + 'instances': instances}, |
1023 | + context_instance=template.RequestContext(request)) |
1024 | |
1025 | |
1026 | @login_required |
1027 | @@ -153,15 +160,19 @@ |
1028 | |
1029 | return response |
1030 | |
1031 | + |
1032 | @login_required |
1033 | @handle_nova_error |
1034 | def vnc(request, project_id, instance_id): |
1035 | project = shortcuts.get_project_or_404(request, project_id) |
1036 | conn = project.get_openstack_connection() |
1037 | - params = { 'InstanceId' : instance_id } |
1038 | - vnc = conn.get_object('GetVncConsole',params,boto.ec2.ec2object.EC2Object) |
1039 | + params = {'InstanceId': instance_id} |
1040 | + vnc = conn.get_object('GetVncConsole', |
1041 | + params, |
1042 | + boto.ec2.ec2object.EC2Object) |
1043 | return http.HttpResponseRedirect(vnc.url) |
1044 | |
1045 | + |
1046 | @login_required |
1047 | @handle_nova_error |
1048 | def graph(request, project_id, instance_id, graph_name): |
1049 | @@ -196,24 +207,25 @@ |
1050 | 'Unable to update instance %s: %s' % |
1051 | (instance_id, e.message,)) |
1052 | except exceptions.NovaUnauthorizedError, e: |
1053 | - messages.error(request, 'Permission Denied') |
1054 | + messages.error(request, 'Permission Denied') |
1055 | else: |
1056 | messages.success(request, |
1057 | 'Instance %s has been updated.' % instance_id) |
1058 | return redirect('nova_instances', project_id) |
1059 | else: |
1060 | - return render_to_response('django_openstack/nova/instances/edit.html', { |
1061 | - 'region': project.region, |
1062 | - 'project': project, |
1063 | - 'instance': instance, |
1064 | - 'update_form': form, |
1065 | - }, context_instance = template.RequestContext(request)) |
1066 | + return render_to_response( |
1067 | + 'django_openstack/nova/instances/edit.html', |
1068 | + {'region': project.region, |
1069 | + 'project': project, |
1070 | + 'instance': instance, |
1071 | + 'update_form': form}, |
1072 | + context_instance=template.RequestContext(request)) |
1073 | |
1074 | else: |
1075 | - return render_to_response('django_openstack/nova/instances/edit.html', { |
1076 | - 'region': project.region, |
1077 | - 'project': project, |
1078 | - 'instance': instance, |
1079 | - 'update_form': nova_forms.UpdateInstanceForm(instance), |
1080 | - }, context_instance = template.RequestContext(request)) |
1081 | - |
1082 | + return render_to_response( |
1083 | + 'django_openstack/nova/instances/edit.html', |
1084 | + {'region': project.region, |
1085 | + 'project': project, |
1086 | + 'instance': instance, |
1087 | + 'update_form': nova_forms.UpdateInstanceForm(instance)}, |
1088 | + context_instance=template.RequestContext(request)) |
1089 | |
1090 | === modified file 'django-openstack/src/django_openstack/nova/views/keypairs.py' |
1091 | --- django-openstack/src/django_openstack/nova/views/keypairs.py 2011-05-16 21:40:24 +0000 |
1092 | +++ django-openstack/src/django_openstack/nova/views/keypairs.py 2011-06-01 01:17:23 +0000 |
1093 | @@ -43,7 +43,8 @@ |
1094 | 'project': project, |
1095 | 'keypairs': keypairs, |
1096 | 'download_key': download_key |
1097 | - }, context_instance = template.RequestContext(request)) |
1098 | + }, context_instance=template.RequestContext(request)) |
1099 | + |
1100 | |
1101 | @login_required |
1102 | @handle_nova_error |
1103 | @@ -75,15 +76,17 @@ |
1104 | else: |
1105 | keypairs = project.get_key_pairs() |
1106 | |
1107 | - return render_to_response('django_openstack/nova/keypairs/index.html', { |
1108 | - 'create_form': form, |
1109 | - 'region': project.region, |
1110 | - 'project': project, |
1111 | - 'keypairs': keypairs, |
1112 | - }, context_instance = template.RequestContext(request)) |
1113 | + return render_to_response( |
1114 | + 'django_openstack/nova/keypairs/index.html', |
1115 | + {'create_form': form, |
1116 | + 'region': project.region, |
1117 | + 'project': project, |
1118 | + 'keypairs': keypairs}, |
1119 | + context_instance=template.RequestContext(request)) |
1120 | |
1121 | return redirect('nova_keypairs', project_id) |
1122 | |
1123 | + |
1124 | @login_required |
1125 | @handle_nova_error |
1126 | def delete(request, project_id): |
1127 | @@ -96,7 +99,7 @@ |
1128 | project.delete_key_pair(key_name) |
1129 | except exceptions.NovaApiError, e: |
1130 | messages.error(request, |
1131 | - 'Unable to delete key: %s' % e.message) |
1132 | + 'Unable to delete key: %s' % e.message) |
1133 | else: |
1134 | messages.success(request, |
1135 | 'Key %s has been successfully deleted.' % \ |
1136 | @@ -104,6 +107,7 @@ |
1137 | |
1138 | return redirect('nova_keypairs', project_id) |
1139 | |
1140 | + |
1141 | @login_required |
1142 | @handle_nova_error |
1143 | def download(request, project_id, key_name): |
1144 | |
1145 | === modified file 'django-openstack/src/django_openstack/nova/views/projects.py' |
1146 | --- django-openstack/src/django_openstack/nova/views/projects.py 2011-05-16 21:40:24 +0000 |
1147 | +++ django-openstack/src/django_openstack/nova/views/projects.py 2011-06-01 01:17:23 +0000 |
1148 | @@ -36,10 +36,11 @@ |
1149 | def detail(request, project_id): |
1150 | project = get_project_or_404(request, project_id) |
1151 | |
1152 | - return render_to_response('django_openstack/nova/projects/index.html', { |
1153 | - 'project': project, |
1154 | - 'instance_count': project.get_instance_count(), |
1155 | - }, context_instance = template.RequestContext(request)) |
1156 | + return render_to_response( |
1157 | + 'django_openstack/nova/projects/index.html', |
1158 | + {'project': project, |
1159 | + 'instance_count': project.get_instance_count()}, |
1160 | + context_instance=template.RequestContext(request)) |
1161 | |
1162 | |
1163 | @login_required |
1164 | @@ -54,17 +55,19 @@ |
1165 | members = nova.get_project_members(project_id) |
1166 | |
1167 | for member in members: |
1168 | - project_role = [str(role.role) for role in nova.get_user_roles(member.memberId, project_id)] |
1169 | - global_role = [str(role.role) for role in nova.get_user_roles(member.memberId, project=False)] |
1170 | + project_role = [str(role.role) for role in |
1171 | + nova.get_user_roles(member.memberId, project_id)] |
1172 | + global_role = [str(role.role) for role in |
1173 | + nova.get_user_roles(member.memberId, project=False)] |
1174 | |
1175 | member.project_roles = ", ".join(project_role) |
1176 | member.global_roles = ", ".join(global_role) |
1177 | |
1178 | - |
1179 | - return render_to_response('django_openstack/nova/projects/manage.html', { |
1180 | - 'project': project, |
1181 | - 'members': members, |
1182 | - }, context_instance = template.RequestContext(request)) |
1183 | + return render_to_response( |
1184 | + 'django_openstack/nova/projects/manage.html', |
1185 | + {'project': project, |
1186 | + 'members': members}, |
1187 | + context_instance=template.RequestContext(request)) |
1188 | |
1189 | |
1190 | @login_required |
1191 | @@ -91,11 +94,12 @@ |
1192 | {'role': roles, |
1193 | 'user': user}) |
1194 | |
1195 | - return render_to_response('django_openstack/nova/projects/edit_user.html', { |
1196 | - 'form' : form, |
1197 | - 'project': project, |
1198 | - 'user' : user, |
1199 | - }, context_instance = template.RequestContext(request)) |
1200 | + return render_to_response( |
1201 | + 'django_openstack/nova/projects/edit_user.html', |
1202 | + {'form': form, |
1203 | + 'project': project, |
1204 | + 'user': user}, |
1205 | + context_instance=template.RequestContext(request)) |
1206 | |
1207 | |
1208 | @login_required |
1209 | |
1210 | === modified file 'django-openstack/src/django_openstack/nova/views/securitygroups.py' |
1211 | --- django-openstack/src/django_openstack/nova/views/securitygroups.py 2011-05-16 21:40:24 +0000 |
1212 | +++ django-openstack/src/django_openstack/nova/views/securitygroups.py 2011-06-01 01:17:23 +0000 |
1213 | @@ -37,11 +37,12 @@ |
1214 | project = get_project_or_404(request, project_id) |
1215 | securitygroups = project.get_security_groups() |
1216 | |
1217 | - return render_to_response('django_openstack/nova/securitygroups/index.html', { |
1218 | - 'create_form': forms.CreateSecurityGroupForm(project), |
1219 | - 'project': project, |
1220 | - 'securitygroups': securitygroups, |
1221 | - }, context_instance = template.RequestContext(request)) |
1222 | + return render_to_response( |
1223 | + 'django_openstack/nova/securitygroups/index.html', |
1224 | + {'create_form': forms.CreateSecurityGroupForm(project), |
1225 | + 'project': project, |
1226 | + 'securitygroups': securitygroups}, |
1227 | + context_instance=template.RequestContext(request)) |
1228 | |
1229 | |
1230 | @login_required |
1231 | @@ -53,11 +54,12 @@ |
1232 | if not securitygroup: |
1233 | raise http.Http404 |
1234 | |
1235 | - return render_to_response('django_openstack/nova/securitygroups/detail.html', { |
1236 | - 'authorize_form': forms.AuthorizeSecurityGroupRuleForm(), |
1237 | - 'project': project, |
1238 | - 'securitygroup': securitygroup, |
1239 | - }, context_instance = template.RequestContext(request)) |
1240 | + return render_to_response( |
1241 | + 'django_openstack/nova/securitygroups/detail.html', |
1242 | + {'authorize_form': forms.AuthorizeSecurityGroupRuleForm(), |
1243 | + 'project': project, |
1244 | + 'securitygroup': securitygroup}, |
1245 | + context_instance=template.RequestContext(request)) |
1246 | |
1247 | |
1248 | @login_required |
1249 | @@ -73,8 +75,9 @@ |
1250 | form.cleaned_data['name'], |
1251 | form.cleaned_data['description']) |
1252 | except exceptions.NovaApiError, e: |
1253 | - messages.error(request, |
1254 | - 'Unable to create security group: %s' % e.message) |
1255 | + messages.error( |
1256 | + request, |
1257 | + 'Unable to create security group: %s' % e.message) |
1258 | else: |
1259 | messages.success( |
1260 | request, |
1261 | @@ -83,11 +86,12 @@ |
1262 | else: |
1263 | securitygroups = project.get_security_groups() |
1264 | |
1265 | - return render_to_response('django_openstack/nova/securitygroups/index.html', { |
1266 | - 'create_form': form, |
1267 | - 'project': project, |
1268 | - 'securitygroups': securitygroups, |
1269 | - }, context_instance = template.RequestContext(request)) |
1270 | + return render_to_response( |
1271 | + 'django_openstack/nova/securitygroups/index.html', |
1272 | + {'create_form': form, |
1273 | + 'project': project, |
1274 | + 'securitygroups': securitygroups}, |
1275 | + context_instance=template.RequestContext(request)) |
1276 | |
1277 | return redirect('nova_securitygroups', project_id) |
1278 | |
1279 | @@ -102,10 +106,10 @@ |
1280 | if form.is_valid(): |
1281 | try: |
1282 | project.authorize_security_group( |
1283 | - group_name = group_name, |
1284 | - ip_protocol = form.cleaned_data['protocol'], |
1285 | - from_port = form.cleaned_data['from_port'], |
1286 | - to_port = form.cleaned_data['to_port']) |
1287 | + group_name=group_name, |
1288 | + ip_protocol=form.cleaned_data['protocol'], |
1289 | + from_port=form.cleaned_data['from_port'], |
1290 | + to_port=form.cleaned_data['to_port']) |
1291 | except exceptions.NovaApiError, e: |
1292 | messages.error(request, |
1293 | 'Unable to authorize: %s' % e.message) |
1294 | @@ -124,11 +128,12 @@ |
1295 | if not securitygroup: |
1296 | raise http.Http404 |
1297 | |
1298 | - return render_to_response('django_openstack/nova/securitygroups/detail.html', { |
1299 | - 'authorize_form': form, |
1300 | - 'project': project, |
1301 | - 'securitygroup': securitygroup, |
1302 | - }, context_instance = template.RequestContext(request)) |
1303 | + return render_to_response( |
1304 | + 'django_openstack/nova/securitygroups/detail.html', |
1305 | + {'authorize_form': form, |
1306 | + 'project': project, |
1307 | + 'securitygroup': securitygroup}, |
1308 | + context_instance=template.RequestContext(request)) |
1309 | |
1310 | return redirect('nova_securitygroups_detail', project_id, group_name) |
1311 | |
1312 | @@ -141,10 +146,10 @@ |
1313 | if request.method == 'POST': |
1314 | try: |
1315 | project.revoke_security_group( |
1316 | - group_name = group_name, |
1317 | - ip_protocol = request.POST['protocol'], |
1318 | - from_port = request.POST['from_port'], |
1319 | - to_port = request.POST['to_port']) |
1320 | + group_name=group_name, |
1321 | + ip_protocol=request.POST['protocol'], |
1322 | + from_port=request.POST['from_port'], |
1323 | + to_port=request.POST['to_port']) |
1324 | except exceptions.NovaApiError, e: |
1325 | messages.error(request, 'Unable to revoke: %s' % e.message) |
1326 | else: |
1327 | |
1328 | === modified file 'django-openstack/src/django_openstack/nova/views/volumes.py' |
1329 | --- django-openstack/src/django_openstack/nova/views/volumes.py 2011-05-16 21:40:24 +0000 |
1330 | +++ django-openstack/src/django_openstack/nova/views/volumes.py 2011-06-01 01:17:23 +0000 |
1331 | @@ -36,13 +36,14 @@ |
1332 | project = shortcuts.get_project_or_404(request, project_id) |
1333 | volumes = project.get_volumes() |
1334 | |
1335 | - return render_to_response('django_openstack/nova/volumes/index.html', { |
1336 | - 'create_form': forms.CreateVolumeForm(), |
1337 | - 'attach_form': forms.AttachVolumeForm(project), |
1338 | - 'region': project.region, |
1339 | - 'project': project, |
1340 | - 'volumes': volumes, |
1341 | - }, context_instance = template.RequestContext(request)) |
1342 | + return render_to_response( |
1343 | + 'django_openstack/nova/volumes/index.html', |
1344 | + {'create_form': forms.CreateVolumeForm(), |
1345 | + 'attach_form': forms.AttachVolumeForm(project), |
1346 | + 'region': project.region, |
1347 | + 'project': project, |
1348 | + 'volumes': volumes}, |
1349 | + context_instance=template.RequestContext(request)) |
1350 | |
1351 | |
1352 | @login_required |
1353 | @@ -54,26 +55,29 @@ |
1354 | form = forms.CreateVolumeForm(request.POST) |
1355 | if form.is_valid(): |
1356 | try: |
1357 | - volume = project.create_volume(form.cleaned_data['size'], |
1358 | - form.cleaned_data['nickname'], |
1359 | - form.cleaned_data['description']) |
1360 | + volume = project.create_volume( |
1361 | + form.cleaned_data['size'], |
1362 | + form.cleaned_data['nickname'], |
1363 | + form.cleaned_data['description']) |
1364 | except exceptions.NovaApiError, e: |
1365 | messages.error(request, |
1366 | 'Unable to create volume: %s' % e.message) |
1367 | else: |
1368 | - messages.success(request, |
1369 | - 'Volume %s %s has been successfully created.' % |
1370 | - (volume.id, volume.displayName)) |
1371 | + messages.success( |
1372 | + request, |
1373 | + 'Volume %s %s has been successfully created.' % |
1374 | + (volume.id, volume.displayName)) |
1375 | else: |
1376 | volumes = project.get_volumes() |
1377 | |
1378 | - return render_to_response('django_openstack/nova/volumes/index.html', { |
1379 | - 'create_form': form, |
1380 | - 'attach_form': forms.AttachVolumeForm(project), |
1381 | - 'region': project.region, |
1382 | - 'project': project, |
1383 | - 'volumes': volumes, |
1384 | - }, context_instance = template.RequestContext(request)) |
1385 | + return render_to_response( |
1386 | + 'django_openstack/nova/volumes/index.html', |
1387 | + {'create_form': form, |
1388 | + 'attach_form': forms.AttachVolumeForm(project), |
1389 | + 'region': project.region, |
1390 | + 'project': project, |
1391 | + 'volumes': volumes}, |
1392 | + context_instance=template.RequestContext(request)) |
1393 | |
1394 | return redirect('nova_volumes', project_id) |
1395 | |
1396 | @@ -124,13 +128,14 @@ |
1397 | else: |
1398 | volumes = project.get_volumes() |
1399 | |
1400 | - return render_to_response('django_openstack/nova/volumes/index.html', { |
1401 | - 'create_form': forms.CreateVolumeForm(), |
1402 | - 'attach_form': form, |
1403 | - 'region': project.region, |
1404 | - 'project': project, |
1405 | - 'volumes': volumes, |
1406 | - }, context_instance = template.RequestContext(request)) |
1407 | + return render_to_response( |
1408 | + 'django_openstack/nova/volumes/index.html', |
1409 | + {'create_form': forms.CreateVolumeForm(), |
1410 | + 'attach_form': form, |
1411 | + 'region': project.region, |
1412 | + 'project': project, |
1413 | + 'volumes': volumes}, |
1414 | + context_instance=template.RequestContext(request)) |
1415 | |
1416 | return redirect('nova_volumes', project_id) |
1417 | |
1418 | |
1419 | === modified file 'django-openstack/src/django_openstack/templatetags/templatetags/admin_extras.py' |
1420 | --- django-openstack/src/django_openstack/templatetags/templatetags/admin_extras.py 2011-05-14 00:07:04 +0000 |
1421 | +++ django-openstack/src/django_openstack/templatetags/templatetags/admin_extras.py 2011-06-01 01:17:23 +0000 |
1422 | @@ -19,7 +19,8 @@ |
1423 | Template tags for extending the Django admin interface. |
1424 | """ |
1425 | |
1426 | -from django.contrib.admin.templatetags.admin_list import items_for_result, result_headers |
1427 | +from django.contrib.admin.templatetags.admin_list import (items_for_result, |
1428 | + result_headers) |
1429 | from django.core.urlresolvers import reverse |
1430 | from django.template import Library |
1431 | from django.utils.safestring import mark_safe |
1432 | @@ -27,6 +28,7 @@ |
1433 | |
1434 | register = Library() |
1435 | |
1436 | + |
1437 | def project_result_list(cl): |
1438 | headers = list(result_headers(cl)) |
1439 | headers.append({'text': mark_safe(' ')}) |
1440 | @@ -34,9 +36,10 @@ |
1441 | results = list() |
1442 | |
1443 | for project in cl.result_list: |
1444 | - rl = list(items_for_result(cl,project,None)) |
1445 | + rl = list(items_for_result(cl, project, None)) |
1446 | |
1447 | - url = reverse('admin_project_sendcredentials', args=[project.projectname]) |
1448 | + url = reverse('admin_project_sendcredentials', |
1449 | + args=[project.projectname]) |
1450 | content = mark_safe('<td><a href="%s">Send Credentials</a></td>' % url) |
1451 | |
1452 | rl.append(content) |
1453 | @@ -47,4 +50,4 @@ |
1454 | 'result_headers': headers, |
1455 | 'results': results |
1456 | } |
1457 | -project_result_list = register.inclusion_tag("admin/change_list_results.html")(project_result_list) |
1458 | +project_result_list = register.inclusion_tag('admin/change_list_results.html')(project_result_list) |
1459 | |
1460 | === modified file 'django-openstack/src/django_openstack/templatetags/templatetags/django_openstack_tags.py' |
1461 | --- django-openstack/src/django_openstack/templatetags/templatetags/django_openstack_tags.py 2011-05-14 00:07:04 +0000 |
1462 | +++ django-openstack/src/django_openstack/templatetags/templatetags/django_openstack_tags.py 2011-06-01 01:17:23 +0000 |
1463 | @@ -31,7 +31,7 @@ |
1464 | def render(self, context): |
1465 | return settings.SITE_BRANDING |
1466 | |
1467 | + |
1468 | @register.tag |
1469 | def site_branding(parser, token): |
1470 | return SiteBrandingNode() |
1471 | - |
1472 | |
1473 | === modified file 'django-openstack/src/django_openstack/templatetags/templatetags/sidebar_tags.py' |
1474 | --- django-openstack/src/django_openstack/templatetags/templatetags/sidebar_tags.py 2011-05-14 00:07:04 +0000 |
1475 | +++ django-openstack/src/django_openstack/templatetags/templatetags/sidebar_tags.py 2011-06-01 01:17:23 +0000 |
1476 | @@ -41,6 +41,8 @@ |
1477 | try: |
1478 | tag_name, selected = token.split_contents() |
1479 | except ValueError: |
1480 | - raise template.TemplateSyntaxError, "%r tag requires exactly one argument" % token.contents.split()[0] |
1481 | + msg = '%r tag requires exactly one argument' % \ |
1482 | + token.contents.split()[0] |
1483 | + raise template.TemplateSyntaxError, msg |
1484 | + |
1485 | return SidebarSelectNode(str(selected)) |
1486 | - |
1487 | |
1488 | === modified file 'django-openstack/src/django_openstack/templatetags/templatetags/truncate_filter.py' |
1489 | --- django-openstack/src/django_openstack/templatetags/templatetags/truncate_filter.py 2011-05-14 00:07:04 +0000 |
1490 | +++ django-openstack/src/django_openstack/templatetags/templatetags/truncate_filter.py 2011-06-01 01:17:23 +0000 |
1491 | @@ -23,9 +23,10 @@ |
1492 | |
1493 | register = template.Library() |
1494 | |
1495 | + |
1496 | @register.filter("truncate") |
1497 | def truncate(value, size): |
1498 | if len(value) > size and size > 3: |
1499 | - return value[0:(size-3)] + '...' |
1500 | + return value[0:(size - 3)] + '...' |
1501 | else: |
1502 | return value[0:size] |
1503 | |
1504 | === modified file 'django-openstack/src/django_openstack/testurls.py' |
1505 | --- django-openstack/src/django_openstack/testurls.py 2011-05-16 19:57:48 +0000 |
1506 | +++ django-openstack/src/django_openstack/testurls.py 2011-06-01 01:17:23 +0000 |
1507 | @@ -33,4 +33,3 @@ |
1508 | 'django_openstack.nova.views.credentials.authorize_credentials', |
1509 | name='nova_credentials_authorize'), |
1510 | ) |
1511 | - |
1512 | |
1513 | === modified file 'openstack-dashboard/dashboard/settings.py' |
1514 | --- openstack-dashboard/dashboard/settings.py 2011-05-26 20:47:04 +0000 |
1515 | +++ openstack-dashboard/dashboard/settings.py 2011-06-01 01:17:23 +0000 |
1516 | @@ -18,7 +18,7 @@ |
1517 | LOGIN_URL = '/accounts/login' |
1518 | LOGIN_REDIRECT_URL = '/' |
1519 | |
1520 | -MEDIA_ROOT = os.path.join(ROOT_PATH, '..', 'media') |
1521 | +MEDIA_ROOT = os.path.join(ROOT_PATH, '..', 'media') |
1522 | MEDIA_URL = '/media/' |
1523 | ADMIN_MEDIA_PREFIX = '/media/admin/' |
1524 | |
1525 | |
1526 | === modified file 'openstack-dashboard/dashboard/urls.py' |
1527 | --- openstack-dashboard/dashboard/urls.py 2011-05-26 21:29:53 +0000 |
1528 | +++ openstack-dashboard/dashboard/urls.py 2011-06-01 01:17:23 +0000 |
1529 | @@ -33,7 +33,7 @@ |
1530 | url(r'^$', 'dashboard.views.index', name='index'), |
1531 | url(r'^accounts/register/$', |
1532 | 'registration.views.register', |
1533 | - { 'form_class': reg_forms.RegistrationFormUniqueEmail }, |
1534 | + {'form_class': reg_forms.RegistrationFormUniqueEmail}, |
1535 | name='registration_register'), |
1536 | url(r'^accounts/', include('registration.urls')), |
1537 | url(r'^project/', include('django_openstack.nova.urls.project')), |
1538 | @@ -48,10 +48,10 @@ |
1539 | # TODO(devcamcar): Move permission denied template into django-openstack. |
1540 | url(r'^denied/$', |
1541 | generic_views.TemplateView.as_view(template_name='permission_denied.html'), |
1542 | - {'name':'dashboard_permission_denied'}), |
1543 | + {'name': 'dashboard_permission_denied'}), |
1544 | url(r'^unavailable/$', |
1545 | generic_views.TemplateView.as_view(template_name='unavailable.html'), |
1546 | - {'name':'nova_unavailable'}), |
1547 | + {'name': 'nova_unavailable'}), |
1548 | ) |
1549 | |
1550 | urlpatterns += patterns('', |
1551 | |
1552 | === modified file 'openstack-dashboard/dashboard/views.py' |
1553 | --- openstack-dashboard/dashboard/views.py 2011-05-21 04:47:44 +0000 |
1554 | +++ openstack-dashboard/dashboard/views.py 2011-06-01 01:17:23 +0000 |
1555 | @@ -39,4 +39,4 @@ |
1556 | return render_to_response('index.html', { |
1557 | 'projects': projects, |
1558 | 'page_type': page_type, |
1559 | - }, context_instance = template.RequestContext(request)) |
1560 | + }, context_instance=template.RequestContext(request)) |