Merge lp:~yolanda.robla/ubuntu/precise/nova/essex-sru into lp:ubuntu/precise-updates/nova

Proposed by Yolanda Robla
Status: Merged
Merge reported by: James Page
Merged at revision: not available
Proposed branch: lp:~yolanda.robla/ubuntu/precise/nova/essex-sru
Merge into: lp:ubuntu/precise-updates/nova
Diff against target: 2585 lines (+766/-284)
46 files modified
.gitignore (+0/-20)
.gitreview (+0/-5)
.mailmap (+0/-82)
.pc/fix-pep8-errors.patch/nova/tests/api/openstack/compute/contrib/test_simple_tenant_usage.py (+22/-6)
.pc/fix-pep8-errors.patch/nova/virt/libvirt/connection.py (+24/-10)
Authors (+6/-1)
ChangeLog (+479/-113)
PKG-INFO (+1/-1)
debian/changelog (+35/-0)
debian/nova-api-ec2.logrotate (+3/-0)
debian/nova-api-metadata.logrotate (+3/-0)
debian/nova-api-os-compute.logrotate (+3/-0)
debian/nova-api.logrotate (+3/-0)
debian/nova-cert.logrotate (+3/-0)
debian/nova-common.nova-manage.logrotate (+3/-0)
debian/nova-compute.logrotate (+3/-0)
debian/nova-console.logrotate (+3/-0)
debian/nova-consoleauth.logrotate (+3/-0)
debian/nova-network.logrotate (+3/-0)
debian/nova-network.nova-dhcpbridge.logrotate (+3/-0)
debian/nova-objectstore.logrotate (+3/-0)
debian/nova-scheduler.logrotate (+3/-0)
debian/nova-vncproxy.logrotate (+3/-0)
debian/nova-volume.logrotate (+3/-0)
debian/nova-xvpvncproxy.logrotate (+4/-1)
nova.egg-info/PKG-INFO (+1/-1)
nova.egg-info/SOURCES.txt (+0/-3)
nova/api/openstack/compute/contrib/flavorextradata.py (+1/-1)
nova/api/openstack/compute/contrib/simple_tenant_usage.py (+7/-0)
nova/compute/api.py (+2/-0)
nova/db/sqlalchemy/api.py (+1/-1)
nova/manager.py (+5/-0)
nova/network/linux_net.py (+1/-0)
nova/network/manager.py (+1/-2)
nova/tests/api/openstack/compute/contrib/test_simple_tenant_usage.py (+22/-6)
nova/tests/fakelibvirt.py (+2/-0)
nova/tests/network/test_manager.py (+35/-0)
nova/tests/test_db_api.py (+2/-0)
nova/tests/test_libvirt.py (+13/-1)
nova/tests/test_linux_net.py (+1/-1)
nova/utils.py (+11/-9)
nova/version.py (+1/-1)
nova/virt/disk/api.py (+1/-0)
nova/virt/firewall.py (+14/-6)
nova/virt/libvirt/connection.py (+24/-10)
nova/virt/libvirt/volume.py (+5/-3)
To merge this branch: bzr merge lp:~yolanda.robla/ubuntu/precise/nova/essex-sru
Reviewer Review Type Date Requested Status
James Page Approve
Review via email: mp+140424@code.launchpad.net

This proposal supersedes a proposal from 2012-12-18.

To post a comment you must log in.
Revision history for this message
James Page (james-page) wrote : Posted in a previous version of this proposal

Yolanda

The only problem I can see is with the changelog:

=== modified file 'debian/changelog'
--- debian/changelog 2012-12-17 10:39:28 +0000
+++ debian/changelog 2012-12-18 11:53:10 +0000
@@ -1,8 +1,7 @@
 nova (2012.1.4+stable-20121217-9f277e38-0ubuntu1) precise-proposed; urgency=low

   [ Chuck Short ]
- * debian/*.logrotate: compress logfiles when they are rotated. (LP:
- #1049915)
+ * debian/*.logrotate: compress logfiles when they are rotated. (LP: #1049915)

   [ Yolanda Robla Mota ]
   * Resynchronize with stable/essex (9f277e38):
@@ -43,7 +42,7 @@
     - [ae280ca] Deleted floating ips can cause instance delete to fail
       (LP: #1038266)

- -- Adam Gandelman <email address hidden> Mon, 27 Aug 2012 14:50:40 -0700
+ -- Adam Gandelman <email address hidden> Mon, 27 Aug 2012 14:50:40 -0700

 nova (2012.1.3+stable-20120824-86fb7362-0ubuntu1) precise-proposed; urgency=low

The bug reference needs to be in a single line and Adam's email address has been truncated.

Fix that up and this branch looks good to go.

review: Needs Fixing
Revision history for this message
James Page (james-page) :
review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== removed file '.gitignore'
2--- .gitignore 2012-08-27 14:50:40 +0000
3+++ .gitignore 1970-01-01 00:00:00 +0000
4@@ -1,20 +0,0 @@
5-*.pyc
6-*.DS_Store
7-local_settings.py
8-CA/
9-keeper
10-instances
11-keys
12-build/*
13-build-stamp
14-nova.egg-info
15-.nova-venv
16-.venv
17-.tox
18-*.sqlite
19-*.log
20-*.mo
21-tools/conf/nova.conf*
22-cover/*
23-dist/*
24-.coverage
25
26=== removed file '.gitreview'
27--- .gitreview 2012-08-27 14:50:40 +0000
28+++ .gitreview 1970-01-01 00:00:00 +0000
29@@ -1,5 +0,0 @@
30-[gerrit]
31-host=review.openstack.org
32-port=29418
33-project=openstack/nova.git
34-defaultbranch=stable/essex
35
36=== removed file '.mailmap'
37--- .mailmap 2012-08-24 02:09:33 +0000
38+++ .mailmap 1970-01-01 00:00:00 +0000
39@@ -1,82 +0,0 @@
40-# Format is:
41-# <preferred e-mail> <other e-mail 1>
42-# <preferred e-mail> <other e-mail 2>
43-<aaron.lee@rackspace.com> <wwkeyboard@gmail.com>
44-<anotherjesse@gmail.com> <jesse@dancelamb>
45-<anotherjesse@gmail.com> <jesse@gigantor.local>
46-<anotherjesse@gmail.com> <jesse@ubuntu>
47-<anotherjesse@gmail.com> <jesse@aire.local>
48-<ant@openstack.org> <amesserl@rackspace.com>
49-<Armando.Migliaccio@eu.citrix.com> <armando.migliaccio@citrix.com>
50-<Armando.Migliaccio@eu.citrix.com> <amigliaccio@internap.com>
51-<brian.lamar@rackspace.com> <brian.lamar@gmail.com>
52-<brian.waldon@rackspace.com> <bcwaldon@gmail.com>
53-<bschott@isi.edu> <bfschott@gmail.com>
54-<cbehrens@codestud.com> <chris.behrens@rackspace.com>
55-<chiradeep@cloud.com> <chiradeep@chiradeep-lt2>
56-<code@term.ie> <github@anarkystic.com>
57-<code@term.ie> <termie@preciousroy.local>
58-<corywright@gmail.com> <cory.wright@rackspace.com>
59-<dan@nicira.com> <danwent@dan-xs3-cs>
60-<dan@nicira.com> <danwent@gmail.com>
61-<Dave.Walker@canonical.com> <DaveWalker@ubuntu.com>
62-<derekh@redhat.com> <higginsd@gmail.com>
63-<devin.carlen@gmail.com> <devcamcar@illian.local>
64-<doug.hellmann@dreamhost.com> <doug.hellmann@gmail.com>
65-<dprince@redhat.com> <dan.prince@rackspace.com>
66-<edouard1.thuleau@orange.com> <thuleau@gmail.com>
67-<ewan.mellor@citrix.com> <emellor@silver>
68-<ghe@debian.org> <ghe.rivero@gmail.com>
69-<itoumsn@nttdata.co.jp> <itoumsn@shayol>
70-<jake@ansolabs.com> <jake@markupisart.com>
71-<jake@ansolabs.com> <admin@jakedahn.com>
72-<jaypipes@gmail.com> <jpipes@serialcoder>
73-<jeblair@hp.com> <james.blair@rackspace.com>
74-<jeblair@hp.com> <corvus@inaugust.com>
75-<jmckenty@gmail.com> <jmckenty@joshua-mckentys-macbook-pro.local>
76-<jmckenty@gmail.com> <jmckenty@yyj-dhcp171.corp.flock.com>
77-<jmckenty@gmail.com> <joshua.mckenty@nasa.gov>
78-<johannes.erdfelt@rackspace.com> <johannes@compute3.221.st>
79-<josh@jk0.org> <josh.kearney@rackspace.com>
80-<josh.durgin@dreamhost.com> <joshd@hq.newdream.net>
81-<justin@fathomdb.com> <justinsb@justinsb-desktop>
82-<justin@fathomdb.com> <superstack@superstack.org>
83-<lorin@nimbisservices.com> <lorin@isi.edu>
84-<masumotok@nttdata.co.jp> Masumoto<masumotok@nttdata.co.jp>
85-<masumotok@nttdata.co.jp> <root@openstack2-api>
86-<matt.dietz@rackspace.com> <matthewdietz@Matthew-Dietzs-MacBook-Pro.local>
87-<matt.dietz@rackspace.com> <mdietz@openstack>
88-<mikal@stillhq.com> <michael.still@canonical.com>
89-<mordred@inaugust.com> <mordred@hudson>
90-<naveedm9@gmail.com> <naveed.massjouni@rackspace.com>
91-<rnirmal@gmail.com> <nirmal.ranganathan@rackspace.com>
92-<rnirmal@gmail.com> <nirmal.ranganathan@rackspace.coom>
93-<paul@openstack.org> <paul.voccio@rackspace.com>
94-<paul@openstack.org> <pvoccio@castor.local>
95-<paul@openstack.org> <paul@substation9.com>
96-<rconradharris@gmail.com> <rick.harris@rackspace.com>
97-<rlane@wikimedia.org> <laner@controller>
98-<sandy.walsh@rackspace.com> <sandy@sandywalsh.com>
99-<sleepsonthefloor@gmail.com> <root@tonbuntu>
100-<soren.hansen@rackspace.com> <soren@linux2go.dk>
101-<soren@linux2go.dk> <sorhanse@cisco.com>
102-<throughnothing@gmail.com> <will.wolf@rackspace.com>
103-<tim.simpson@rackspace.com> <tim.simpson4@gmail.com>
104-<todd@ansolabs.com> <todd@lapex>
105-<todd@ansolabs.com> <todd@rubidine.com>
106-<todd@ansolabs.com> <xtoddx@gmail.com>
107-<trey.morris@rackspace.com> <treyemorris@gmail.com>
108-<tushar.vitthal.patil@gmail.com> <tpatil@vertex.co.in>
109-<ueno.nachi@lab.ntt.co.jp> <nati.ueno@gmail.com>
110-<ueno.nachi@lab.ntt.co.jp> <nova@u4>
111-<ueno.nachi@lab.ntt.co.jp> <openstack@lab.ntt.co.jp>
112-<vishvananda@gmail.com> <root@mirror.nasanebula.net>
113-<vishvananda@gmail.com> <root@ubuntu>
114-<vishvananda@gmail.com> <vishvananda@yahoo.com>
115-<ilyaalekseyev@acm.org> <ialekseev@griddynamics.com>
116-<ilyaalekseyev@acm.org> <ilya@oscloud.ru>
117-<reldan@oscloud.ru> <enugaev@griddynamics.com>
118-<kshileev@gmail.com> <kshileev@griddynamics.com>
119-<nsokolov@griddynamics.com> <nsokolov@griddynamics.net>
120-<troy.toman@rackspace.com> <ttcl@mac.com>
121-<zulcss@ubuntu.com> <chuck.short@canonical.com>
122
123=== modified file '.pc/fix-pep8-errors.patch/nova/tests/api/openstack/compute/contrib/test_simple_tenant_usage.py'
124--- .pc/fix-pep8-errors.patch/nova/tests/api/openstack/compute/contrib/test_simple_tenant_usage.py 2012-06-05 09:50:59 +0000
125+++ .pc/fix-pep8-errors.patch/nova/tests/api/openstack/compute/contrib/test_simple_tenant_usage.py 2012-12-18 13:07:55 +0000
126@@ -28,6 +28,7 @@
127 from nova import context
128 from nova import flags
129 from nova import test
130+from nova import utils
131 from nova.tests.api.openstack import fakes
132
133
134@@ -40,8 +41,9 @@
135 EPHEMERAL_GB = 20
136 MEMORY_MB = 1024
137 VCPUS = 2
138-STOP = datetime.datetime.utcnow()
139-START = STOP - datetime.timedelta(hours=HOURS)
140+NOW = utils.utcnow()
141+START = NOW - datetime.timedelta(hours=HOURS)
142+STOP = NOW
143
144
145 def fake_instance_type_get(self, context, instance_type_id):
146@@ -91,10 +93,10 @@
147 'faketenant_1',
148 is_admin=False)
149
150- def test_verify_index(self):
151+ def _test_verify_index(self, start, stop):
152 req = webob.Request.blank(
153 '/v2/faketenant_0/os-simple-tenant-usage?start=%s&end=%s' %
154- (START.isoformat(), STOP.isoformat()))
155+ (start.isoformat(), stop.isoformat()))
156 req.method = "GET"
157 req.headers["content-type"] = "application/json"
158
159@@ -115,6 +117,20 @@
160 SERVERS * VCPUS * HOURS)
161 self.assertFalse(usages[i].get('server_usages'))
162
163+ def test_verify_index(self):
164+ self._test_verify_index(START, STOP)
165+
166+ def test_verify_index_future_end_time(self):
167+ future = NOW + datetime.timedelta(hours=HOURS)
168+ self._test_verify_index(START, future)
169+
170+ def test_verify_show(self):
171+ self._test_verify_show(START, STOP)
172+
173+ def test_verify_show_future_end_time(self):
174+ future = NOW + datetime.timedelta(hours=HOURS)
175+ self._test_verify_show(START, future)
176+
177 def test_verify_detailed_index(self):
178 req = webob.Request.blank(
179 '/v2/faketenant_0/os-simple-tenant-usage?'
180@@ -133,11 +149,11 @@
181 for j in xrange(SERVERS):
182 self.assertEqual(int(servers[j]['hours']), HOURS)
183
184- def test_verify_show(self):
185+ def _test_verify_show(self, start, stop):
186 req = webob.Request.blank(
187 '/v2/faketenant_0/os-simple-tenant-usage/'
188 'faketenant_0?start=%s&end=%s' %
189- (START.isoformat(), STOP.isoformat()))
190+ (start.isoformat(), stop.isoformat()))
191 req.method = "GET"
192 req.headers["content-type"] = "application/json"
193
194
195=== modified file '.pc/fix-pep8-errors.patch/nova/virt/libvirt/connection.py'
196--- .pc/fix-pep8-errors.patch/nova/virt/libvirt/connection.py 2012-08-27 14:50:40 +0000
197+++ .pc/fix-pep8-errors.patch/nova/virt/libvirt/connection.py 2012-12-18 13:07:55 +0000
198@@ -549,6 +549,13 @@
199 connection_info,
200 mount_device)
201
202+ # TODO(danms) once libvirt has support for LXC hotplug,
203+ # replace this re-define with use of the
204+ # VIR_DOMAIN_AFFECT_LIVE & VIR_DOMAIN_AFFECT_CONFIG flags with
205+ # attachDevice()
206+ domxml = virt_dom.XMLDesc(libvirt.VIR_DOMAIN_XML_SECURE)
207+ self._conn.defineXML(domxml)
208+
209 @staticmethod
210 def _get_disk_xml(xml, device):
211 """Returns the xml for the disk mounted at device"""
212@@ -583,6 +590,13 @@
213 connection_info,
214 mount_device)
215
216+ # TODO(danms) once libvirt has support for LXC hotplug,
217+ # replace this re-define with use of the
218+ # VIR_DOMAIN_AFFECT_LIVE & VIR_DOMAIN_AFFECT_CONFIG flags with
219+ # detachDevice()
220+ domxml = virt_dom.XMLDesc(libvirt.VIR_DOMAIN_XML_SECURE)
221+ self._conn.defineXML(domxml)
222+
223 @exception.wrap_exception()
224 def _attach_lxc_volume(self, xml, virt_dom, instance_name):
225 LOG.info(_('attaching LXC block device'))
226@@ -681,8 +695,7 @@
227 else:
228 metadata['disk_format'] = image_format
229
230- if 'container_format' in base:
231- metadata['container_format'] = base['container_format']
232+ metadata['container_format'] = base.get('container_format', 'bare')
233
234 # Find the disk
235 xml_desc = virt_dom.XMLDesc(0)
236@@ -928,8 +941,8 @@
237 LOG.info(_("Automatically confirming migration %d"), migration.id)
238 self.compute_api.confirm_resize(ctxt, migration.instance_uuid)
239
240- def _enable_hairpin(self, instance):
241- interfaces = self.get_interfaces(instance['name'])
242+ def _enable_hairpin(self, xml):
243+ interfaces = self.get_interfaces(xml)
244 for interface in interfaces:
245 utils.execute('tee',
246 '/sys/class/net/%s/brport/hairpin_mode' % interface,
247@@ -951,7 +964,6 @@
248
249 self._create_new_domain(xml)
250 LOG.debug(_("Instance is running"), instance=instance)
251- self._enable_hairpin(instance)
252 self.firewall_driver.apply_instance_filter(instance, network_info)
253
254 def _wait_for_boot():
255@@ -1619,6 +1631,7 @@
256 else:
257 # createXML call creates a transient domain
258 domain = self._conn.createXML(xml, launch_flags)
259+ self._enable_hairpin(domain.XMLDesc(0))
260
261 return domain
262
263@@ -1675,14 +1688,12 @@
264
265 return disks
266
267- def get_interfaces(self, instance_name):
268+ def get_interfaces(self, xml):
269 """
270- Note that this function takes an instance name.
271+ Note that this function takes an instance domain xml.
272
273 Returns a list of all network interfaces for this instance.
274 """
275- domain = self._lookup_by_name(instance_name)
276- xml = domain.XMLDesc(0)
277 doc = None
278
279 try:
280@@ -1765,6 +1776,8 @@
281 total += 1
282 else:
283 total += len(vcpus[1])
284+ # NOTE(gtt116): give change to do other task.
285+ greenthread.sleep(0)
286 return total
287
288 def get_memory_mb_used(self):
289@@ -2325,7 +2338,8 @@
290 except exception.InstanceNotFound:
291 # Instance was deleted during the check so ignore it
292 pass
293-
294+ # NOTE(gtt116): give change to do other task.
295+ greenthread.sleep(0)
296 # Disk available least size
297 available_least_size = dk_sz_gb * (1024 ** 3) - instances_sz
298 return (available_least_size / 1024 / 1024 / 1024)
299
300=== modified file 'Authors'
301--- Authors 2012-08-27 14:50:40 +0000
302+++ Authors 2012-12-18 13:07:55 +0000
303@@ -1,3 +1,4 @@
304+Aaron Rosen <arosen@nicira.com>
305 Aaron Lee <aaron.lee@rackspace.com>
306 Adam Gandelman <adamg@canonical.com>
307 Adam Johnson <adjohn@gmail.com>
308@@ -22,6 +23,7 @@
309 Ben McGraw <ben@pistoncloud.com>
310 Ben Swartzlander <bswartz@netapp.com>
311 Bilal Akhtar <bilalakhtar@ubuntu.com>
312+Boris Filippov <bfilippov@griddynamics.com>
313 Brad Hall <brad@nicira.com>
314 Brad McConnell <bmcconne@rackspace.com>
315 Brendan Maguire <B_Maguire@Dell.com>
316@@ -44,6 +46,7 @@
317 Daniel P. Berrange <berrange@redhat.com>
318 Dave Lapsley <dlapsley@nicira.com>
319 Dave Walker <Dave.Walker@canonical.com>
320+David Besen <david.besen@hp.com>
321 David McNally <dave.mcnally@hp.com>
322 David Pravec <David.Pravec@danix.org>
323 David Subiros <david.perez5@hp.com>
324@@ -98,7 +101,7 @@
325 John Garbutt <john.garbutt@citrix.com>
326 John Griffith <john.griffith@solidfire.com>
327 John Kennedy <john.m.kennedy@intel.com>
328-John Tran <jtran@attinteractive.com>
329+John Tran <jhtran@att.com>
330 Jonathan Bryce <jbryce@jbryce.com>
331 Jordan Rinke <jordan@openstack.org>
332 Joseph Suh <jsuh@isi.edu>
333@@ -171,6 +174,7 @@
334 Rick Harris <rconradharris@gmail.com>
335 Rob Kost <kost@isi.edu>
336 Robert Esker <esker@netapp.com>
337+RongzeZhu <zrzhit@gmail.com>
338 Russell Bryant <rbryant@redhat.com>
339 Russell Sim <russell.sim@gmail.com>
340 Ryan Lane <rlane@wikimedia.org>
341@@ -187,6 +191,7 @@
342 Sumit Naiksatam <snaiksat@cisco.com>
343 Takaaki Suzuki <suzuki@midokura.com>
344 Thierry Carrez <thierry@openstack.org>
345+TianTian Gao <gtt116@126.com>
346 Tim Simpson <tim.simpson@rackspace.com>
347 Todd Willey <todd@ansolabs.com>
348 Tomoe Sugihara <tomoe@midokura.com>
349
350=== modified file 'ChangeLog'
351--- ChangeLog 2012-08-27 14:50:40 +0000
352+++ ChangeLog 2012-12-18 13:07:55 +0000
353@@ -1,3 +1,353 @@
354+commit 9f277e3832a554316007a60104c2f44c472b23dd
355+Merge: bd10241 80fefe5
356+Author: Jenkins <jenkins@review.openstack.org>
357+Date: Wed Dec 12 09:24:26 2012 +0000
358+
359+ Merge "Fix use_single_default_gateway" into stable/essex
360+
361+commit 80fefe5d2b030ff9a6429b84ef9761f85b5ddc99
362+Author: Joseph W. Breu <breu@breu.org>
363+Date: Thu Nov 15 14:25:50 2012 -0600
364+
365+ Fix use_single_default_gateway
366+
367+ With FlatDHCP and use_single_default_gateway nova-network creates
368+ an invalid entry in the dnsmasq .opts file for the network that
369+ contains a blank router option. New instances will not receive
370+ a default gateway.
371+
372+ Change-Id: I4c2da61def0681b7b253ae387bf83c069484e28b
373+ Fixes: bug #1075859
374+ (cherry picked from commit 1b455923446de6fcfee7166059db72b80ff51dfe)
375+
376+ nova/network/linux_net.py | 1 +
377+ nova/tests/test_linux_net.py | 2 +-
378+ 2 files changed, 2 insertions(+), 1 deletion(-)
379+
380+commit bd1024194a384bbc2f332e74587b577d7b79c539
381+Author: Dan Smith <danms@us.ibm.com>
382+Date: Mon Jul 9 13:37:01 2012 -0700
383+
384+ When deleting an instance, avoid freakout if iscsi device is gone
385+
386+ It's fairly easy to get into a state where an instance is not running,
387+ the iscsi infrastructure has been torn down, and the instance cannot
388+ be deleted because the iscsi device cannot be successfully removed.
389+ This patch ignores the associated return value for that scenario and
390+ marches forward in the teardown process.
391+
392+ Fixes bug 1079745 (Cherry picked for Essex)
393+
394+ Change-Id: Ib28790892eebe341ac10a92250cf872605fefe9b
395+
396+ nova/virt/libvirt/volume.py | 8 +++++---
397+ 1 file changed, 5 insertions(+), 3 deletions(-)
398+
399+commit 0edd3cb8df087924a70b63c5735e8c7711921a99
400+Merge: 91fdcc8 86a5937
401+Author: Jenkins <jenkins@review.openstack.org>
402+Date: Wed Oct 31 07:36:14 2012 +0000
403+
404+ Merge "Avoid RPC calls while holding iptables lock." into stable/essex
405+
406+commit 86a59376c6d4d2ec5a05c8b63a419d0374e9d9c9
407+Author: Michael Still <mikal@stillhq.com>
408+Date: Thu Oct 11 15:46:11 2012 +1100
409+
410+ Avoid RPC calls while holding iptables lock.
411+
412+ This exhibitied itself as very slow instance starts on a Canonical
413+ test cluster. This was because do_referesh_security_group_rules()
414+ was making rpc calls while holding the iptables lock. This refactor
415+ avoids that while making no functional changes (I hope).
416+
417+ Fixes bug: 1062314
418+ Change-Id: I36f805bd72f7bd06082cfe96c58d637203bcffb7
419+ Cherry-picked: ba585524e32965697c1a44c8fd743dea060bb1af
420+ Conflicts:
421+ nova/virt/firewall.py
422+
423+ nova/tests/test_libvirt.py | 14 +++++++++++++-
424+ nova/virt/firewall.py | 20 ++++++++++++++------
425+ 2 files changed, 27 insertions(+), 7 deletions(-)
426+
427+commit 91fdcc84a1f3ccdc99fc25e3e7b620c15ac5f15a
428+Author: Mark McLoughlin <markmc@redhat.com>
429+Date: Thu Oct 11 20:32:11 2012 +0100
430+
431+ Bump version to 2012.1.4
432+
433+ Set version to 2012.1.4, but with final=False
434+
435+ See http://wiki.openstack.org/StableBranchRelease
436+
437+ Note - 2012.1.3 is expected to be the final official release of Essex.
438+
439+ Change-Id: If6274ecbbb07f57e2af843c94e3397e2373c0cdd
440+
441+ nova/version.py | 4 ++--
442+ 1 file changed, 2 insertions(+), 2 deletions(-)
443+
444+commit b00f759b80a66d5faba212232bde2bcd4cc3cd6c
445+Author: Mark McLoughlin <markmc@redhat.com>
446+Date: Thu Oct 11 20:29:45 2012 +0100
447+
448+ Final versioning for 2012.1.3
449+
450+ Change-Id: I624420b50ba24240dcc5a3f7d0771a6d81588752
451+
452+ nova/version.py | 2 +-
453+ 1 file changed, 1 insertion(+), 1 deletion(-)
454+
455+commit 815d4e0e3424af09cfc55212eb7376021713d942
456+Merge: 17a6cd9 ae9c5f4
457+Author: Jenkins <jenkins@review.openstack.org>
458+Date: Thu Oct 11 17:29:01 2012 +0000
459+
460+ Merge "deallocate_fixed_ip attempts to update deleted ip" into stable/essex
461+
462+commit 17a6cd91ef64ae00be108726eb6aee32f44aab4d
463+Merge: d1d5d6d 20f98c5
464+Author: Jenkins <jenkins@review.openstack.org>
465+Date: Thu Oct 11 17:28:04 2012 +0000
466+
467+ Merge "fixed_ip_get_by_address read_deleted from context" into stable/essex
468+
469+commit d1d5d6d19d7b3d8303f1bc80712871c9254631a6
470+Merge: f28c7b2 75f6922
471+Author: Jenkins <jenkins@review.openstack.org>
472+Date: Wed Sep 26 14:19:49 2012 +0000
473+
474+ Merge "Use bare container format by default" into stable/essex
475+
476+commit f28c7b21f6259f72ac87a924eb4e00c8d9b2cea7
477+Merge: 80f2f26 1076699
478+Author: Jenkins <jenkins@review.openstack.org>
479+Date: Wed Sep 26 14:19:25 2012 +0000
480+
481+ Merge "fix cleanup_file_locks with restricted permissions" into stable/essex
482+
483+commit 80f2f26134cd4c35902c4c009598b54e53e06994
484+Merge: 4eebe76 40c5e94
485+Author: Jenkins <jenkins@review.openstack.org>
486+Date: Wed Sep 26 14:16:50 2012 +0000
487+
488+ Merge "make ensure_default_security_group() call sgh" into stable/essex
489+
490+commit ae9c5f41b2a21183e80e6df19bdd7c56380c84a8
491+Author: John H. Tran <jhtran@att.com>
492+Date: Fri Jun 22 19:14:06 2012 -0700
493+
494+ deallocate_fixed_ip attempts to update deleted ip
495+
496+ Fixes bug 1017633. When deleting a vm, the nova
497+ network manager looks to deallocate wrong fixed
498+ ip when context has read_deleted set to 'yes',
499+ in case when a network had been deleted and re-
500+ created , it attempts to update already deleted
501+ fixed_ips and therefore looks to teardown from
502+ wrong network_id as well.
503+
504+ Change-Id: I574a20273220ef81498403da80f489732ae81eb1
505+ (cherry picked from commit 61ab72d15b3ac61b245e0bdd4a7bee5f3a673f75)
506+
507+ nova/network/manager.py | 3 +--
508+ nova/tests/network/test_manager.py | 35 +++++++++++++++++++++++++++++++++++
509+ 2 files changed, 36 insertions(+), 2 deletions(-)
510+
511+commit 20f98c5785bfc074caaaa5542d19b7f361597e30
512+Author: John Tran <jhtran@att.com>
513+Date: Tue May 15 10:00:36 2012 -0700
514+
515+ fixed_ip_get_by_address read_deleted from context
516+
517+ Fixes bug 996482. by default fixed_ip_get_by_address
518+ always sets read_deleted='yes'. Changed it to accept
519+ read_deleted value from context.
520+ updated .mailmap to rewrite my old email to new email
521+
522+ Change-Id: If94251972df7bbcfdeebc226613edac0a3f41186
523+ (cherry picked from commit c1e54e1968faa23dfa26796fdb8f3f8d9ba79367)
524+
525+ .mailmap | 1 +
526+ Authors | 2 +-
527+ nova/db/sqlalchemy/api.py | 2 +-
528+ nova/tests/test_db_api.py | 2 ++
529+ 4 files changed, 5 insertions(+), 2 deletions(-)
530+
531+commit 4eebe76e9671afcdf8f468a91c9eb27ddba30715
532+Author: Pádraig Brady <pbrady@redhat.com>
533+Date: Sat Sep 8 02:43:01 2012 +0100
534+
535+ fix unmounting of LXC containers in the presence of symlinks
536+
537+ When looking up the mount dir in /proc/mounts we need
538+ to canonicalize the path so that symlinks are resolved
539+
540+ Fixes bug: 1046313
541+ Change-Id: Ib2bb8253e9cdfeda3c6ba13e56a0f907518ff558
542+ Cherry-picked: b35b34a65a6ddcfee524304cc548b4dfe1fc6cd5
543+
544+ nova/virt/disk/api.py | 1 +
545+ 1 file changed, 1 insertion(+)
546+
547+commit 40c5e94d56bfdb3ec1e1ac8c0e501d66cd9691ec
548+Author: Aaron Rosen <arosen@nicira.com>
549+Date: Fri Sep 14 12:15:07 2012 -0400
550+
551+ make ensure_default_security_group() call sgh
552+
553+ This change makes sure that sgh is called when default
554+ security group is created. Fixes bug 1050982
555+
556+ Change-Id: I483e33d8977b2bfbd7456a7c7c0d1fe7803708f8
557+
558+ Authors | 1 +
559+ nova/compute/api.py | 2 ++
560+ 2 files changed, 3 insertions(+)
561+
562+commit 10766995ec5914247c21694062337c22e83e1dff
563+Author: Pádraig Brady <pbrady@redhat.com>
564+Date: Mon Sep 17 13:19:18 2012 +0100
565+
566+ fix cleanup_file_locks with restricted permissions
567+
568+ SELinux was seen to disallow kill(pid, 0).
569+ Therefore ensure that the pid is determined
570+ to be still running if we get EPERM.
571+
572+ Fixes bug: 1051924
573+ Change-Id: Ib84e2fc460066ee03070b9bda15732cce573ccf3
574+
575+ nova/utils.py | 20 +++++++++++---------
576+ 1 file changed, 11 insertions(+), 9 deletions(-)
577+
578+commit 75f69225c5be5e5817a4008792e974ba4014c9e1
579+Author: Boris Filippov <bfilippov@griddynamics.com>
580+Date: Wed Sep 5 05:40:05 2012 +0400
581+
582+ Use bare container format by default
583+
584+ Set container_format to bare during libvirt snapshot, when VM image in
585+ glance was deleted. Currently, if VM image in glance was already deleted
586+ before snapshot, nova will attempt to create snapshot image with
587+ container_format: None. This cause glance to return error on attempt to
588+ upload snapshot. According to glance docs container_format is not used
589+ anywhere in glance or nova explicitly and it is safe to set it to bare,
590+ when you are unsure which container_format you need to use.
591+ Current snapshot logic sets snapshot disk_format to currently used
592+ image_format in absence of base image in glance.
593+
594+ This resolves bug 921774 without need for snapshot mechanism redesign.
595+
596+ Change-Id: I7beea35120aaeac0837daecdf58f38f62e24454c
597+
598+ Authors | 1 +
599+ nova/virt/libvirt/connection.py | 3 +--
600+ 2 files changed, 2 insertions(+), 2 deletions(-)
601+
602+commit 47dabb30dc09282d56ad1e54c7652bf35394f7df
603+Author: TianTian Gao <gtt116@126.com>
604+Date: Tue Sep 4 12:01:41 2012 +0800
605+
606+ Yield to another greenthread when some time-consuming task finished.
607+
608+ Partially addresses bug #1045152
609+
610+ On a heavily loaded compute node, it can be observed that periodic tasks
611+ take so long to run that the report_state() looping call can be blocked from
612+ running long enough that the scheduler thinks the host is dead.
613+
614+ Reduce the chance of this happening by yielding to another greenthread
615+ after each periodic task has completed and each loop in some methods
616+ that has linear relationship with the number of instances.
617+
618+ Change-Id: If2b125708da8298b20497e2e08e52280c102f1e1
619+
620+ Authors | 1 +
621+ nova/manager.py | 5 +++++
622+ nova/virt/libvirt/connection.py | 5 ++++-
623+ 3 files changed, 10 insertions(+), 1 deletion(-)
624+
625+commit 2e75689c7cb3b20265dc5b2799d3367e513d6b5b
626+Merge: 4ac2dcc b375b4f
627+Author: Jenkins <jenkins@review.openstack.org>
628+Date: Thu Sep 13 17:54:37 2012 +0000
629+
630+ Merge "Redefine the domain's XML on volume attach/detach" into stable/essex
631+
632+commit b375b4f1131d54315bb9952fcf2eff363b3b29b1
633+Author: Dan Smith <danms@us.ibm.com>
634+Date: Fri Jun 29 09:35:02 2012 -0700
635+
636+ Redefine the domain's XML on volume attach/detach
637+
638+ This fixes bug 1004791 by adding new disk definitions to the defined
639+ XML instead of just modifying the running instance.
640+
641+ Cherry picked for stable/essex to fix bug 1012717.
642+
643+ Change-Id: I6596dae7c54158c32bc7b399c55a1797b2d98242
644+
645+ nova/tests/fakelibvirt.py | 2 ++
646+ nova/virt/libvirt/connection.py | 14 ++++++++++++++
647+ 2 files changed, 16 insertions(+)
648+
649+commit 4ac2dcc36bb4e737e486ef86930c023b403a3f3a
650+Author: RongzeZhu <zrzhit@gmail.com>
651+Date: Sun Sep 2 18:43:56 2012 +0800
652+
653+ Fix simple_tenant_usage's handing of future end times
654+
655+ Fixes bug #1043999
656+
657+ simple_tenant_usage returns the usage in the range between the supplied
658+ start and end query parameters. The _hours_for() method calculates the
659+ number of hours the instance was running in this range, even if the end time
660+ is in the future.
661+
662+ By default, python-novaclient requests usage between 4 weeks ago and tomorrow.
663+ This means we a report which accounts for 24 hours of extra running time for
664+ each currently running instance. Fix this by clamping the period of the
665+ returned report at the current time.
666+
667+ Change-Id: I61c211fd85b729aaeaac6ef24644ee19eb5bb6b0
668+ (cherry picked from commit 869443f41c8826c9a4de1dcc65c5a5354b623a04)
669+
670+ Authors | 1 +
671+ .../compute/contrib/simple_tenant_usage.py | 7 +++++
672+ .../compute/contrib/test_simple_tenant_usage.py | 28 +++++++++++++++-----
673+ 3 files changed, 30 insertions(+), 6 deletions(-)
674+
675+commit b0da809850008901c876e2fe7bb09efc60534f2b
676+Merge: 0d6787b 014fcbc
677+Author: Jenkins <jenkins@review.openstack.org>
678+Date: Tue Sep 4 10:12:42 2012 +0000
679+
680+ Merge "Ensure hairpin_mode is set whenever vifs is added to bridge." into stable/essex
681+
682+commit 0d6787b190a255c97465c53e734196b2bbe82631
683+Merge: 4d2a4af 2f35f8e
684+Author: Jenkins <jenkins@review.openstack.org>
685+Date: Thu Aug 30 00:07:18 2012 +0000
686+
687+ Merge "Make flavorextradata ignore deleted flavors." into stable/essex
688+
689+commit 014fcbc06f55ea91a4e2c3a35df048cad3ae6684
690+Author: Yaguang Tang <heut2008@gmail.com>
691+Date: Sun Aug 26 09:58:09 2012 +0800
692+
693+ Ensure hairpin_mode is set whenever vifs is added to bridge.
694+
695+ Fix the bug that when create a snapshot of an instance, the
696+ instance cann't ping it's floating ip.
697+ fix bug lp:1040537
698+
699+ Change-Id: I25aa1a323fa84e8c72f969cb56ada4dffa509150
700+
701+ nova/virt/libvirt/connection.py | 12 +++++-------
702+ 1 file changed, 5 insertions(+), 7 deletions(-)
703+
704 commit 4d2a4afe3e3f67ed457651f0ea8ddd74ab75436d
705 Merge: 66c7164 5d63601
706 Author: Jenkins <jenkins@review.openstack.org>
707@@ -171,6 +521,22 @@
708 nova/version.py | 2 +-
709 1 file changed, 1 insertion(+), 1 deletion(-)
710
711+commit 2f35f8ec54d303dc48040c46cb950c7fbff9731e
712+Author: David Besen <david.besen@hp.com>
713+Date: Wed Aug 8 10:35:32 2012 -0600
714+
715+ Make flavorextradata ignore deleted flavors.
716+
717+ In _get_flavor_refs, don't retrieve inactive flavors. Fixes bug 1026210.
718+
719+ This change was made on trunk in https://review.openstack.org/#/c/9995/
720+
721+ Change-Id: I967faa661cd4177a54079a966ca8912923c5f61b
722+
723+ Authors | 1 +
724+ .../openstack/compute/contrib/flavorextradata.py | 2 +-
725+ 2 files changed, 2 insertions(+), 1 deletion(-)
726+
727 commit d4c7f6fc5e6094b00a31717080d73feff100eb1b
728 Merge: 3804144 e8ef050
729 Author: Jenkins <jenkins@review.openstack.org>
730@@ -47171,7 +47537,7 @@
731
732 commit d327987cdd0eed43e5400b392086446b0c73b035
733 Merge: 48e22da ca13037
734-Author: John Tran <jtran@attinteractive.com>
735+Author: John Tran <jhtran@att.com>
736 Date: Thu Aug 18 21:57:52 2011 +0000
737
738 Fixed bug in which DescribeInstances was returning deleted instances. Added tests for pertinent api methods.
739@@ -48249,7 +48615,7 @@
740 This branch implements a nova api extension which allows you to manage and update tenant/project quotas.
741
742 commit ca13037d2cd130f5b970d3af219566f3a70a9cb5
743-Author: John Tran <jtran@attinteractive.com>
744+Author: John Tran <jhtran@att.com>
745 Date: Tue Aug 16 09:18:13 2011 -0700
746
747 test improvements per peer review
748@@ -48656,7 +49022,7 @@
749 1 file changed, 14 insertions(+), 6 deletions(-)
750
751 commit 3e561f148fcba627f8fbd4ab1089f426fbc2e61b
752-Author: John Tran <jtran@attinteractive.com>
753+Author: John Tran <jhtran@att.com>
754 Date: Mon Aug 15 13:58:44 2011 -0700
755
756 adding sqlalchemi api tests for test_instance_get_all_by_filter to ensure doesn't return deleted instances
757@@ -48666,7 +49032,7 @@
758 2 files changed, 15 insertions(+), 1 deletion(-)
759
760 commit f06f80591a41f5d1b373677937bbbcddcfb0bb7c
761-Author: John Tran <jtran@attinteractive.com>
762+Author: John Tran <jhtran@att.com>
763 Date: Mon Aug 15 13:48:09 2011 -0700
764
765 added cloud unit test for describe_instances to ensure doesn't return deleted instances
766@@ -48735,7 +49101,7 @@
767 merge trunk, remove _validate_cidrs and replace functionality with a double for loop
768
769 commit 066b675e3ce5c2bd67dde124cbe01b68bd1eded8
770-Author: John Tran <jtran@attinteractive.com>
771+Author: John Tran <jhtran@att.com>
772 Date: Mon Aug 15 13:22:14 2011 -0700
773
774 fix bug which DescribeInstances in EC2 api was returning deleted instances
775@@ -48958,7 +49324,7 @@
776
777 commit a538f400b5ced8357fa0e892fffd5a01b8e63cec
778 Merge: 452b343 353fa48
779-Author: John Tran <jtran@attinteractive.com>
780+Author: John Tran <jhtran@att.com>
781 Date: Sun Aug 14 04:10:26 2011 +0000
782
783 added logic to make the creation of networks (IPv4 only) validation a bit smarter:
784@@ -48971,7 +49337,7 @@
785
786 commit 452b343811311acbe35ccb5a896569127647f613
787 Merge: 89ddaa6 7b72972
788-Author: John Tran <jtran@attinteractive.com>
789+Author: John Tran <jhtran@att.com>
790 Date: Sun Aug 14 03:47:48 2011 +0000
791
792 fix InvalidPortRange exception shows up in euca2ools instead of UnknownError when euca-authorize is specified w/ invalid port #.
793@@ -49967,7 +50333,7 @@
794 3 files changed, 27 insertions(+), 5 deletions(-)
795
796 commit 7b72972cbc9fbd267160d8d3282e1d0ec888de98
797-Author: John Tran <jtran@attinteractive.com>
798+Author: John Tran <jhtran@att.com>
799 Date: Wed Aug 10 16:19:21 2011 -0700
800
801 removed typos, end of line chars
802@@ -50185,7 +50551,7 @@
803 merge trunk
804
805 commit 6548ce754984f2eb5e72612392a8a3392c2a21a2
806-Author: John Tran <jtran@attinteractive.com>
807+Author: John Tran <jhtran@att.com>
808 Date: Tue Aug 9 18:43:18 2011 -0700
809
810 fix so that the exception shows up in euca2ools instead of UnknownError
811@@ -51315,7 +51681,7 @@
812 1 file changed, 1 insertion(+), 1 deletion(-)
813
814 commit 353fa4871069cf0b926f09aa00496002f65584cb
815-Author: John Tran <jtran@attinteractive.com>
816+Author: John Tran <jhtran@att.com>
817 Date: Fri Aug 5 11:48:06 2011 -0700
818
819 fixed per peer review
820@@ -51324,7 +51690,7 @@
821 1 file changed, 5 insertions(+), 5 deletions(-)
822
823 commit 3812d22b7a6f5d74418a7a99dc69c68a5b9f9046
824-Author: John Tran <jtran@attinteractive.com>
825+Author: John Tran <jhtran@att.com>
826 Date: Fri Aug 5 11:36:00 2011 -0700
827
828 fixed per peer review
829@@ -51383,7 +51749,7 @@
830 Updates v1.1 servers/id/action requests to comply with the 1.1 spec
831
832 commit 2935bebd718e770d0f2c9d1ab5dca76cc7d5f76a
833-Author: John Tran <jtran@attinteractive.com>
834+Author: John Tran <jhtran@att.com>
835 Date: Fri Aug 5 09:50:11 2011 -0700
836
837 fix typo
838@@ -51688,7 +52054,7 @@
839 tests and merge with trunk
840
841 commit b7167b21d615f8617d588a1656aa341fd226ded9
842-Author: John Tran <jtran@attinteractive.com>
843+Author: John Tran <jhtran@att.com>
844 Date: Thu Aug 4 20:13:23 2011 -0700
845
846 removed redundant logic
847@@ -51698,14 +52064,14 @@
848
849 commit d4c5d5b18fc3b51fcb1ee5bc39ac866c4aa47d48
850 Merge: b557b63 502801b
851-Author: John Tran <jtran@attinteractive.com>
852+Author: John Tran <jhtran@att.com>
853 Date: Thu Aug 4 19:43:33 2011 -0700
854
855 merged trunk
856
857 commit 502801bfff0015ed3aa93b9d65a87cb6b80fd11d
858 Merge: 0b275cd f942a7f
859-Author: John Tran <jtran@attinteractive.com>
860+Author: John Tran <jhtran@att.com>
861 Date: Fri Aug 5 02:27:36 2011 +0000
862
863 For nova-manage network create cmd, added warning when size of subnet(s) being created are larger than FLAG.network_size, in attempt to alleviate confusion. For example, currently when 'nova-manage network create foo 192.168.0.0/16', the result is that it creates a 192.168.0.0/24 instead without any indication to why
864@@ -51740,7 +52106,7 @@
865 1 file changed, 7 insertions(+), 5 deletions(-)
866
867 commit b557b6366b21a0d3795369785037ee29c8cef377
868-Author: John Tran <jtran@attinteractive.com>
869+Author: John Tran <jhtran@att.com>
870 Date: Thu Aug 4 18:52:15 2011 -0700
871
872 fix pep8 issues
873@@ -51750,7 +52116,7 @@
874 2 files changed, 12 insertions(+), 7 deletions(-)
875
876 commit 38eb72be5f15731ba34a7dc0f8a28aa0fb63ea90
877-Author: John Tran <jtran@attinteractive.com>
878+Author: John Tran <jhtran@att.com>
879 Date: Thu Aug 4 18:37:36 2011 -0700
880
881 fixed bug , when logic searched for next avail cidr it would return cidrs that were out of range of original requested cidr block. added test for it
882@@ -51783,7 +52149,7 @@
883 1 file changed, 37 insertions(+)
884
885 commit 89ec28c70d7795d427ecd4242cb1856eabdca104
886-Author: John Tran <jtran@attinteractive.com>
887+Author: John Tran <jhtran@att.com>
888 Date: Thu Aug 4 18:01:07 2011 -0700
889
890 fixed bug, wasn't detecting smaller subnet conflict properly added test for it
891@@ -51811,7 +52177,7 @@
892 1 file changed, 3 insertions(+)
893
894 commit f58d441b55e143de35aefd039b80e0b27dad9ce2
895-Author: John Tran <jtran@attinteractive.com>
896+Author: John Tran <jhtran@att.com>
897 Date: Thu Aug 4 16:27:55 2011 -0700
898
899 removed unnecessary context from test I had left there from prior
900@@ -51830,7 +52196,7 @@
901 2 files changed, 90 insertions(+), 82 deletions(-)
902
903 commit 8c7b71f65e54d67615e52927591e12a43b8b3991
904-Author: John Tran <jtran@attinteractive.com>
905+Author: John Tran <jhtran@att.com>
906 Date: Thu Aug 4 16:05:08 2011 -0700
907
908 re-integrated my changes after merging trunk. fixed some pep8 issues. sorting the list of cidrs to create, so that it will create x.x.0.0 with a lower 'id' than x.x.1.0 (as an example). <- was causing libvirtd test to fail
909@@ -52897,7 +53263,7 @@
910 Yet another conflict resolved.
911
912 commit f942a7f22acb6a6719a3de778ba55ca25ea0ee68
913-Author: John Tran <jtran@attinteractive.com>
914+Author: John Tran <jhtran@att.com>
915 Date: Wed Aug 3 00:16:52 2011 -0700
916
917 forgot to remove comment
918@@ -52906,7 +53272,7 @@
919 1 file changed, 1 deletion(-)
920
921 commit bfb5a5e1204bf868b5db8d8d038b63d0899665ce
922-Author: John Tran <jtran@attinteractive.com>
923+Author: John Tran <jhtran@att.com>
924 Date: Wed Aug 3 00:11:52 2011 -0700
925
926 updated to work w/ changes after merged trunk fixing var renaming. the logic which forces default to FLAGS.network_size if requested cidr was larger, was also applying to requested cidrs smaller than FLAGS.network_size. Requested cidrs smaller than FLAGS.network_size should be ignored and not overriden.
927@@ -52916,14 +53282,14 @@
928
929 commit 6d7e5196db2e852476f7d14007cf155e15815071
930 Merge: e239dc5 e2770a4
931-Author: John Tran <jtran@attinteractive.com>
932+Author: John Tran <jhtran@att.com>
933 Date: Tue Aug 2 23:16:27 2011 -0700
934
935 merged from trunk
936
937 commit 8b06f143ec1d91b3c95a43746bfdacbe3aec3829
938 Merge: 51f0cbf e2770a4
939-Author: John Tran <jtran@attinteractive.com>
940+Author: John Tran <jhtran@att.com>
941 Date: Tue Aug 2 23:07:23 2011 -0700
942
943 merged from trunk
944@@ -53385,7 +53751,7 @@
945 1 file changed, 1 insertion(+), 1 deletion(-)
946
947 commit 51f0cbf9221b461eb92beae2497e871bf2a7f45f
948-Author: John Tran <jtran@attinteractive.com>
949+Author: John Tran <jhtran@att.com>
950 Date: Tue Aug 2 10:06:22 2011 -0700
951
952 refactored tests
953@@ -53499,7 +53865,7 @@
954
955 commit 83066aa64ccba34e23063eee661375b11de2161f
956 Merge: f05628d 094b984
957-Author: John Tran <jtran@attinteractive.com>
958+Author: John Tran <jhtran@att.com>
959 Date: Tue Aug 2 11:28:43 2011 +0000
960
961 code was checking for key in sqlalchemy instance and will ignore if value is None, but wasn't working if floating_ip was a non-sqlalchemy dict obj. Therefore, updated the error checking to work in both caes.
962@@ -53542,7 +53908,7 @@
963 1 file changed, 2 insertions(+), 2 deletions(-)
964
965 commit bcfd8f5e1e0c3b53a2ad4a5bb533d94dcf5ef18c
966-Author: John Tran <jtran@attinteractive.com>
967+Author: John Tran <jhtran@att.com>
968 Date: Mon Aug 1 21:34:43 2011 -0700
969
970 added some tests for network create & moved the ipv6 logic back into the function
971@@ -53623,7 +53989,7 @@
972 Merged trunk
973
974 commit ab4bfcf6c458ab6bf6ead126a91413b92aa543b8
975-Author: John Tran <jtran@attinteractive.com>
976+Author: John Tran <jhtran@att.com>
977 Date: Mon Aug 1 16:27:17 2011 -0700
978
979 pep8 fixes
980@@ -53669,7 +54035,7 @@
981 Merge from trunk.
982
983 commit 951114be20065044e7f12e37188eb30e859ff2cb
984-Author: John Tran <jtran@attinteractive.com>
985+Author: John Tran <jhtran@att.com>
986 Date: Mon Aug 1 12:47:41 2011 -0700
987
988 removed redundant logic
989@@ -53679,13 +54045,13 @@
990
991 commit a73d1f200dc3e493ce7044bda9fe0a691dca1664
992 Merge: e72fafb bdcfaa5
993-Author: John Tran <jtran@attinteractive.com>
994+Author: John Tran <jhtran@att.com>
995 Date: Mon Aug 1 12:39:26 2011 -0700
996
997 merged from trunk
998
999 commit e72fafbf76ed456039426a96dd65d2c148dffa29
1000-Author: John Tran <jtran@attinteractive.com>
1001+Author: John Tran <jhtran@att.com>
1002 Date: Mon Aug 1 12:37:12 2011 -0700
1003
1004 adding a function with logic to make the creation of networks validation a bit smarter:
1005@@ -55392,7 +55758,7 @@
1006 2 files changed, 34 insertions(+), 1 deletion(-)
1007
1008 commit 094b9845500e28d315f70aa1fbc37b75c143d0c0
1009-Author: John Tran <jtran@attinteractive.com>
1010+Author: John Tran <jhtran@att.com>
1011 Date: Wed Jul 27 10:34:58 2011 -0700
1012
1013 improved the code per peer review
1014@@ -55722,7 +56088,7 @@
1015 1 file changed, 18 insertions(+), 77 deletions(-)
1016
1017 commit 6b33d0dfbfea7ee66a47947973133573070303cd
1018-Author: John Tran <jtran@attinteractive.com>
1019+Author: John Tran <jhtran@att.com>
1020 Date: Tue Jul 26 23:03:16 2011 -0700
1021
1022 code was checking for key in sqlalchemy instance but if floating_ip is a non-sqlalchemy dict instance instead, value=None will cause NoneType exception.
1023@@ -56014,7 +56380,7 @@
1024 4 files changed, 172 insertions(+), 131 deletions(-)
1025
1026 commit e239dc589982a0d90eb8a50967af05a10d5e4d5b
1027-Author: John Tran <jtran@attinteractive.com>
1028+Author: John Tran <jhtran@att.com>
1029 Date: Tue Jul 26 13:12:34 2011 -0700
1030
1031 fixed per peer review
1032@@ -56134,7 +56500,7 @@
1033 Ideally we should probably consider adding a fixed_ip alias to the models.Instance query context so that the api code is consistent, but for now this should resolve the outstanding issues.
1034
1035 commit 6fb2fe901bc4f4479e6a2bb087870927be7318a2
1036-Author: John Tran <jtran@attinteractive.com>
1037+Author: John Tran <jhtran@att.com>
1038 Date: Tue Jul 26 10:03:16 2011 -0700
1039
1040 added warning when size of subnet(s) being created are larger than FLAG.network_size in attempt to alleviate confusion. For example, currently when 'nova-manage network create foo 192.168.0.0/16', the result is that it creates a 192.168.0.0/24 instead without any indication to why.
1041@@ -56155,7 +56521,7 @@
1042
1043 commit 05e7aedaa3124267450e2f74ca026680b15d6d27
1044 Merge: 6107daa 8e087df
1045-Author: John Tran <jtran@attinteractive.com>
1046+Author: John Tran <jhtran@att.com>
1047 Date: Tue Jul 26 09:49:51 2011 -0700
1048
1049 merged from trunk
1050@@ -56563,7 +56929,7 @@
1051
1052 commit e2d35269e7628cc0eedddaa3ac9b48a6bd95cdac
1053 Merge: b2920f1 ab42384
1054-Author: John Tran <jtran@attinteractive.com>
1055+Author: John Tran <jhtran@att.com>
1056 Date: Mon Jul 25 21:24:42 2011 +0000
1057
1058 modified to conform to latest AWS EC2 API spec for authorize & revoke ingress params using the IpPermissions data structure, which nests lists of CIDR blocks (IpRanges) as well as lists of Group data
1059@@ -58776,7 +59142,7 @@
1060
1061 commit f926ae2a0fcf115beae78b8edfbf4ddee1d646be
1062 Merge: b76d31c 1d4a789
1063-Author: John Tran <jtran@attinteractive.com>
1064+Author: John Tran <jhtran@att.com>
1065 Date: Wed Jul 20 16:41:10 2011 +0000
1066
1067 network api release_floating_ip method will now check to see if an instance is associated to it, prior to releasing.
1068@@ -59054,7 +59420,7 @@
1069 8 files changed, 16 insertions(+), 17 deletions(-)
1070
1071 commit 1d4a789ed370fe0cc00c292f89b96b0ffaf115ff
1072-Author: John Tran <jtran@attinteractive.com>
1073+Author: John Tran <jhtran@att.com>
1074 Date: Tue Jul 19 14:16:14 2011 -0700
1075
1076 move import network to the top
1077@@ -59071,13 +59437,13 @@
1078
1079 commit 12441aae27572a8966a42ff6c5b16cfc7195a634
1080 Merge: ecb68bf 77db06c
1081-Author: John Tran <jtran@attinteractive.com>
1082+Author: John Tran <jhtran@att.com>
1083 Date: Tue Jul 19 13:56:28 2011 -0700
1084
1085 merged from trunk
1086
1087 commit ecb68bf77565cb01ec0ea4d28c7f1315e10b21c4
1088-Author: John Tran <jtran@attinteractive.com>
1089+Author: John Tran <jhtran@att.com>
1090 Date: Tue Jul 19 13:49:05 2011 -0700
1091
1092 network api release_floating_ip method checks if an instance associated to the floating prior to releasing. added test
1093@@ -59517,7 +59883,7 @@
1094 1 file changed, 4 insertions(+), 1 deletion(-)
1095
1096 commit ab42384131077bae3986141279b605d8f994143c
1097-Author: John Tran <jtran@attinteractive.com>
1098+Author: John Tran <jhtran@att.com>
1099 Date: Mon Jul 18 03:45:16 2011 +0000
1100
1101 resolved pep8 issues
1102@@ -59528,7 +59894,7 @@
1103
1104 commit 3fd9b0dbfcb42422a88c9b21f5353fdb9eea1fc1
1105 Merge: b0a02fe cf25ab3
1106-Author: John Tran <jtran@attinteractive.com>
1107+Author: John Tran <jhtran@att.com>
1108 Date: Mon Jul 18 03:03:57 2011 +0000
1109
1110 merged from trunk
1111@@ -59631,7 +59997,7 @@
1112 3 files changed, 25 insertions(+)
1113
1114 commit b0a02feb7bd25380a75b83344e0ac3210a168387
1115-Author: John Tran <jtran@attinteractive.com>
1116+Author: John Tran <jhtran@att.com>
1117 Date: Sun Jul 17 22:07:07 2011 +0000
1118
1119 changed to avoid localization test failure
1120@@ -59776,7 +60142,7 @@
1121 Added some unit and integration tests for updating the server name via the openstack api.
1122
1123 commit 7498fa608def9613552cf0e26dcb03fddf7b298d
1124-Author: John Tran <jtran@attinteractive.com>
1125+Author: John Tran <jhtran@att.com>
1126 Date: Fri Jul 15 22:56:16 2011 +0000
1127
1128 renamed priv method arg_to_dict since it's not just used for revoke. modified to conform to latest AWS EC2 API spec for authorize & revoke ingress params using the IpPermissions data structure, which nests lists of CIDR blocks (IpRanges) as well as lists of Group data
1129@@ -61175,7 +61541,7 @@
1130
1131 commit 0a2105dd88b400494d49fc7921deac4960b3515c
1132 Merge: fab5c5a 17fceb2
1133-Author: John Tran <jtran@attinteractive.com>
1134+Author: John Tran <jhtran@att.com>
1135 Date: Sat Jul 9 23:56:32 2011 +0000
1136
1137 flaw in ec2 cloud api, _get_image method , if doing a search for aki-0000009, yet that image name doesn't exist, it strips off aki- and looks for any image_id 0000009 and if there was an image match that happens to be an ami instead of aki, it will go ahead and deregister the ami instead. That behavior is unintended, so added logic to ensure that the original request image_id matches the type of image being returned from database by matching against container_format attr
1138@@ -61271,7 +61637,7 @@
1139 2 files changed, 2 insertions(+), 3 deletions(-)
1140
1141 commit 17fceb2368d63dd937dc5e9385158c01130557a7
1142-Author: John Tran <jtran@attinteractive.com>
1143+Author: John Tran <jhtran@att.com>
1144 Date: Fri Jul 8 14:19:35 2011 -0700
1145
1146 peer review fix - per vish: 'This method automatically converts unknown formats to ami, which is the same logic used to display unknown images in the ec2 api. This will allow you to properly deregister raw images, etc.'
1147@@ -61399,7 +61765,7 @@
1148 1 file changed, 6 insertions(+), 7 deletions(-)
1149
1150 commit 2c3eeb5f9f5f78d9cb8fb3e37d5b5e1610d32499
1151-Author: John Tran <jtran@attinteractive.com>
1152+Author: John Tran <jhtran@att.com>
1153 Date: Thu Jul 7 20:43:50 2011 -0700
1154
1155 ec2 api _get_image method logic flaw that strips the hex16 digit off of the image name, and does a search against the db for it and ignores that it may not be the correct image, such as if doing a search for aki-0000009, yet that image name doesn't exist, it strips off aki- and looks for any image_id 0000009 and if there was an image match that happens to be an ami instead of aki, it will go ahead and deregister that. That behavior is unintended, so added logic to ensure that the original request image_id matches the type of image being returned from database by matching against container_format attr
1156@@ -62891,7 +63257,7 @@
1157
1158 commit 6843421be9cdef1fc12d3480889bdcfd96821e1b
1159 Merge: 666b3c3 2d1d6b3
1160-Author: John Tran <jtran@attinteractive.com>
1161+Author: John Tran <jhtran@att.com>
1162 Date: Fri Jul 1 15:47:33 2011 +0000
1163
1164 Added the GroupId param to any pertinent security_group methods that support it in the official AWS API.
1165@@ -63021,7 +63387,7 @@
1166 Ensure auto-delete is false on Topic Queues.
1167
1168 commit 2d1d6b3e5c3957490c7cb49b38e72ca3baf9f8b0
1169-Author: John Tran <jtran@attinteractive.com>
1170+Author: John Tran <jhtran@att.com>
1171 Date: Thu Jun 30 17:52:33 2011 -0700
1172
1173 refactored the security_group tests a bit and broke up a few of them into smaller tests
1174@@ -64226,7 +64592,7 @@
1175 1 file changed, 5 insertions(+), 5 deletions(-)
1176
1177 commit 73c49dd3497f46953d7fa9ac3f5caebcafa02023
1178-Author: John Tran <jtran@attinteractive.com>
1179+Author: John Tran <jhtran@att.com>
1180 Date: Mon Jun 27 15:30:56 2011 -0700
1181
1182 breaking up into individual tests for security_groups
1183@@ -65346,7 +65712,7 @@
1184 trunk merge
1185
1186 commit 129da3c5206443acc117b33b440a05b064fd711e
1187-Author: John Tran <jtran@attinteractive.com>
1188+Author: John Tran <jhtran@att.com>
1189 Date: Thu Jun 23 15:57:57 2011 -0700
1190
1191 removing erroneous block, must've been a copy and paste fat finger
1192@@ -65355,7 +65721,7 @@
1193 1 file changed, 7 deletions(-)
1194
1195 commit 5004736930c0c9619ba3efd48910a47fd58e0921
1196-Author: John Tran <jtran@attinteractive.com>
1197+Author: John Tran <jhtran@att.com>
1198 Date: Thu Jun 23 15:42:57 2011 -0700
1199
1200 specify keyword, or direct_api proxy method blows up
1201@@ -65522,13 +65888,13 @@
1202
1203 commit 85c8b60a67897ea2a37e305d901d1637bdae5e8d
1204 Merge: d5206c7 df8448f
1205-Author: John Tran <jtran@attinteractive.com>
1206+Author: John Tran <jhtran@att.com>
1207 Date: Thu Jun 23 11:32:27 2011 -0700
1208
1209 merge from trunk
1210
1211 commit d5206c7f41c435fd39c1bb9c0fd7ec53c9685f43
1212-Author: John Tran <jtran@attinteractive.com>
1213+Author: John Tran <jhtran@att.com>
1214 Date: Thu Jun 23 11:31:22 2011 -0700
1215
1216 altho security_group authorize & revoke tests already exist in test_api, adding some direct ec2 api method tests. added group_id param support to the pertinent security group methods
1217@@ -65625,7 +65991,7 @@
1218
1219 commit df8448f9f63c9f610c23cf092c14f4eb8547fe46
1220 Merge: ca9384e dca372d
1221-Author: John Tran <jtran@attinteractive.com>
1222+Author: John Tran <jhtran@att.com>
1223 Date: Thu Jun 23 15:57:55 2011 +0000
1224
1225 "nova-manage checks if user is member of proj, prior to adding role for that project"
1226@@ -66391,7 +66757,7 @@
1227 merge with trunk
1228
1229 commit 3f2c0521f1c8462380c68d5245b5754867738fa1
1230-Author: John Tran <jtran@attinteractive.com>
1231+Author: John Tran <jhtran@att.com>
1232 Date: Tue Jun 21 18:14:31 2011 -0700
1233
1234 ec2 api describe_security_groups allow group_id param , added tests for create/delete security group in test_cloud although also exists in test_api this tests directly the ec2 method.
1235@@ -66759,7 +67125,7 @@
1236 4 files changed, 81 insertions(+), 40 deletions(-)
1237
1238 commit dca372d68ab99126f22c7467af12de30bb4488e4
1239-Author: John Tran <jtran@attinteractive.com>
1240+Author: John Tran <jhtran@att.com>
1241 Date: Mon Jun 20 15:28:34 2011 -0700
1242
1243 nova-manage checks if user is member of proj, prior to adding role for that project
1244@@ -69381,7 +69747,7 @@
1245
1246 commit 91e34d37d2907295e892e96ca2c3039c7fbe14bf
1247 Merge: 8e6fabd 05fecdf
1248-Author: John Tran <jtran@attinteractive.com>
1249+Author: John Tran <jhtran@att.com>
1250 Date: Sat Jun 11 01:31:10 2011 +0000
1251
1252 ec2 api method allocate_address ; raises exception.NoFloatingIpsDefined instead of UnknownError when there aren't any floating ips available.
1253@@ -69533,7 +69899,7 @@
1254 1 file changed, 1 insertion(+), 1 deletion(-)
1255
1256 commit 05fecdf873a5c02dcb13c841304df872411d4183
1257-Author: John Tran <jtran@attinteractive.com>
1258+Author: John Tran <jhtran@att.com>
1259 Date: Fri Jun 10 11:10:58 2011 -0700
1260
1261 added new exception more descriptive of not having available floating addresses avail for allocation
1262@@ -69544,7 +69910,7 @@
1263 3 files changed, 6 insertions(+), 2 deletions(-)
1264
1265 commit 0e7a2042cc5922bb014a77080ec0bdb93bbf575c
1266-Author: John Tran <jtran@attinteractive.com>
1267+Author: John Tran <jhtran@att.com>
1268 Date: Fri Jun 10 10:28:03 2011 -0700
1269
1270 raise instance instead of class
1271@@ -69562,7 +69928,7 @@
1272 1 file changed, 1 insertion(+), 1 deletion(-)
1273
1274 commit e763a0ac8981bdbee44c054c6be08b9f1a5d634d
1275-Author: John Tran <jtran@attinteractive.com>
1276+Author: John Tran <jhtran@att.com>
1277 Date: Fri Jun 10 10:24:24 2011 -0700
1278
1279 style change
1280@@ -69836,7 +70202,7 @@
1281 2 files changed, 18 insertions(+), 5 deletions(-)
1282
1283 commit 463e0388308760dbf3bf2b3fa901d8076d002f91
1284-Author: John Tran <jtran@attinteractive.com>
1285+Author: John Tran <jhtran@att.com>
1286 Date: Thu Jun 9 00:01:42 2011 -0700
1287
1288 matched the inner exception specifically, instead of catching all RemoteError exceptions
1289@@ -69872,7 +70238,7 @@
1290 Fix merge conflict
1291
1292 commit b11cf9bc7b1b9792bdab77aa72dc6163f3e44ca1
1293-Author: John Tran <jtran@attinteractive.com>
1294+Author: John Tran <jhtran@att.com>
1295 Date: Wed Jun 8 17:17:40 2011 -0700
1296
1297 removing custom exception, instead using NoFloatingIpsDefined
1298@@ -69881,7 +70247,7 @@
1299 1 file changed, 6 deletions(-)
1300
1301 commit 3764be9d65483a9e431b69f37e3516fa20961362
1302-Author: John Tran <jtran@attinteractive.com>
1303+Author: John Tran <jhtran@att.com>
1304 Date: Wed Jun 8 17:15:35 2011 -0700
1305
1306 raises exception.NoFloatingIpsDefined instead of UnknownError
1307@@ -69900,7 +70266,7 @@
1308 1 file changed, 12 insertions(+), 2 deletions(-)
1309
1310 commit 70e4d73778d448cb7f122bc0a2a0c43a78fff46a
1311-Author: John Tran <jtran@attinteractive.com>
1312+Author: John Tran <jhtran@att.com>
1313 Date: Wed Jun 8 15:23:33 2011 -0700
1314
1315 added a test for allocate_address & added error handling for api instead of returning 'UnknownError', will give information 'AllocateAddressError: NoMoreAddresses
1316@@ -70014,7 +70380,7 @@
1317
1318 commit f83011a8046afc7f84dbfc08b3610bc942aefed2
1319 Merge: 8ff87c6 a909743
1320-Author: John Tran <jtran@attinteractive.com>
1321+Author: John Tran <jhtran@att.com>
1322 Date: Wed Jun 8 17:36:09 2011 +0000
1323
1324 adding Authorizer key for ImportPublicKey
1325@@ -70111,7 +70477,7 @@
1326 1 file changed, 5 insertions(+)
1327
1328 commit a90974347dd396990d8e6fadeac15abd07cb19ea
1329-Author: John Tran <jtran@attinteractive.com>
1330+Author: John Tran <jhtran@att.com>
1331 Date: Tue Jun 7 14:36:40 2011 -0700
1332
1333 adding Authorizer key for ImportPublicKey
1334@@ -70361,7 +70727,7 @@
1335
1336 commit a94992f199edd37ae3efd68c618b19c2ebab1a88
1337 Merge: 90d6bf7 81099d6
1338-Author: John Tran <jtran@attinteractive.com>
1339+Author: John Tran <jhtran@att.com>
1340 Date: Tue Jun 7 01:30:59 2011 +0000
1341
1342 run_instances will check image for 'available' status before attempting to create a new instance
1343@@ -70386,7 +70752,7 @@
1344
1345 commit 81099d63d6ff30b21116f7f0e5c782abadf0ab90
1346 Merge: 5d89721 4d50e84
1347-Author: John Tran <jtran@attinteractive.com>
1348+Author: John Tran <jhtran@att.com>
1349 Date: Mon Jun 6 14:37:30 2011 -0700
1350
1351 merged from trunk
1352@@ -71357,7 +71723,7 @@
1353 Merge trunk.
1354
1355 commit 5d89721f5fa3212146749236c666f0e584c8590f
1356-Author: John Tran <jtran@attinteractive.com>
1357+Author: John Tran <jhtran@att.com>
1358 Date: Wed Jun 1 16:27:51 2011 -0700
1359
1360 merged, with trunk, fixed the test failure, and split the test into 3 as per peer review.
1361@@ -71367,7 +71733,7 @@
1362
1363 commit 78093e8101d1981fc1fbafc963023bc70ad6b3b6
1364 Merge: 1f61272 ced7900
1365-Author: John Tran <jtran@attinteractive.com>
1366+Author: John Tran <jhtran@att.com>
1367 Date: Wed Jun 1 23:26:18 2011 +0000
1368
1369 Fixes nova-manage bug. When a nova-network host has allocated floating ips *AND* some associated, the nova-manage floating list <host> would throw exception because was expecting hash with 'ec2_id' key , however, the obj returned is a sqlalchemy obj and the attr we need is 'hostname'.
1370@@ -71392,7 +71758,7 @@
1371 2 files changed, 78 insertions(+), 20 deletions(-)
1372
1373 commit ced79009e6555eb75f3862184834a883d37b2062
1374-Author: John Tran <jtran@attinteractive.com>
1375+Author: John Tran <jhtran@att.com>
1376 Date: Wed Jun 1 16:01:41 2011 -0700
1377
1378 fixed as per peer review to make more consistent
1379@@ -71402,7 +71768,7 @@
1380
1381 commit 5e800a901f0ec051715dbd0f917975f898406860
1382 Merge: a0cffc4 1f61272
1383-Author: John Tran <jtran@attinteractive.com>
1384+Author: John Tran <jhtran@att.com>
1385 Date: Wed Jun 1 15:54:45 2011 -0700
1386
1387 merged from trunk
1388@@ -73409,7 +73775,7 @@
1389 1 file changed, 11 insertions(+)
1390
1391 commit 7c0564baf72cbb5c3693ab72c72684a5c6b333c5
1392-Author: John Tran <jtran@attinteractive.com>
1393+Author: John Tran <jhtran@att.com>
1394 Date: Thu May 26 10:22:45 2011 -0700
1395
1396 instance obj returned is not a hash, instead is sqlalchemy obj and hostname attr is what the logic is looking for
1397@@ -74714,7 +75080,7 @@
1398 1 file changed, 2 insertions(+), 2 deletions(-)
1399
1400 commit a0cffc4de8ba4b15958e320308477d42287858e7
1401-Author: John Tran <jtran@attinteractive.com>
1402+Author: John Tran <jhtran@att.com>
1403 Date: Tue May 24 09:43:52 2011 -0700
1404
1405 specified image_id keyword in exception arg
1406@@ -74731,7 +75097,7 @@
1407 When adding a keypair with ec2 API that already exists, give a friendly error and no traceback in nova-api
1408
1409 commit 8e7c3121fab4b5a87c2efe865f3c06b1bd267cbc
1410-Author: John Tran <jtran@attinteractive.com>
1411+Author: John Tran <jhtran@att.com>
1412 Date: Tue May 24 08:59:02 2011 -0700
1413
1414 added imageid string to exception, per peer review
1415@@ -74927,7 +75293,7 @@
1416 1 file changed, 2 insertions(+), 2 deletions(-)
1417
1418 commit 7a521f49f6daf0a0a37a9ef98ff1ea8813f04a6f
1419-Author: John Tran <jtran@attinteractive.com>
1420+Author: John Tran <jhtran@att.com>
1421 Date: Mon May 23 14:54:11 2011 -0700
1422
1423 merged from trunk
1424@@ -74958,7 +75324,7 @@
1425
1426 commit 1816b3e6a99da512aeb51822e90d40f30b443014
1427 Merge: 0a3da15 e1795bd
1428-Author: John Tran <jtran@attinteractive.com>
1429+Author: John Tran <jhtran@att.com>
1430 Date: Mon May 23 14:27:56 2011 -0700
1431
1432 merged from trunk
1433@@ -75563,7 +75929,7 @@
1434
1435 commit ff35d64de0228ed0ce7f0e617289d4423935fa3d
1436 Merge: b6d45a7 cbe89f1
1437-Author: John Tran <jtran@attinteractive.com>
1438+Author: John Tran <jhtran@att.com>
1439 Date: Fri May 20 06:51:29 2011 +0000
1440
1441 Added an EC2 API endpoint that'll allow import of public key. Prior, api only allowed generation of new keys.
1442@@ -77142,7 +77508,7 @@
1443
1444 commit 8d8076ff87e988f40c9ee3a24b7c3963064921bd
1445 Merge: ea5187e 0cf0b89
1446-Author: John Tran <jtran@attinteractive.com>
1447+Author: John Tran <jhtran@att.com>
1448 Date: Fri May 13 18:15:36 2011 +0000
1449
1450 Adds proper error handling for images that can't be found and a test for deregister image.
1451@@ -77489,7 +77855,7 @@
1452
1453 commit cbe89f150f6c1e209405da6cbba4c3cf9163fd2e
1454 Merge: 7cd6e9f 0576766
1455-Author: John Tran <jtran@attinteractive.com>
1456+Author: John Tran <jhtran@att.com>
1457 Date: Thu May 12 14:29:41 2011 -0700
1458
1459 merged from trunk
1460@@ -77534,7 +77900,7 @@
1461 2 files changed, 32 insertions(+)
1462
1463 commit 0cf0b89f57392688c0a443b29408813ccb028c38
1464-Author: John Tran <jtran@attinteractive.com>
1465+Author: John Tran <jhtran@att.com>
1466 Date: Thu May 12 12:51:03 2011 -0700
1467
1468 incorporated ImageNotFound instead of NotFound
1469@@ -77545,7 +77911,7 @@
1470
1471 commit 71b1ddba52e4901124c47202598433abfe03bedf
1472 Merge: 6dbec94 0576766
1473-Author: John Tran <jtran@attinteractive.com>
1474+Author: John Tran <jhtran@att.com>
1475 Date: Thu May 12 12:23:31 2011 -0700
1476
1477 merged from trunk
1478@@ -77564,7 +77930,7 @@
1479 5 files changed, 371 insertions(+), 386 deletions(-)
1480
1481 commit 0a3da155228228d3f0eeac1efdea1e29eef2f3a0
1482-Author: John Tran <jtran@attinteractive.com>
1483+Author: John Tran <jhtran@att.com>
1484 Date: Thu May 12 12:04:39 2011 -0700
1485
1486 changed NotFound exception to ImageNotFound
1487@@ -77639,7 +78005,7 @@
1488
1489 commit 86952493efb67b64b23766af094aa22deb21307f
1490 Merge: 377b120 0576766
1491-Author: John Tran <jtran@attinteractive.com>
1492+Author: John Tran <jhtran@att.com>
1493 Date: Thu May 12 11:25:12 2011 -0700
1494
1495 merged from trunk
1496@@ -79205,13 +79571,13 @@
1497
1498 commit 377b120f689edcdad07eaf479dfac1ac7becabd0
1499 Merge: 10db492 65f05c4
1500-Author: John Tran <jtran@attinteractive.com>
1501+Author: John Tran <jhtran@att.com>
1502 Date: Mon May 2 14:25:38 2011 -0700
1503
1504 merged from trunk
1505
1506 commit 10db492376a8bb8409e3fb3c33707865ac0f3ee7
1507-Author: John Tran <jtran@attinteractive.com>
1508+Author: John Tran <jhtran@att.com>
1509 Date: Mon May 2 14:25:21 2011 -0700
1510
1511 implemented review suggestion EAFP style, and fixed test stub fake_show needs to have image_state = available or other tests will fail
1512@@ -79320,7 +79686,7 @@
1513
1514 commit 42c8e73994c7d787aef0e2d97ea162ee5a2e1304
1515 Merge: 585a181 c3ab4f0
1516-Author: John Tran <jtran@attinteractive.com>
1517+Author: John Tran <jhtran@att.com>
1518 Date: Mon May 2 18:04:29 2011 +0000
1519
1520 ApiError 'code' arg set to None, and will only display a 'code' as part of the str if specified.
1521@@ -79698,7 +80064,7 @@
1522 Rebased to trunk rev 1030.
1523
1524 commit c3ab4f023e2636e254f940e08da0aded42c0e96b
1525-Author: John Tran <jtran@attinteractive.com>
1526+Author: John Tran <jhtran@att.com>
1527 Date: Mon Apr 25 12:55:59 2011 -0400
1528
1529 removed extra newline
1530@@ -79708,7 +80074,7 @@
1531
1532 commit 6dbec949738443dfcb48679549f5082d728abdff
1533 Merge: 8482d87 08cf0db
1534-Author: John Tran <jtran@attinteractive.com>
1535+Author: John Tran <jhtran@att.com>
1536 Date: Mon Apr 25 12:36:00 2011 -0400
1537
1538 merged from trunk
1539@@ -82156,7 +82522,7 @@
1540
1541 commit 8b54c186a7475cb800ac0de81be3478bc795d095
1542 Merge: 0f7ea0f b54b6c2
1543-Author: John Tran <jtran@attinteractive.com>
1544+Author: John Tran <jhtran@att.com>
1545 Date: Tue Apr 12 07:48:21 2011 +0000
1546
1547 Add a unit test for terminate_instances.
1548@@ -82654,7 +83020,7 @@
1549
1550 commit 2a14bc00c0abd1e2d0349ace99db7aa922b5f574
1551 Merge: 9b449fc d137ffd
1552-Author: John Tran <jtran@attinteractive.com>
1553+Author: John Tran <jhtran@att.com>
1554 Date: Fri Apr 8 18:02:55 2011 +0000
1555
1556 Added a patch for python eventlet, when using install_venv.py (see FAQ # 1485)
1557@@ -83245,7 +83611,7 @@
1558 1 file changed, 1 insertion(+), 1 deletion(-)
1559
1560 commit 4c1c0b8357e2cffd5f9a2a1240439e1871f845f2
1561-Author: John Tran <jtran@attinteractive.com>
1562+Author: John Tran <jhtran@att.com>
1563 Date: Wed Apr 6 19:43:58 2011 -0700
1564
1565 add the tests
1566@@ -83264,7 +83630,7 @@
1567 2 files changed, 7 insertions(+), 6 deletions(-)
1568
1569 commit 430975c2f7e354838a26cd81e59b5c0423a2c8fe
1570-Author: John Tran <jtran@attinteractive.com>
1571+Author: John Tran <jhtran@att.com>
1572 Date: Wed Apr 6 19:13:18 2011 -0700
1573
1574 ApiError code should default to None, and will only display a code if one exists. Prior was output an 'ApiError: ApiError: error message' string, which is confusing
1575@@ -83273,7 +83639,7 @@
1576 1 file changed, 6 insertions(+), 2 deletions(-)
1577
1578 commit 655eb8fbd21376e694f8134e42f10ddbc1aafb0e
1579-Author: John Tran <jtran@attinteractive.com>
1580+Author: John Tran <jhtran@att.com>
1581 Date: Wed Apr 6 18:22:03 2011 -0700
1582
1583 ec2 api run_instances checks for image status must be 'available'. Overhauled test_run_instances for working set of test assertions
1584@@ -83612,7 +83978,7 @@
1585 1 file changed, 1 insertion(+), 1 deletion(-)
1586
1587 commit d137ffdc2fb4e0298a6fb177df9e6a8299320301
1588-Author: John Tran <jtran@attinteractive.com>
1589+Author: John Tran <jhtran@att.com>
1590 Date: Tue Apr 5 18:35:15 2011 -0700
1591
1592 Add a patch for python eventlet, when using install_venv.py (see FAQ # 1485)
1593@@ -84050,7 +84416,7 @@
1594
1595 commit c0a8904508edb0687b588d40a7bd181d0393884f
1596 Merge: 08417c4 d923224
1597-Author: John Tran <jtran@attinteractive.com>
1598+Author: John Tran <jhtran@att.com>
1599 Date: Tue Apr 5 02:31:02 2011 +0000
1600
1601 fix bug lp:682888 - DescribeImages has no unit tests.
1602@@ -84918,7 +85284,7 @@
1603 1 file changed, 75 insertions(+), 4 deletions(-)
1604
1605 commit b54b6c200092054e38af1fa1e5885fe915e53149
1606-Author: John Tran <jtran@attinteractive.com>
1607+Author: John Tran <jhtran@att.com>
1608 Date: Wed Mar 30 13:10:11 2011 -0700
1609
1610 submitting a unit test for terminate_instance
1611@@ -84948,7 +85314,7 @@
1612 1 file changed, 4 insertions(+), 1 deletion(-)
1613
1614 commit 8482d87e3fe380704fac121240ebd29b9057283c
1615-Author: John Tran <jtran@attinteractive.com>
1616+Author: John Tran <jhtran@att.com>
1617 Date: Wed Mar 30 12:44:22 2011 -0700
1618
1619 removed trailing whitespace
1620@@ -84957,7 +85323,7 @@
1621 1 file changed, 1 insertion(+), 1 deletion(-)
1622
1623 commit 655906ee7be1d906033bde7887293e6d61bae3d6
1624-Author: John Tran <jtran@attinteractive.com>
1625+Author: John Tran <jhtran@att.com>
1626 Date: Wed Mar 30 12:37:56 2011 -0700
1627
1628 updated per code review, replaced NotFound with exception.NotFound
1629@@ -85481,7 +85847,7 @@
1630 1 file changed, 2 insertions(+), 10 deletions(-)
1631
1632 commit d92322400c31f1cad933da5117b24376d60a5798
1633-Author: John Tran <jtran@attinteractive.com>
1634+Author: John Tran <jhtran@att.com>
1635 Date: Tue Mar 29 17:07:59 2011 -0700
1636
1637 adding unit tests for describe_images
1638@@ -85659,7 +86025,7 @@
1639 4 files changed, 38 insertions(+), 11 deletions(-)
1640
1641 commit 3987547248e07719dbc63752100b695ef0be1a9c
1642-Author: John Tran <jtran@attinteractive.com>
1643+Author: John Tran <jhtran@att.com>
1644 Date: Tue Mar 29 13:44:38 2011 -0700
1645
1646 initial unit test for describe images
1647@@ -85677,7 +86043,7 @@
1648 1 file changed, 1 insertion(+), 1 deletion(-)
1649
1650 commit ee00cb8057eac328c98dd9c040ffa324f11a87be
1651-Author: John Tran <jtran@attinteractive.com>
1652+Author: John Tran <jhtran@att.com>
1653 Date: Tue Mar 29 13:43:00 2011 -0700
1654
1655 added blank lines in between functions & removed the test_describe_images (was meant for a diff bug lp682888)
1656@@ -85994,7 +86360,7 @@
1657 2 files changed, 11 insertions(+), 7 deletions(-)
1658
1659 commit 1b67237d05e7103dc6b2beadd5782466682a136b
1660-Author: John Tran <jtran@attinteractive.com>
1661+Author: John Tran <jhtran@att.com>
1662 Date: Mon Mar 28 18:19:56 2011 -0700
1663
1664 cleaned up var name
1665@@ -86003,7 +86369,7 @@
1666 1 file changed, 2 insertions(+), 2 deletions(-)
1667
1668 commit 00afedaec5c6544bf9ff982d5f9d8e7b6b2a4b19
1669-Author: John Tran <jtran@attinteractive.com>
1670+Author: John Tran <jhtran@att.com>
1671 Date: Mon Mar 28 18:16:55 2011 -0700
1672
1673 made changes per code review: 1) removed import of image from objectstore 2) changed to comments instaed of triple quotes.
1674@@ -86299,7 +86665,7 @@
1675
1676 commit c6a9bade80d44c0576f30608d33a1e5cbcd577e0
1677 Merge: 9ce24af ddbb00f
1678-Author: John Tran <jtran@attinteractive.com>
1679+Author: John Tran <jhtran@att.com>
1680 Date: Mon Mar 28 12:24:36 2011 -0700
1681
1682 merged from trunk
1683@@ -86384,7 +86750,7 @@
1684 3 files changed, 26 insertions(+), 12 deletions(-)
1685
1686 commit 9ce24afab007a9b5144c8c8a8f2fcc4157ba34d7
1687-Author: John Tran <jtran@attinteractive.com>
1688+Author: John Tran <jhtran@att.com>
1689 Date: Mon Mar 28 11:29:23 2011 -0700
1690
1691 when image_id provided cannot be found, returns more informative error message.
1692@@ -86991,7 +87357,7 @@
1693 1 file changed, 1 deletion(-)
1694
1695 commit c400024de45073ccc23a6738c78518365a511562
1696-Author: John Tran <jtran@attinteractive.com>
1697+Author: John Tran <jhtran@att.com>
1698 Date: Fri Mar 25 13:17:51 2011 -0700
1699
1700 added a simple test for describe_images with mock for detail funciton
1701@@ -89063,7 +89429,7 @@
1702 trunk merged
1703
1704 commit 7cd6e9f1cf62ff5628ae4680aa66ada676c8c288
1705-Author: John Tran <jtran@attinteractive.com>
1706+Author: John Tran <jhtran@att.com>
1707 Date: Wed Mar 23 11:16:22 2011 -0700
1708
1709 added myself to authors file
1710@@ -90218,7 +90584,7 @@
1711 Wrap update_dhcp in utils.synchronized.
1712
1713 commit a105fd449a0b91cde3ab86cc552705dfe50e3f6d
1714-Author: John Tran <jtran@attinteractive.com>
1715+Author: John Tran <jhtran@att.com>
1716 Date: Mon Mar 21 14:35:19 2011 -0700
1717
1718 if fingerprint data not provided, added logic to calculate it using the pub key.
1719@@ -90756,7 +91122,7 @@
1720 2 files changed, 3 insertions(+), 3 deletions(-)
1721
1722 commit 15a40f842cb8a4362fbd82e36e3df4af7ab46a84
1723-Author: John Tran <jtran@attinteractive.com>
1724+Author: John Tran <jhtran@att.com>
1725 Date: Fri Mar 18 12:17:40 2011 -0700
1726
1727 cleaned up tests stubs that were accidentally checked in
1728@@ -90774,7 +91140,7 @@
1729 1 file changed, 7 insertions(+), 1 deletion(-)
1730
1731 commit 5a9d2eb44ced0affe143e6274c9c9326f1c2d7da
1732-Author: John Tran <jtran@attinteractive.com>
1733+Author: John Tran <jhtran@att.com>
1734 Date: Fri Mar 18 11:49:11 2011 -0700
1735
1736 created api endpoint to allow uploading of public key
1737
1738=== modified file 'PKG-INFO'
1739--- PKG-INFO 2012-08-27 14:50:40 +0000
1740+++ PKG-INFO 2012-12-18 13:07:55 +0000
1741@@ -1,6 +1,6 @@
1742 Metadata-Version: 1.0
1743 Name: nova
1744-Version: 2012.1.3
1745+Version: 2012.1.4
1746 Summary: cloud computing fabric controller
1747 Home-page: http://www.openstack.org/
1748 Author: OpenStack
1749
1750=== modified file 'debian/changelog'
1751--- debian/changelog 2012-08-27 14:50:40 +0000
1752+++ debian/changelog 2012-12-18 13:07:55 +0000
1753@@ -1,3 +1,38 @@
1754+nova (2012.1.4+stable-20121217-9f277e38-0ubuntu1) precise-proposed; urgency=low
1755+
1756+ [ Chuck Short ]
1757+ * debian/*.logrotate: compress logfiles when they are rotated. (LP: #1049915)
1758+
1759+ [ Yolanda Robla Mota ]
1760+ * Resynchronize with stable/essex (9f277e38):
1761+ - [80fefe5] use_single_default_gateway does not function correctly
1762+ (LP: #1075859)
1763+ - [bd10241] Essex 2012.1.3 : Error deleting instance with 2 Nova Volumes
1764+ attached (LP: #1079745)
1765+ - [86a5937] do_refresh_security_group_rules in nova.virt.firewall is very
1766+ slow (LP: #1062314)
1767+ - [ae9c5f4] deallocate_fixed_ip attempts to update an already deleted
1768+ fixed_ip (LP: #1017633)
1769+ - [20f98c5] failed to allocate fixed ip because old deleted one exists
1770+ (LP: #996482)
1771+ - [75f6922] snapshot stays in saving state if the vm base image is deleted
1772+ (LP: #921774)
1773+ - [1076699] lock files may be removed in error dues to permissions issues
1774+ (LP: #1051924)
1775+ - [40c5e94] ensure_default_security_group() does not call sgh (LP: #1050982)
1776+ - [4eebe76] At termination, LXC rootfs is not always unmounted before
1777+ rmtree() is called (LP: #1046313)
1778+ - [47dabb3] Heavily loaded nova-compute instances don't sent reports
1779+ frequently enough (LP: #1045152)
1780+ - [b375b4f] When attach volume lost attach when node restart (LP: #1004791)
1781+ - [4ac2dcc] nova usage-list returns wrong usage (LP: #1043999)
1782+ - [014fcbc] Bridge port's hairpin mode not set after resuming a machine
1783+ (LP: #1040537)
1784+ - [2f35f8e] Nova flavor ephemeral space size reported incorrectly
1785+ (LP: #1026210)
1786+
1787+ -- Yolanda Robla Mota <yolanda.robla@canonical.com> Mon, 17 Dec 2012 10:39:28 +0000
1788+
1789 nova (2012.1.3+stable-20120827-4d2a4afe-0ubuntu1) precise-proposed; urgency=low
1790
1791 * New upstream snapshot, fixes FTBFS in -proposed. (LP: #1041120)
1792
1793=== modified file 'debian/nova-api-ec2.logrotate'
1794--- debian/nova-api-ec2.logrotate 2012-02-24 10:08:10 +0000
1795+++ debian/nova-api-ec2.logrotate 2012-12-18 13:07:55 +0000
1796@@ -1,4 +1,7 @@
1797 /var/log/nova/nova-api-ec2.log {
1798 daily
1799 missingok
1800+ compress
1801+ delaycompress
1802+ notifempty
1803 }
1804
1805=== modified file 'debian/nova-api-metadata.logrotate'
1806--- debian/nova-api-metadata.logrotate 2012-02-24 10:08:10 +0000
1807+++ debian/nova-api-metadata.logrotate 2012-12-18 13:07:55 +0000
1808@@ -1,4 +1,7 @@
1809 /var/log/nova/nova-api-metadata.log {
1810 daily
1811 missingok
1812+ compress
1813+ delaycompress
1814+ notifempty
1815 }
1816
1817=== modified file 'debian/nova-api-os-compute.logrotate'
1818--- debian/nova-api-os-compute.logrotate 2012-02-24 10:08:10 +0000
1819+++ debian/nova-api-os-compute.logrotate 2012-12-18 13:07:55 +0000
1820@@ -1,4 +1,7 @@
1821 /var/log/nova/nova-api-os-compute.log {
1822 daily
1823 missingok
1824+ compress
1825+ delaycompress
1826+ notifempty
1827 }
1828
1829=== modified file 'debian/nova-api.logrotate'
1830--- debian/nova-api.logrotate 2011-02-18 09:36:22 +0000
1831+++ debian/nova-api.logrotate 2012-12-18 13:07:55 +0000
1832@@ -1,4 +1,7 @@
1833 /var/log/nova/nova-api.log {
1834 daily
1835 missingok
1836+ compress
1837+ delaycompress
1838+ notifempty
1839 }
1840
1841=== modified file 'debian/nova-cert.logrotate'
1842--- debian/nova-cert.logrotate 2012-01-26 10:29:13 +0000
1843+++ debian/nova-cert.logrotate 2012-12-18 13:07:55 +0000
1844@@ -1,4 +1,7 @@
1845 /var/log/nova/nova-cert.log {
1846 daily
1847 missingok
1848+ compress
1849+ delaycompress
1850+ notifempty
1851 }
1852
1853=== modified file 'debian/nova-common.nova-manage.logrotate'
1854--- debian/nova-common.nova-manage.logrotate 2012-04-02 11:17:33 +0000
1855+++ debian/nova-common.nova-manage.logrotate 2012-12-18 13:07:55 +0000
1856@@ -1,4 +1,7 @@
1857 /var/log/nova/nova-manage.log {
1858 daily
1859 missingok
1860+ compress
1861+ delaycompress
1862+ notifempty
1863 }
1864
1865=== modified file 'debian/nova-compute.logrotate'
1866--- debian/nova-compute.logrotate 2011-02-18 09:36:22 +0000
1867+++ debian/nova-compute.logrotate 2012-12-18 13:07:55 +0000
1868@@ -1,4 +1,7 @@
1869 /var/log/nova/nova-compute.log {
1870 daily
1871 missingok
1872+ compress
1873+ delaycompress
1874+ notifempty
1875 }
1876
1877=== modified file 'debian/nova-console.logrotate'
1878--- debian/nova-console.logrotate 2012-02-17 10:59:59 +0000
1879+++ debian/nova-console.logrotate 2012-12-18 13:07:55 +0000
1880@@ -2,4 +2,7 @@
1881 daily
1882 copytruncate
1883 missingok
1884+ compress
1885+ delaycompress
1886+ notifempty
1887 }
1888
1889=== modified file 'debian/nova-consoleauth.logrotate'
1890--- debian/nova-consoleauth.logrotate 2012-03-20 11:06:11 +0000
1891+++ debian/nova-consoleauth.logrotate 2012-12-18 13:07:55 +0000
1892@@ -2,4 +2,7 @@
1893 daily
1894 copytruncate
1895 missingok
1896+ compress
1897+ delaycompress
1898+ notifempty
1899 }
1900
1901=== modified file 'debian/nova-network.logrotate'
1902--- debian/nova-network.logrotate 2011-02-18 09:36:22 +0000
1903+++ debian/nova-network.logrotate 2012-12-18 13:07:55 +0000
1904@@ -1,4 +1,7 @@
1905 /var/log/nova/nova-network.log {
1906 daily
1907 missingok
1908+ compress
1909+ delaycompress
1910+ notifempty
1911 }
1912
1913=== modified file 'debian/nova-network.nova-dhcpbridge.logrotate'
1914--- debian/nova-network.nova-dhcpbridge.logrotate 2012-04-02 11:17:33 +0000
1915+++ debian/nova-network.nova-dhcpbridge.logrotate 2012-12-18 13:07:55 +0000
1916@@ -1,4 +1,7 @@
1917 /var/log/nova/nova-dhcpbridge.log {
1918 daily
1919 missingok
1920+ compress
1921+ delaycompress
1922+ notifempty
1923 }
1924
1925=== modified file 'debian/nova-objectstore.logrotate'
1926--- debian/nova-objectstore.logrotate 2012-01-13 09:51:10 +0000
1927+++ debian/nova-objectstore.logrotate 2012-12-18 13:07:55 +0000
1928@@ -4,4 +4,7 @@
1929 postrotate
1930 restart nova-objectstore
1931 endscript
1932+ compress
1933+ delaycompress
1934+ notifempty
1935 }
1936
1937=== modified file 'debian/nova-scheduler.logrotate'
1938--- debian/nova-scheduler.logrotate 2011-02-18 09:36:22 +0000
1939+++ debian/nova-scheduler.logrotate 2012-12-18 13:07:55 +0000
1940@@ -1,4 +1,7 @@
1941 /var/log/nova/nova-scheduler.log {
1942 daily
1943 missingok
1944+ compress
1945+ delaycompress
1946+ notifempty
1947 }
1948
1949=== modified file 'debian/nova-vncproxy.logrotate'
1950--- debian/nova-vncproxy.logrotate 2011-05-25 15:57:03 +0000
1951+++ debian/nova-vncproxy.logrotate 2012-12-18 13:07:55 +0000
1952@@ -1,4 +1,7 @@
1953 /var/log/nova/nova-vncproxy.log {
1954 daily
1955 missingok
1956+ compress
1957+ delaycompress
1958+ notifempty
1959 }
1960
1961=== modified file 'debian/nova-volume.logrotate'
1962--- debian/nova-volume.logrotate 2011-02-18 09:36:22 +0000
1963+++ debian/nova-volume.logrotate 2012-12-18 13:07:55 +0000
1964@@ -1,4 +1,7 @@
1965 /var/log/nova/nova-volume.log {
1966 daily
1967 missingok
1968+ compress
1969+ delaycompress
1970+ notifempty
1971 }
1972
1973=== modified file 'debian/nova-xvpvncproxy.logrotate'
1974--- debian/nova-xvpvncproxy.logrotate 2012-03-02 11:04:04 +0000
1975+++ debian/nova-xvpvncproxy.logrotate 2012-12-18 13:07:55 +0000
1976@@ -1,4 +1,7 @@
1977 /var/log/nova/nova-vncproxy.log {
1978 daily
1979 missingok
1980-}
1981\ No newline at end of file
1982+ compress
1983+ delaycompress
1984+ notifempty
1985+}
1986
1987=== modified file 'nova.egg-info/PKG-INFO'
1988--- nova.egg-info/PKG-INFO 2012-08-27 14:50:40 +0000
1989+++ nova.egg-info/PKG-INFO 2012-12-18 13:07:55 +0000
1990@@ -1,6 +1,6 @@
1991 Metadata-Version: 1.0
1992 Name: nova
1993-Version: 2012.1.3
1994+Version: 2012.1.4
1995 Summary: cloud computing fabric controller
1996 Home-page: http://www.openstack.org/
1997 Author: OpenStack
1998
1999=== modified file 'nova.egg-info/SOURCES.txt'
2000--- nova.egg-info/SOURCES.txt 2012-08-27 14:50:40 +0000
2001+++ nova.egg-info/SOURCES.txt 2012-12-18 13:07:55 +0000
2002@@ -1,6 +1,3 @@
2003-.gitignore
2004-.gitreview
2005-.mailmap
2006 Authors
2007 ChangeLog
2008 HACKING.rst
2009
2010=== modified file 'nova/api/openstack/compute/contrib/flavorextradata.py'
2011--- nova/api/openstack/compute/contrib/flavorextradata.py 2012-03-12 12:09:45 +0000
2012+++ nova/api/openstack/compute/contrib/flavorextradata.py 2012-12-18 13:07:55 +0000
2013@@ -37,7 +37,7 @@
2014 class FlavorextradataController(wsgi.Controller):
2015 def _get_flavor_refs(self):
2016 """Return a dictionary mapping flavorid to flavor_ref."""
2017- flavor_refs = instance_types.get_all_types(True)
2018+ flavor_refs = instance_types.get_all_types()
2019 rval = {}
2020 for name, obj in flavor_refs.iteritems():
2021 rval[obj['flavorid']] = obj
2022
2023=== modified file 'nova/api/openstack/compute/contrib/simple_tenant_usage.py'
2024--- nova/api/openstack/compute/contrib/simple_tenant_usage.py 2012-03-09 13:07:19 +0000
2025+++ nova/api/openstack/compute/contrib/simple_tenant_usage.py 2012-12-18 13:07:55 +0000
2026@@ -24,6 +24,7 @@
2027 from nova.compute import api
2028 from nova import exception
2029 from nova import flags
2030+from nova import utils
2031
2032
2033 FLAGS = flags.FLAGS
2034@@ -217,6 +218,9 @@
2035 authorize_list(context)
2036
2037 (period_start, period_stop, detailed) = self._get_datetime_range(req)
2038+ now = utils.utcnow()
2039+ if period_stop > now:
2040+ period_stop = now
2041 usages = self._tenant_usages_for_period(context,
2042 period_start,
2043 period_stop,
2044@@ -232,6 +236,9 @@
2045 authorize_show(context, {'project_id': tenant_id})
2046
2047 (period_start, period_stop, ignore) = self._get_datetime_range(req)
2048+ now = utils.utcnow()
2049+ if period_stop > now:
2050+ period_stop = now
2051 usage = self._tenant_usages_for_period(context,
2052 period_start,
2053 period_stop,
2054
2055=== modified file 'nova/compute/api.py'
2056--- nova/compute/api.py 2012-08-24 02:09:33 +0000
2057+++ nova/compute/api.py 2012-12-18 13:07:55 +0000
2058@@ -166,6 +166,7 @@
2059
2060 self.network_api = network_api or network.API()
2061 self.volume_api = volume_api or volume.API()
2062+ self.sgh = utils.import_object(FLAGS.security_group_handler)
2063 super(API, self).__init__(**kwargs)
2064
2065 def _check_injected_file_quota(self, context, injected_files):
2066@@ -708,6 +709,7 @@
2067 'user_id': context.user_id,
2068 'project_id': context.project_id}
2069 self.db.security_group_create(context, values)
2070+ self.sgh.trigger_security_group_create_refresh(context, values)
2071
2072 def trigger_security_group_rules_refresh(self, context, security_group_id):
2073 """Called when a rule is added to or removed from a security_group."""
2074
2075=== modified file 'nova/db/sqlalchemy/api.py'
2076--- nova/db/sqlalchemy/api.py 2012-08-27 14:50:40 +0000
2077+++ nova/db/sqlalchemy/api.py 2012-12-18 13:07:55 +0000
2078@@ -1047,7 +1047,7 @@
2079 @require_context
2080 def fixed_ip_get_by_address(context, address, session=None):
2081 result = model_query(context, models.FixedIp, session=session,
2082- read_deleted="yes").\
2083+ read_deleted=context.read_deleted).\
2084 filter_by(address=address).\
2085 first()
2086 if not result:
2087
2088=== modified file 'nova/manager.py'
2089--- nova/manager.py 2012-02-17 10:59:59 +0000
2090+++ nova/manager.py 2012-12-18 13:07:55 +0000
2091@@ -53,6 +53,8 @@
2092
2093 """
2094
2095+import eventlet
2096+
2097 from nova.db import base
2098 from nova import flags
2099 from nova import log as logging
2100@@ -153,6 +155,9 @@
2101
2102 try:
2103 task(self, context)
2104+ # NOTE(tiantian): After finished a task, allow manager to
2105+ # do other work (report_state, processing AMPQ request etc.)
2106+ eventlet.sleep(0)
2107 except Exception as e:
2108 if raise_on_error:
2109 raise
2110
2111=== modified file 'nova/network/linux_net.py'
2112--- nova/network/linux_net.py 2012-08-24 02:09:33 +0000
2113+++ nova/network/linux_net.py 2012-12-18 13:07:55 +0000
2114@@ -627,6 +627,7 @@
2115 default_gw_vif[instance_id] = vifs[0]['id']
2116
2117 for datum in data:
2118+ instance_id = datum['instance_id']
2119 if instance_id in default_gw_vif:
2120 # we don't want default gateway for this fixed ip
2121 if default_gw_vif[instance_id] != datum['vif_id']:
2122
2123=== modified file 'nova/network/manager.py'
2124--- nova/network/manager.py 2012-08-27 14:50:40 +0000
2125+++ nova/network/manager.py 2012-12-18 13:07:55 +0000
2126@@ -923,8 +923,7 @@
2127 context=read_deleted_context)
2128 # deallocate fixed ips
2129 for fixed_ip in fixed_ips:
2130- self.deallocate_fixed_ip(read_deleted_context, fixed_ip['address'],
2131- **kwargs)
2132+ self.deallocate_fixed_ip(context, fixed_ip['address'], **kwargs)
2133
2134 # deallocate vifs (mac addresses)
2135 self.db.virtual_interface_delete_by_instance(read_deleted_context,
2136
2137=== modified file 'nova/tests/api/openstack/compute/contrib/test_simple_tenant_usage.py'
2138--- nova/tests/api/openstack/compute/contrib/test_simple_tenant_usage.py 2012-06-05 09:50:59 +0000
2139+++ nova/tests/api/openstack/compute/contrib/test_simple_tenant_usage.py 2012-12-18 13:07:55 +0000
2140@@ -28,6 +28,7 @@
2141 from nova import context
2142 from nova import flags
2143 from nova import test
2144+from nova import utils
2145 from nova.tests.api.openstack import fakes
2146
2147
2148@@ -40,8 +41,9 @@
2149 EPHEMERAL_GB = 20
2150 MEMORY_MB = 1024
2151 VCPUS = 2
2152-STOP = datetime.datetime.utcnow()
2153-START = STOP - datetime.timedelta(hours=HOURS)
2154+NOW = utils.utcnow()
2155+START = NOW - datetime.timedelta(hours=HOURS)
2156+STOP = NOW
2157
2158
2159 def fake_instance_type_get(self, context, instance_type_id):
2160@@ -91,10 +93,10 @@
2161 'faketenant_1',
2162 is_admin=False)
2163
2164- def test_verify_index(self):
2165+ def _test_verify_index(self, start, stop):
2166 req = webob.Request.blank(
2167 '/v2/faketenant_0/os-simple-tenant-usage?start=%s&end=%s' %
2168- (START.isoformat(), STOP.isoformat()))
2169+ (start.isoformat(), stop.isoformat()))
2170 req.method = "GET"
2171 req.headers["content-type"] = "application/json"
2172
2173@@ -115,6 +117,20 @@
2174 SERVERS * VCPUS * HOURS)
2175 self.assertFalse(usages[i].get('server_usages'))
2176
2177+ def test_verify_index(self):
2178+ self._test_verify_index(START, STOP)
2179+
2180+ def test_verify_index_future_end_time(self):
2181+ future = NOW + datetime.timedelta(hours=HOURS)
2182+ self._test_verify_index(START, future)
2183+
2184+ def test_verify_show(self):
2185+ self._test_verify_show(START, STOP)
2186+
2187+ def test_verify_show_future_end_time(self):
2188+ future = NOW + datetime.timedelta(hours=HOURS)
2189+ self._test_verify_show(START, future)
2190+
2191 def test_verify_detailed_index(self):
2192 req = webob.Request.blank(
2193 '/v2/faketenant_0/os-simple-tenant-usage?'
2194@@ -133,11 +149,11 @@
2195 for j in xrange(SERVERS):
2196 self.assertEqual(int(servers[j]['hours']), HOURS)
2197
2198- def test_verify_show(self):
2199+ def _test_verify_show(self, start, stop):
2200 req = webob.Request.blank(
2201 '/v2/faketenant_0/os-simple-tenant-usage/'
2202 'faketenant_0?start=%s&end=%s' %
2203- (START.isoformat(), STOP.isoformat()))
2204+ (start.isoformat(), stop.isoformat()))
2205 req.method = "GET"
2206 req.headers["content-type"] = "application/json"
2207
2208
2209=== modified file 'nova/tests/fakelibvirt.py'
2210--- nova/tests/fakelibvirt.py 2012-03-12 12:09:45 +0000
2211+++ nova/tests/fakelibvirt.py 2012-12-18 13:07:55 +0000
2212@@ -73,6 +73,8 @@
2213 VIR_DOMAIN_SHUTOFF = 5
2214 VIR_DOMAIN_CRASHED = 6
2215
2216+VIR_DOMAIN_XML_SECURE = 1
2217+
2218 VIR_CPU_COMPARE_ERROR = -1
2219 VIR_CPU_COMPARE_INCOMPATIBLE = 0
2220 VIR_CPU_COMPARE_IDENTICAL = 1
2221
2222=== modified file 'nova/tests/network/test_manager.py'
2223--- nova/tests/network/test_manager.py 2012-08-27 14:50:40 +0000
2224+++ nova/tests/network/test_manager.py 2012-12-18 13:07:55 +0000
2225@@ -909,6 +909,41 @@
2226 fixed = db.fixed_ip_get_by_address(elevated, fix_addr)
2227 self.assertFalse(fixed['allocated'])
2228
2229+ def test_deallocate_fixed_deleted(self):
2230+ """Verify doesn't deallocate deleted fixed_ip from deleted network"""
2231+
2232+ def network_get(_context, network_id):
2233+ return networks[network_id]
2234+
2235+ def teardown_network_on_host(_context, network):
2236+ if network['id'] == 0:
2237+ raise Exception('Correct network/fixed_ip assertion')
2238+
2239+ self.stubs.Set(db, 'network_get', network_get)
2240+ self.stubs.Set(self.network, '_teardown_network_on_host',
2241+ teardown_network_on_host)
2242+
2243+ context1 = context.RequestContext('user', 'project1')
2244+
2245+ instance = db.instance_create(context1,
2246+ {'project_id': 'project1'})
2247+
2248+ elevated = context1.elevated()
2249+ fix_addr = db.fixed_ip_associate_pool(elevated, 1, instance['id'])
2250+ db.fixed_ip_update(elevated, fix_addr, {'deleted': 1})
2251+ elevated.read_deleted = 'yes'
2252+ delfixed = db.fixed_ip_get_by_address(elevated, fix_addr)
2253+ values = {'address': fix_addr,
2254+ 'network_id': 0,
2255+ 'instance_id': delfixed['instance_id']}
2256+ db.fixed_ip_create(elevated, values)
2257+ elevated.read_deleted = 'no'
2258+ newfixed = db.fixed_ip_get_by_address(elevated, fix_addr)
2259+ elevated.read_deleted = 'yes'
2260+
2261+ deallocate = self.network.deallocate_fixed_ip
2262+ self.assertRaises(Exception, deallocate, context1, fix_addr, 'fake')
2263+
2264 def test_deallocate_fixed_no_vif(self):
2265 """Verify that deallocate doesn't raise when no vif is returned.
2266
2267
2268=== modified file 'nova/tests/test_db_api.py'
2269--- nova/tests/test_db_api.py 2012-06-05 09:50:59 +0000
2270+++ nova/tests/test_db_api.py 2012-12-18 13:07:55 +0000
2271@@ -151,6 +151,8 @@
2272 db.network_delete_safe, ctxt, network['id'])
2273 db.fixed_ip_update(ctxt, address2, {'allocated': False})
2274 network = db.network_delete_safe(ctxt, network['id'])
2275+ self.assertRaises(exception.FixedIpNotFoundForAddress,
2276+ db.fixed_ip_get_by_address, ctxt, address1)
2277 ctxt = ctxt.elevated(read_deleted='yes')
2278 fixed_ip = db.fixed_ip_get_by_address(ctxt, address1)
2279 self.assertTrue(fixed_ip['deleted'])
2280
2281=== modified file 'nova/tests/test_libvirt.py'
2282--- nova/tests/test_libvirt.py 2012-08-27 14:50:40 +0000
2283+++ nova/tests/test_libvirt.py 2012-12-18 13:07:55 +0000
2284@@ -1856,11 +1856,23 @@
2285 def test_do_refresh_security_group_rules(self):
2286 instance_ref = self._create_instance_ref()
2287 self.mox.StubOutWithMock(self.fw,
2288+ 'instance_rules')
2289+ self.mox.StubOutWithMock(self.fw,
2290 'add_filters_for_instance',
2291 use_mock_anything=True)
2292+
2293+ self.fw.instance_rules(instance_ref,
2294+ mox.IgnoreArg()).AndReturn((None, None))
2295+ self.fw.add_filters_for_instance(instance_ref, mox.IgnoreArg(),
2296+ mox.IgnoreArg())
2297+ self.fw.instance_rules(instance_ref,
2298+ mox.IgnoreArg()).AndReturn((None, None))
2299+ self.fw.add_filters_for_instance(instance_ref, mox.IgnoreArg(),
2300+ mox.IgnoreArg())
2301+ self.mox.ReplayAll()
2302+
2303 self.fw.prepare_instance_filter(instance_ref, mox.IgnoreArg())
2304 self.fw.instances[instance_ref['id']] = instance_ref
2305- self.mox.ReplayAll()
2306 self.fw.do_refresh_security_group_rules("fake")
2307
2308 @test.skip_if(missing_libvirt(), "Test requires libvirt")
2309
2310=== modified file 'nova/tests/test_linux_net.py'
2311--- nova/tests/test_linux_net.py 2012-03-20 11:06:11 +0000
2312+++ nova/tests/test_linux_net.py 2012-12-18 13:07:55 +0000
2313@@ -302,7 +302,7 @@
2314 self.assertEquals(actual_hosts, expected)
2315
2316 def test_get_dhcp_opts_for_nw00(self):
2317- expected_opts = 'NW-0,3\nNW-3,3\nNW-4,3'
2318+ expected_opts = 'NW-3,3\nNW-4,3'
2319 actual_opts = self.driver.get_dhcp_opts(self.context, networks[0])
2320
2321 self.assertEquals(actual_opts, expected_opts)
2322
2323=== modified file 'nova/utils.py'
2324--- nova/utils.py 2012-08-24 02:09:33 +0000
2325+++ nova/utils.py 2012-12-18 13:07:55 +0000
2326@@ -21,6 +21,7 @@
2327
2328 import contextlib
2329 import datetime
2330+import errno
2331 import functools
2332 import hashlib
2333 import inspect
2334@@ -1000,11 +1001,12 @@
2335 {'filename': filename, 'pid': pid})
2336 try:
2337 os.kill(int(pid), 0)
2338- except OSError, e:
2339- # PID wasn't found
2340- delete_if_exists(os.path.join(FLAGS.lock_path, filename))
2341- LOG.debug(_('Cleaned sentinel %(filename)s for pid %(pid)s') %
2342- {'filename': filename, 'pid': pid})
2343+ except OSError as e:
2344+ if e.errno == errno.ESRCH:
2345+ # PID wasn't found
2346+ delete_if_exists(os.path.join(FLAGS.lock_path, filename))
2347+ LOG.debug(_('Cleaned sentinel %(filename)s for pid %(pid)s') %
2348+ {'filename': filename, 'pid': pid})
2349
2350 # cleanup lock files
2351 for filename in files:
2352@@ -1013,8 +1015,8 @@
2353 continue
2354 try:
2355 stat_info = os.stat(os.path.join(FLAGS.lock_path, filename))
2356- except OSError as (errno, strerror):
2357- if errno == 2: # doesn't exist
2358+ except OSError as e:
2359+ if e.errno == errno.ENOENT:
2360 continue
2361 else:
2362 raise
2363@@ -1033,8 +1035,8 @@
2364
2365 try:
2366 os.unlink(pathname)
2367- except OSError as (errno, strerror):
2368- if errno == 2: # doesn't exist
2369+ except OSError as e:
2370+ if e.errno == errno.ENOENT:
2371 return
2372 else:
2373 raise
2374
2375=== modified file 'nova/version.py'
2376--- nova/version.py 2012-08-24 02:09:33 +0000
2377+++ nova/version.py 2012-12-18 13:07:55 +0000
2378@@ -14,7 +14,7 @@
2379 # License for the specific language governing permissions and limitations
2380 # under the License.
2381
2382-NOVA_VERSION = ['2012', '1', '3']
2383+NOVA_VERSION = ['2012', '1', '4']
2384 YEAR, COUNT, REVISION = NOVA_VERSION
2385 FINAL = False # This becomes true at Release Candidate time
2386
2387
2388=== modified file 'nova/virt/disk/api.py'
2389--- nova/virt/disk/api.py 2012-08-24 02:09:33 +0000
2390+++ nova/virt/disk/api.py 2012-12-18 13:07:55 +0000
2391@@ -176,6 +176,7 @@
2392 @staticmethod
2393 def _device_for_path(path):
2394 device = None
2395+ path = os.path.realpath(path)
2396 with open("/proc/mounts", 'r') as ifp:
2397 for line in ifp:
2398 fields = line.split()
2399
2400=== modified file 'nova/virt/firewall.py'
2401--- nova/virt/firewall.py 2012-07-02 19:54:17 +0000
2402+++ nova/virt/firewall.py 2012-12-18 13:07:55 +0000
2403@@ -133,7 +133,8 @@
2404 def prepare_instance_filter(self, instance, network_info):
2405 self.instances[instance['id']] = instance
2406 self.network_infos[instance['id']] = network_info
2407- self.add_filters_for_instance(instance)
2408+ ipv4_rules, ipv6_rules = self.instance_rules(instance, network_info)
2409+ self.add_filters_for_instance(instance, ipv4_rules, ipv6_rules)
2410 LOG.debug(_('Filters added to instance %s'), instance['uuid'])
2411 self.refresh_provider_fw_rules()
2412 LOG.debug(_('Provider Firewall Rules refreshed'))
2413@@ -166,7 +167,8 @@
2414 for rule in ipv6_rules:
2415 self.iptables.ipv6['filter'].add_rule(chain_name, rule)
2416
2417- def add_filters_for_instance(self, instance):
2418+ def add_filters_for_instance(self, instance, inst_ipv4_rules,
2419+ inst_ipv6_rules):
2420 network_info = self.network_infos[instance['id']]
2421 chain_name = self._instance_chain_name(instance)
2422 if FLAGS.use_ipv6:
2423@@ -175,8 +177,7 @@
2424 ipv4_rules, ipv6_rules = self._filters_for_instance(chain_name,
2425 network_info)
2426 self._add_filters('local', ipv4_rules, ipv6_rules)
2427- ipv4_rules, ipv6_rules = self.instance_rules(instance, network_info)
2428- self._add_filters(chain_name, ipv4_rules, ipv6_rules)
2429+ self._add_filters(chain_name, inst_ipv4_rules, inst_ipv6_rules)
2430
2431 def remove_filters_for_instance(self, instance):
2432 chain_name = self._instance_chain_name(instance)
2433@@ -361,10 +362,17 @@
2434 self.iptables.apply()
2435
2436 @utils.synchronized('iptables', external=True)
2437+ def _inner_do_refresh_rules(self, instance, ipv4_rules,
2438+ ipv6_rules):
2439+ self.remove_filters_for_instance(instance)
2440+ self.add_filters_for_instance(instance, ipv4_rules, ipv6_rules)
2441+
2442 def do_refresh_security_group_rules(self, security_group):
2443 for instance in self.instances.values():
2444- self.remove_filters_for_instance(instance)
2445- self.add_filters_for_instance(instance)
2446+ network_info = self.network_infos[instance['id']]
2447+ ipv4_rules, ipv6_rules = self.instance_rules(instance,
2448+ network_info)
2449+ self._inner_do_refresh_rules(instance, ipv4_rules, ipv6_rules)
2450
2451 def refresh_provider_fw_rules(self):
2452 """See :class:`FirewallDriver` docs."""
2453
2454=== modified file 'nova/virt/libvirt/connection.py'
2455--- nova/virt/libvirt/connection.py 2012-08-27 14:50:40 +0000
2456+++ nova/virt/libvirt/connection.py 2012-12-18 13:07:55 +0000
2457@@ -549,6 +549,13 @@
2458 connection_info,
2459 mount_device)
2460
2461+ # TODO(danms) once libvirt has support for LXC hotplug,
2462+ # replace this re-define with use of the
2463+ # VIR_DOMAIN_AFFECT_LIVE & VIR_DOMAIN_AFFECT_CONFIG flags with
2464+ # attachDevice()
2465+ domxml = virt_dom.XMLDesc(libvirt.VIR_DOMAIN_XML_SECURE)
2466+ self._conn.defineXML(domxml)
2467+
2468 @staticmethod
2469 def _get_disk_xml(xml, device):
2470 """Returns the xml for the disk mounted at device"""
2471@@ -583,6 +590,13 @@
2472 connection_info,
2473 mount_device)
2474
2475+ # TODO(danms) once libvirt has support for LXC hotplug,
2476+ # replace this re-define with use of the
2477+ # VIR_DOMAIN_AFFECT_LIVE & VIR_DOMAIN_AFFECT_CONFIG flags with
2478+ # detachDevice()
2479+ domxml = virt_dom.XMLDesc(libvirt.VIR_DOMAIN_XML_SECURE)
2480+ self._conn.defineXML(domxml)
2481+
2482 @exception.wrap_exception()
2483 def _attach_lxc_volume(self, xml, virt_dom, instance_name):
2484 LOG.info(_('attaching LXC block device'))
2485@@ -681,8 +695,7 @@
2486 else:
2487 metadata['disk_format'] = image_format
2488
2489- if 'container_format' in base:
2490- metadata['container_format'] = base['container_format']
2491+ metadata['container_format'] = base.get('container_format', 'bare')
2492
2493 # Find the disk
2494 xml_desc = virt_dom.XMLDesc(0)
2495@@ -928,8 +941,8 @@
2496 LOG.info(_("Automatically confirming migration %d"), migration.id)
2497 self.compute_api.confirm_resize(ctxt, migration.instance_uuid)
2498
2499- def _enable_hairpin(self, instance):
2500- interfaces = self.get_interfaces(instance['name'])
2501+ def _enable_hairpin(self, xml):
2502+ interfaces = self.get_interfaces(xml)
2503 for interface in interfaces:
2504 utils.execute('tee',
2505 '/sys/class/net/%s/brport/hairpin_mode' % interface,
2506@@ -951,7 +964,6 @@
2507
2508 self._create_new_domain(xml)
2509 LOG.debug(_("Instance is running"), instance=instance)
2510- self._enable_hairpin(instance)
2511 self.firewall_driver.apply_instance_filter(instance, network_info)
2512
2513 def _wait_for_boot():
2514@@ -1619,6 +1631,7 @@
2515 else:
2516 # createXML call creates a transient domain
2517 domain = self._conn.createXML(xml, launch_flags)
2518+ self._enable_hairpin(domain.XMLDesc(0))
2519
2520 return domain
2521
2522@@ -1675,14 +1688,12 @@
2523
2524 return disks
2525
2526- def get_interfaces(self, instance_name):
2527+ def get_interfaces(self, xml):
2528 """
2529- Note that this function takes an instance name.
2530+ Note that this function takes an instance domain xml.
2531
2532 Returns a list of all network interfaces for this instance.
2533 """
2534- domain = self._lookup_by_name(instance_name)
2535- xml = domain.XMLDesc(0)
2536 doc = None
2537
2538 try:
2539@@ -1765,6 +1776,8 @@
2540 total += 1
2541 else:
2542 total += len(vcpus[1])
2543+ # NOTE(gtt116): give change to do other task.
2544+ greenthread.sleep(0)
2545 return total
2546
2547 def get_memory_mb_used(self):
2548@@ -2325,7 +2338,8 @@
2549 except exception.InstanceNotFound:
2550 # Instance was deleted during the check so ignore it
2551 pass
2552-
2553+ # NOTE(gtt116): give change to do other task.
2554+ greenthread.sleep(0)
2555 # Disk available least size
2556 available_least_size = dk_sz_gb * (1024 ** 3) - instances_sz
2557 return (available_least_size / 1024 / 1024 / 1024)
2558
2559=== modified file 'nova/virt/libvirt/volume.py'
2560--- nova/virt/libvirt/volume.py 2012-06-05 09:50:59 +0000
2561+++ nova/virt/libvirt/volume.py 2012-12-18 13:07:55 +0000
2562@@ -112,10 +112,11 @@
2563 (iscsi_command, out, err))
2564 return (out, err)
2565
2566- def _iscsiadm_update(self, iscsi_properties, property_key, property_value):
2567+ def _iscsiadm_update(self, iscsi_properties, property_key, property_value,
2568+ **kwargs):
2569 iscsi_command = ('--op', 'update', '-n', property_key,
2570 '-v', property_value)
2571- return self._run_iscsiadm(iscsi_properties, iscsi_command)
2572+ return self._run_iscsiadm(iscsi_properties, iscsi_command, **kwargs)
2573
2574 @utils.synchronized('connect_volume')
2575 def connect_volume(self, connection_info, mount_device):
2576@@ -201,7 +202,8 @@
2577 devices = self.connection.get_all_block_devices()
2578 devices = [dev for dev in devices if dev.startswith(device_prefix)]
2579 if not devices:
2580- self._iscsiadm_update(iscsi_properties, "node.startup", "manual")
2581+ self._iscsiadm_update(iscsi_properties, "node.startup", "manual",
2582+ check_exit_code=[0, 255])
2583 self._run_iscsiadm(iscsi_properties, ("--logout",),
2584 check_exit_code=[0, 255])
2585 self._run_iscsiadm(iscsi_properties, ('--op', 'delete'),

Subscribers

People subscribed via source and target branches

to all changes: