Merge ~zioproto/ubuntu/+source/nova:stable/mitaka into ~ubuntu-server-dev/ubuntu/+source/nova:stable/mitaka

Proposed by Saverio Proto on 2017-03-01
Status: Needs review
Proposed branch: ~zioproto/ubuntu/+source/nova:stable/mitaka
Merge into: ~ubuntu-server-dev/ubuntu/+source/nova:stable/mitaka
Diff against target: 4836 lines (+927/-616)
53 files modified
AUTHORS (+3/-0)
ChangeLog (+422/-379)
PKG-INFO (+1/-1)
debian/changelog (+6/-0)
devstack/tempest-dsvm-cells-rc (+3/-0)
doc/source/development.environment.rst (+4/-0)
nova.egg-info/PKG-INFO (+1/-1)
nova.egg-info/SOURCES.txt (+2/-0)
nova.egg-info/pbr.json (+1/-1)
nova.egg-info/requires.txt (+3/-1)
nova/api/openstack/compute/legacy_v2/contrib/volumes.py (+16/-1)
nova/api/openstack/compute/schemas/block_device_mapping.py (+4/-2)
nova/api/openstack/compute/schemas/block_device_mapping_v1.py (+1/-1)
nova/api/openstack/compute/volumes.py (+17/-3)
nova/block_device.py (+7/-1)
nova/conductor/manager.py (+16/-4)
nova/db/sqlalchemy/api.py (+1/-0)
nova/locale/cs/LC_MESSAGES/nova-log-error.po (+2/-12)
nova/locale/cs/LC_MESSAGES/nova.po (+2/-10)
nova/locale/de/LC_MESSAGES/nova-log-error.po (+2/-8)
nova/locale/de/LC_MESSAGES/nova.po (+2/-10)
nova/locale/es/LC_MESSAGES/nova-log-error.po (+2/-8)
nova/locale/es/LC_MESSAGES/nova.po (+2/-10)
nova/locale/fr/LC_MESSAGES/nova-log-error.po (+2/-8)
nova/locale/fr/LC_MESSAGES/nova.po (+2/-10)
nova/locale/it/LC_MESSAGES/nova.po (+2/-10)
nova/locale/ja/LC_MESSAGES/nova.po (+2/-10)
nova/locale/ko_KR/LC_MESSAGES/nova-log-error.po (+18/-16)
nova/locale/ko_KR/LC_MESSAGES/nova-log-warning.po (+52/-4)
nova/locale/ko_KR/LC_MESSAGES/nova.po (+31/-12)
nova/locale/pt_BR/LC_MESSAGES/nova-log-error.po (+2/-14)
nova/locale/pt_BR/LC_MESSAGES/nova.po (+2/-11)
nova/locale/ru/LC_MESSAGES/nova.po (+2/-11)
nova/locale/tr_TR/LC_MESSAGES/nova-log-error.po (+3/-8)
nova/locale/tr_TR/LC_MESSAGES/nova.po (+2/-10)
nova/locale/zh_CN/LC_MESSAGES/nova-log-error.po (+2/-8)
nova/locale/zh_CN/LC_MESSAGES/nova.po (+2/-10)
nova/locale/zh_TW/LC_MESSAGES/nova.po (+2/-10)
nova/objects/pci_device.py (+1/-1)
nova/pci/utils.py (+1/-1)
nova/tests/unit/api/openstack/compute/test_block_device_mapping.py (+65/-0)
nova/tests/unit/api/openstack/compute/test_block_device_mapping_v1.py (+11/-1)
nova/tests/unit/api/openstack/compute/test_volumes.py (+38/-2)
nova/tests/unit/conductor/test_conductor.py (+50/-0)
nova/tests/unit/db/test_db_api.py (+4/-0)
nova/tests/unit/objects/test_pci_device.py (+10/-0)
nova/tests/unit/pci/test_utils.py (+5/-1)
nova/tests/unit/virt/libvirt/test_driver.py (+20/-0)
nova/virt/libvirt/driver.py (+8/-0)
nova/volume/encryptors/cryptsetup.py (+1/-1)
releasenotes/notes/bug-1662699-06203e7262e02aa6.yaml (+10/-0)
tools/test-setup.sh (+54/-0)
tox.ini (+3/-4)
Reviewer Review Type Date Requested Status
Corey Bryant 2017-03-01 Pending
Review via email: mp+318630@code.launchpad.net

Description of the Change

New upstream point release for OpenStack Mitaka to version 13.1.3

You need also to merge upstream and pristine tar branches

To post a comment you must log in.

Unmerged commits

36cb999... by Saverio Proto <email address hidden> on 2017-03-01

New upstream point release for OpenStack Mitaka

ad1b293... by Saverio Proto <email address hidden> on 2017-03-01

Merge tag '13.1.3' into stable/mitaka

Upstream version 13.1.3

edef115... by Saverio Proto <email address hidden> on 2017-03-01

Imported Upstream version 13.1.3

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1diff --git a/AUTHORS b/AUTHORS
2index 5589763..99b47d7 100644
3--- a/AUTHORS
4+++ b/AUTHORS
5@@ -298,6 +298,7 @@ Earle F. Philhower, III <earle.philhower.iii@hgst.com>
6 Ed Bak <ed.bak2@hp.com>
7 Ed Leafe <ed@leafe.com>
8 EdLeafe <ed@leafe.com>
9+Edan David <edand@mellanox.com>
10 Edgar Magana <emagana@gmail.com>
11 Eduardo Costa <eduardobmc@gmail.com>
12 Edward Hope-Morley <edward.hope-morley@canonical.com>
13@@ -960,6 +961,7 @@ Tom Cammann <tom.cammann@hp.com>
14 Tom Fifield <fifieldt@unimelb.edu.au>
15 Tom Fifield <tom@openstack.org>
16 Tom Hancock <tom.hancock@hp.com>
17+Tom Patzig <tom.patzig@sap.com>
18 Tomi Juvonen <tomi.juvonen@nokia.com>
19 Tomoe Sugihara <tomoe@midokura.com>
20 Tomofumi Hayashi <s1061123@gmail.com>
21@@ -1262,6 +1264,7 @@ zhiyanliu <lzy.dev@gmail.com>
22 zhiyanliu <zhiyanl@cn.ibm.com>
23 zhiyuan_cai <luckyvega.g@gmail.com>
24 zhoudongshu <zhoudshu@gmail.com>
25+zhufl <zhu.fanglei@zte.com.cn>
26 zte-hanrong <han.rong3@zte.com.cn>
27 Édouard Thuleau <edouard.thuleau@cloudwatt.com>
28 Édouard Thuleau <edouard.thuleau@orange.com>
29diff --git a/ChangeLog b/ChangeLog
30index 2a027cb..771fc00 100644
31--- a/ChangeLog
32+++ b/ChangeLog
33@@ -1,6 +1,25 @@
34 CHANGES
35 =======
36
37+13.1.3
38+------
39+
40+* Ignore deleted services in minimum version calculation
41+* Skip test_stamp_pattern in cells v1 job
42+* Prepare for using standard python tests
43+* Allow None for block_device_mapping_v2.boot_index
44+* Fix BDM JSON-Schema validation
45+* Use constraints for all tox environments
46+* Always use python2.7 for functional tests
47+* Imported Translations from Zanata
48+* :Add missing %s in print message
49+* Do not try to backport when db has older object version
50+* Catch DevicePathInUse in attach_volume
51+* Fix binary name used in the pci device online migration check
52+* Fix error status code on update-volume API
53+* Add error handling for delete-volume API
54+* refresh instances_path when shared storage used
55+
56 13.1.2
57 ------
58
59@@ -10,6 +29,7 @@ CHANGES
60 * claims: Do not assume image-meta is a dict
61 * Remove network information from IOVisor vif
62 * Archive instance-related rows when the parent instance is deleted
63+* Add missing slash to dir path
64 * Nova shelve creates duplicated images in cells
65 * compute: Skip driver detach calls for non local instances
66 * Default image.size to 0 when extracting v1 image attributes
67@@ -343,7 +363,7 @@ CHANGES
68 * Improve 'virt.firewall' conf options documentation
69 * config options: Centralise 'virt.firewall' options
70 * Improve 'virt.images' conf options documentation
71-* config options: Centralise 'virt.images' options
72+* config options: Centralise 'virt.images' options
73 * Update wrong comment
74 * Fix misuse of assertTrue in console and virt tests
75 * Failed migration shoudn't be reported as in progress
76@@ -373,7 +393,7 @@ CHANGES
77 * RT: Decrese usage for offloaded instances
78 * Allow saving empty pci_device_pools in ComputeNode object
79 * Add StableObjectJsonFixture and use it in our base test class
80-* nova-manage: Add hooks for running data-migration scripts
81+* nova-manage: Add hooks for running data-migration scripts
82 * always use pip constraints
83 * Update instance host in post live migration even when exception occurs
84 * Use imageutils from oslo.utils
85@@ -385,7 +405,7 @@ CHANGES
86 * Allocate UUID for compute node
87 * rpc.init() is being called twice per test
88 * Use instance hostname for Neutron DNS unit tests
89-* objects: Rename PciDevice _migrate_parent_addr method
90+* objects: Rename PciDevice _migrate_parent_addr method
91 * Use assertRaises() to check specific exception
92 * libvirt: make live_migration_uri flag dependent on virt_type
93 * Remove unused CONF imports
94@@ -596,7 +616,7 @@ CHANGES
95 * Fix misleading comment of pci_stats
96 * cleanup: remove python 2.6 compat assertNotIsInstance
97 * Add better help text to scheduler options (3)
98-* (lxc) Updated regex to ignore failing tests
99+* Updated regex to ignore failing tests
100 * Add better help text to scheduler options (2)
101 * Add better help text to scheduler options (1)
102 * Note in HypervisorSupportMatrix for Libvirt/LXC shutdown kernel bug
103@@ -1523,7 +1543,7 @@ CHANGES
104 * xenapi: Support extra tgz images that with only a single VHD
105 * Hyper-V: Fixes snapshoting inexistent VM issue
106 * Hyper-V: Adds RDPConsoleOps unit tests
107-* Rectify spelling mistake in nova
108+* Rectify spelling mistake in nova
109 * libvirt: Add a finish log
110 * Remove old unused baremetal rootwrap filters
111 * Relax restrictions on server name
112@@ -2581,7 +2601,7 @@ CHANGES
113 * libvirt: avoid call of listDefinedDomains when post live migration
114 * Remove unused db.aggregate_metadata_get_by_metadata_key() call
115 * Removed 'PYTHONHASHSEED=0' from tox.ini
116-* Changed logic in _compare_result api_samples_test_base
117+* Changed logic in _compare_result api_samples_test_base
118 * Convert bandwidth_usage related timestamp to UTC native datetime
119 * Drop use of 'oslo' namespace package
120
121@@ -2860,7 +2880,7 @@ CHANGES
122 * Neutron: simplify validate_networks
123 * Switch to newer cirros image in docs
124 * Fix common misspellings
125-* Scheduler: update doctring to use oslo_config
126+* Scheduler: update doctring to use oslo_config
127 * Skip 'id' attribute to be explicitly deleted in TestCase
128 * Remove unused class variables in extended_volumes
129 * libvirt: remove volume_drivers config param
130@@ -3676,7 +3696,7 @@ CHANGES
131 * Fixed incorrect initialization of availability zone tests
132 * Revert "initialize objects with context in block device"
133 * Fix wrong instructions for rebuilding API samples
134-* Performance: leverage dict comprehension in PEP-0274
135+* Performance: leverage dict comprehension in PEP-0274
136 * Sync with latest oslo-incubator
137 * initialize objects with context in VirtualInterface object tests
138 * initialize objects with context in Tag object tests
139@@ -3748,7 +3768,7 @@ CHANGES
140 * Add WarningsFixture to only emit DeprecationWarning once in a test run
141 * Maintain the creation order for vifs
142 * Update docstring for wrap_exception decorator
143-* Doc: Adds python-tox to Ubuntu dependencies
144+* Doc: Adds python-tox to Ubuntu dependencies
145 * Added hacking rule for assertTrue/False(A in B)
146 * ironic: use instance object in driver.py
147 * Add LibvirtGPFSVolumeDriver class
148@@ -4019,7 +4039,7 @@ CHANGES
149 * Assert order of DB index members
150 * Updated from global requirements
151 * object-ify flavors manager side of the RPC
152-* Add CPU pinning data to InstanceNUMACell object
153+* Add CPU pinning data to InstanceNUMACell object
154 * Enforce unique instance uuid in data model
155 * libvirt: Handle empty context on _hard_reboot
156 * Move admin_only_action_common out of v3 directory(cleanup)
157@@ -4645,7 +4665,7 @@ CHANGES
158 * Remove indexes that are prefix subsets of other indexes
159 * remove scary error message in tox
160 * Cleanup _convert_block_devices
161-* Enhance V2 disk_config extension Unit Test
162+* Enhance V2 disk_config extension Unit Test
163 * Add developer policy about contractual APIs
164 * Reserve 10 migrations for backports
165 * libvirt: Make sure volumes are well detected during block migration
166@@ -4905,7 +4925,7 @@ CHANGES
167 * Ironic: don't canonicalize extra_specs data
168 * VMware: add tests for image fetch/cache functions
169 * VMware: spawn refactor image fetch/cache
170-* Ironic: Fix direct use of flavor and instance module objects
171+* Ironic: Fix direct use of flavor and instance module objects
172 * Ironic driver fetches extra_specs when needed
173 * Maint: neutronclient exceptions from a more appropriate module
174 * Check requirements.txt files for missing (used) requirements
175@@ -5657,7 +5677,7 @@ CHANGES
176 * VMware: consolidate common constants into one file
177 * Require posix_ipc for lockutils
178 * hyperv: make method signatures match parent class
179-* Format eph disk with specified format in libvirt
180+* Format eph disk with specified format in libvirt
181 * Resolve import dependency in consoleauth service
182 * Add 'anon' kwarg to FakeDbBlockDeviceDict class
183 * Make cells rpc bdm_update_or_create_at_top use BDM objects
184@@ -6948,7 +6968,7 @@ CHANGES
185 * Make libvirt use Flavor object instead of using VirtAPI
186 * Fix instance metadata tracking during resets
187 * Make delete_instance_metadata() use objects
188-* Break out the meat of the object hydration process
189+* Break out the meat of the object hydration process
190 * V2 Pause: treat case when driver does not implement the operation
191 * VMware: fix bug for exceptions thrown in _wait_for_task
192 * Nova Docker: Metadata service doesn't work
193@@ -7330,7 +7350,7 @@ CHANGES
194 * Fix interprocess locks when running unit-tests
195 * Cleanup object usage in the delete path
196 * Change RPC post_live_migration_at_destination from call to cast
197-* Pass rbd_user id and conf path as part of RBD URI for qemu-img
198+* Pass rbd_user id and conf path as part of RBD URI for qemu-img
199 * Allow some instance polling periodic tasks to hit db slave
200 * Sync timeutils from oslo-incubator
201 * Catch NotImplementedError for vnc in the api
202@@ -8226,7 +8246,7 @@ CHANGES
203 * Fixes misuse of assertTrue in virt test scripts
204 * Add missing notifications for rescue/unrescue
205 * Libvirt: volume driver set correct device type
206-* Make v3 API versions extensions core
207+* Make v3 API versions extensions core
208 * Make Instance.save() log missing save handlers
209 * Don't fail if volume has no image metadata
210 * Get image properties instead of the whole image
211@@ -9188,7 +9208,7 @@ CHANGES
212 * Port multinic extension to v3 API Part 1
213 * Port hypervisor API into v3 part2
214 * port Instance_usage_audit_log API into v3 part2
215-* port Instance_usage_audit_log API into v3 part1
216+* port Instance_usage_audit_log API into v3 part1
217 * Fix metadata for create in child cell
218 * update xen/vmware virt drivers not to hit db directly
219 * Reduce nesting in instance_usage_audit
220@@ -9223,7 +9243,7 @@ CHANGES
221 * Add tests for `db.console_pool_*()` functions
222 * Fix binding of SQL query params in DB utils
223 * Make db.fakes stub out API not sqlalchemy
224-* Reassign MAC address for vm when resize_revert
225+* Reassign MAC address for vm when resize_revert
226 * test_xmlutil.py covers more code in xmlutil.py
227 * Handle UnexpectedTaskState and InstanceNotFound exceptions
228 * Port quota classes extension to v3 API Part 2
229@@ -9366,7 +9386,7 @@ CHANGES
230 * Added unit tests for vmware cluster driver
231 * Adds expected_errors decorator for API v3
232 * Sync oslo-incubator gettextutils
233-* port Simple_tenant_usage API into v3 part1
234+* port Simple_tenant_usage API into v3 part1
235 * Remove db session hack from conductor's vol_usage_update()
236 * Converts scheduler.utils.build_request_spec return to json primitive
237 * Revert "Delegate authentication to quantumclient"
238@@ -10425,7 +10445,7 @@ CHANGES
239 * Fix instance directory path for lxc
240 * Add snapshot methods to fakes.py
241 * PowerVMDiskAdapter detach/cleanup refactoring
242-* Make ComputeTestCase.test_state_revert faster
243+* Make ComputeTestCase.test_state_revert faster
244 * Add an extension to show image size
245 * libvirt: Use uuid for instance directory name
246 * Support running periodic tasks immediately at startup
247@@ -10451,7 +10471,7 @@ CHANGES
248 * Ensure rpc result is primitive types
249 * Change all instances of the non-word "inteface" to "interface"
250 * Remove unused nova.db.api:network_get_by_bridge
251-* Fix a typo in two comments. networksa -> networks
252+* Fix a typo in two comments. networksa -> networks
253 * Live migration with an auto selection of dest
254 * Remove unused nova.db.api:network_get_by_instance
255 * Fix network list and show with quantum
256@@ -11988,7 +12008,7 @@ CHANGES
257 * fix unused import
258 * Don't include auto_assigned ips in usage
259 * Correct IetAdm remove_iscsi_target
260-* Cleanup unused import in manager.py
261+* Cleanup unused import in manager.py
262 * xapi: fix create hypervisor pool
263 * Bump version to 2013.1
264 * Add Keypairs extension to API samples test
265@@ -12165,7 +12185,7 @@ CHANGES
266 * Fix deallocate_fixed_ip invocation
267 * fix issues with Nova security groups and Quantum
268 * Clear up the .gitignore file
269-* Allow for deleting VMs from down compute nodes
270+* Allow for deleting VMs from down compute nodes
271 * Update nova-rpc-zmq-receiver to load nova.conf
272 * FLAG rename: bandwith_poll_*=>bandwidth_poll_*
273 * Spelling: Persistant=>Persistent
274@@ -12355,7 +12375,7 @@ CHANGES
275 * Implement network association in OS API
276 * Fix TypeError conversion in API layer
277 * Key requested_networks off of network extension
278-* Key config_drive off of config-drive extension
279+* Key config_drive off of config-drive extension
280 * Make sure reservations is initialized
281 * import module, not type
282 * Config drive v2
283@@ -12405,7 +12425,7 @@ CHANGES
284 * Update devref for general host aggregates
285 * Cleanup consoles test cases
286 * Return 409 error if get_vnc_console is called before VM is created
287-* Move results filtering to db
288+* Move results filtering to db
289 * Prohibit file injection writing to host filesystem
290 * Added updated locations for iscsiadm
291 * Check against unexpected method call
292@@ -12668,7 +12688,7 @@ CHANGES
293 * Fix error in error handler in instance_usage_audit task
294 * Fix SQL deadlock in quota reservations
295 * Ensure 413 response for security group over-quota
296-* fixes for nova-manage network list if network has been deleted
297+* fixes for nova-manage network list if network has been deleted
298 * Allow NoMoreFloatingIps to bubble up to FaultWrapper
299 * Fix cloudpipe keypair creation. Add pipelib tests
300 * Don't let failure to delete filesystem block deletion of instances in libvirt
301@@ -12781,7 +12801,7 @@ CHANGES
302 * Fix KeyError 'key_name' when KeyPairExists raised
303 * Propagate setup.py change from common
304 * Properly name openstack.common.exception
305-* Janitorial: Catch rpc up with a change in common
306+* Janitorial: Catch rpc up with a change in common
307 * Make reboot work for halted xenapi instances
308 * Removed a bunch of cruft files
309 * Update common setup code to latest
310@@ -12809,6 +12829,10 @@ CHANGES
311 * Distinguish over-quota for volume size and number
312 * Assign service_catalog in NovaKeystoneContext
313 * Fix some hacking violations in the quantum tests
314+
315+folsom-2
316+--------
317+
318 * Fix missing nova.log change to nova.openstack.common.log
319 * Add Cinder Volume API to Nova
320 * Modifies ec2/cloud to be able to use Cinder
321@@ -12981,7 +13005,7 @@ CHANGES
322 * Fixes affinity filters when hints is None
323 * implement sql-comment-string stack traces
324 * Finalize tox config
325-* Fixes bug lp:999928
326+* Fixes bug lp:999928
327 * Convert consoles to use instance uuid
328 * Use OSError instead of ProcessExecutionError
329 * Replace standard json module with openstack.common.jsonutils
330@@ -13100,6 +13124,10 @@ CHANGES
331 * Remove unused tools/rfc.sh
332 * Finish quota refactor
333 * Use utils.parse_strtime rather than datetime.strptime
334+
335+folsom-1
336+--------
337+
338 * Add version to compute rpc API
339 * Add version to scheduler rpc API
340 * Add version to console rpc API
341@@ -13194,7 +13222,7 @@ CHANGES
342 * A previous patch decoupled the RPC drivers from the nova.flags, breaking instance audit usage in the process. This configures the xvpvncproxy to configure the RPC drivers properly with FLAGS so that xvpvncproxy can run
343 * Fix bug 983206 : _try_convert parsing string
344 * pylint cleanup
345-* Fix devref docs
346+* Fix devref docs
347 * Remove Deprecated AuthMiddleware
348 * Allow sitepackages on jenkins
349 * Replaces exceptions.Error with NovaException
350@@ -13437,7 +13465,7 @@ CHANGES
351 * Add validation for OSAPI server name length
352 * adjust logging levels for libvirt error conditions
353 * Fix exception type in _get_minram_mindisk_params
354-* fixed bug lp:968019 ,fix network manager init floating ip problem
355+* fixed bug lp:968019 ,fix network manager init floating ip problem
356 * When dnsmasq fails to HUP log an error
357 * Update KillFilter to handle 'deleted' exe's
358 * Fix disassociate query to remove foreign keys
359@@ -13693,7 +13721,7 @@ CHANGES
360 * Allows new style config to be used for --flagfile
361 * Add support for lxc consoles
362 * Fix references to novncproxy_base_url in docs
363-* Add assertRaises check to tools/hacking.py as N202
364+* Add assertRaises check to tools/hacking.py as N202
365 * fix restructuredtext formatting in docstrings that show up in the developer guide
366 * Raise 409 when rescuing instance in RESCUE mode
367 * Log a certain rare instance termination exception
368@@ -13721,7 +13749,7 @@ CHANGES
369 * Use stubout instead of manually stubbing out versions.VERSIONS
370 * Remove unused session variable in test setup
371 * Cleanup swap in _create_vm undo
372-* Do not invoke kill dnsmasq if no pid file was found
373+* Do not invoke kill dnsmasq if no pid file was found
374 * Fixes for ec2 images
375 * Retry download_vhd with different glance host each time
376 * Display error for invalid CIDR
377@@ -13734,7 +13762,7 @@ CHANGES
378 * Remove unnecessary setting up and down of mox and stubout
379 * Remove unnecessary variables from tests
380 * Ensure image status filter matches glance format
381-* fix for bug 821252. Smarter default scheduler
382+* fix for bug 821252. Smarter default scheduler
383 * blueprint sphinx-doc-cleanup bug 944381
384 * Adds soft-reboot support to libvirt
385 * Minor cleanup based on HACKING
386@@ -13810,12 +13838,12 @@ CHANGES
387 * Fixes error if Melange returns no networks
388 * Print error if nova-manage should be run as root
389 * Don't delete security group in use from OS API
390-* nova-network can't deallocate ips from deleted instances
391+* nova-network can't deallocate ips from deleted instances
392 * Making link prefixes support https
393 * Prevent infinite loop in PublishErrorsHandler
394 * blueprint host-aggregates: host maintenance - xenapi implementation
395 * bug 939480
396-* libvirt vif-plugging fixes. Fixes bug 939252 , bug 939254
397+* libvirt vif-plugging fixes. Fixes bug 939252 , bug 939254
398 * Speeding up resize down with sparse_copy
399 * Remove network_api fallback for info_cache from APIs
400 * Improve unit test coverage per bug/934566
401@@ -13917,7 +13945,7 @@ CHANGES
402 * Fix the description of the --vnc_enabled option
403 * Different exit code in new versions of iscsiadm
404 * improve injection diagnostics when nbd unavailable. Bug 755854
405-* remove unused nwfilter methods and tests
406+* remove unused nwfilter methods and tests
407 * LOG.exception only works while in an exception handler
408 * _() works best with string literals
409 * Remove unnecessary constructors for exceptions
410@@ -13949,7 +13977,7 @@ CHANGES
411 * bug 931356: nova-manage prints libvirt related warnings if libvirt isn't installed
412 * Make melange_port an integer
413 * remove a private duplicate function
414-* Changes for supporting fast cloning on Xenserver. Implements blueprint fast-cloning-for-xenserver 1. use_cow_images flag is reused for xenserver to check if copy on write images should be used. 2. image-id is used to tag an image which has already been streamed from glance. 3. If cow is true, when an instance of an image is created for the first time on a given xenserver, the image is streamed from glance and copy on write disk is created for the instance. 4. For subsequent instance creation requests (of the same image), a copy on write disk is created from the base image that is already present on the host. 5. If cow is false, when an instance of an image is created for the first time on a host, the image is streamed from glance and its copy is made to create a virtual disk for the instance. 6. For subsequent instance creation requests, a copy of disk is made for creating the disk for the instance. 7. Snapshot creation code was updated to handle cow=true. Now there can be upto 3 disks in the chain. The base disk needs to be uploaded too. 8. Also added a cache_images flag. Depending on whether the flag is turned on on not, images will be cached on the host
415+* Changes for supporting fast cloning on Xenserver. Implements blueprint fast-cloning-for-xenserver 1. use_cow_images flag is reused for xenserver to check if copy on write images should be used. 2. image-id is used to tag an image which has already been streamed from glance. 3. If cow is true, when an instance of an image is created for the first time on a given xenserver, the image is streamed from glance and copy on write disk is created for the instance. 4. For subsequent instance creation requests (of the same image), a copy on write disk is created from the base image that is already present on the host. 5. If cow is false, when an instance of an image is created for the first time on a host, the image is streamed from glance and its copy is made to create a virtual disk for the instance. 6. For subsequent instance creation requests, a copy of disk is made for creating the disk for the instance. 7. Snapshot creation code was updated to handle cow=true. Now there can be upto 3 disks in the chain. The base disk needs to be uploaded too. 8. Also added a cache_images flag. Depending on whether the flag is turned on on not, images will be cached on the host
416 * Completes fix for LP #928910 - libvirt performance
417 * Add some more comments to _get_my_ip()
418 * remove unused and buggy function from S3ImageService
419@@ -14524,7 +14552,7 @@ CHANGES
420 * Adds missing image_meta to rescue's spawn() calls
421 * Bug #898290: iSCSI volume backend treats FLAGS.host as a hostname
422 * split rxtx_factor into network and instance_type
423-* Fixing get_info method implementations in virt drivers to accept instance_name instead of instance_id. The abstract class virt.ComputeDriver defines get_info as: def get_info(self, instance_name). blueprint: internal-uuids
424+* Fixing get_info method implementations in virt drivers to accept instance_name instead of instance_id. The abstract class virt.ComputeDriver defines get_info as: def get_info(self, instance_name). blueprint: internal-uuids
425 * Fixes bug 767947
426 * Remove unused ec2.action_args
427 * Fix typo: priviledges -> privileges
428@@ -14652,6 +14680,10 @@ CHANGES
429 * Converting resize to use instance objects
430 * Converting reboot to use instance objects
431 * Reducing the number of compute calls to Glance
432+
433+essex-1
434+-------
435+
436 * Remove duplicate method (2)
437 * Move tests for extensions to contrib directory
438 * Remove duplicate method
439@@ -14911,7 +14943,7 @@ CHANGES
440 * merge from trunk
441 * convert images that are not 'raw' to 'raw' during caching to node
442 * show swap in Mb in nova manage
443-* Address Soren's comments: * clean up temp files if an ImageUnacceptable is going to be raised Note, a qemu-img execution error will not clean up the image, but I think thats reasonable. We leave the image on disk so the user can easily investigate. * Change final 2 arguments to fetch_to_raw to not start with an _ * use 'env' utility to change environment variables LC_ALL and LANG so that qemu-img output parsing is not locale dependent. Note, I considered the following, but found using 'env' more readable out, err = utils.execute('sh', '-c', 'export LC_ALL=C LANG=C && exec "$@"', 'qemu-img', 'info', path)
444+* Address Soren's comments: * clean up temp files if an ImageUnacceptable is going to be raised Note, a qemu-img execution error will not clean up the image, but I think thats reasonable. We leave the image on disk so the user can easily investigate. * Change final 2 arguments to fetch_to_raw to not start with an _ * use 'env' utility to change environment variables LC_ALL and LANG so that qemu-img output parsing is not locale dependent. Note, I considered the following, but found using 'env' more readable out, err = utils.execute('sh', '-c', 'export LC_ALL=C LANG=C && exec "$@"', 'qemu-img', 'info', path)
445 * Add iptables filter rules for dnsmasq (lp:844935)
446 * create disk.local the same way ephemerals are created (LP: #851145)
447 * merge with trunk r1601
448@@ -14925,7 +14957,7 @@ CHANGES
449 * Update migration 047 to dynamically lookup the name of the instance_id fkey before dropping it. We can't hard code the name of the fkey since we didn't name it explicitly on create
450 * oops, add project_id and 'servers' to next links
451 * Fixes migration for Mysql to drop the FK on the right table
452-* Reverted some changes to instance_get_all_by_filters() that was added in rev 1594. An additional argument for filtering on instance uuids is not needed, as you can add 'uuid: uuid_list' into the filters dictionary. Just needed to add 'uuid' as an exact_match_filter. This restores the filtering to do a single DB query
453+* Reverted some changes to instance_get_all_by_filters() that was added in rev 1594. An additional argument for filtering on instance uuids is not needed, as you can add 'uuid: uuid_list' into the filters dictionary. Just needed to add 'uuid' as an exact_match_filter. This restores the filtering to do a single DB query
454 * fix syntax error in exception, remove "Dangerous!" comment
455 * merged trunk and resolved conflict
456 * run the alter on the right table
457@@ -14940,7 +14972,7 @@ CHANGES
458 * convert images that are not 'raw' to 'raw' during caching to node
459 * now raising instead of setting bridge to br100 and warning as was noted
460 * * Remove the foreign key and backrefs tying vif<->instance * Update instance filtering to pass ip related filters to the network manager * move/update tests
461-* Adds an optional flag to force dhcp releases on instance termination. This allows ips to be reused without having to wait for the lease to timeout
462+* Adds an optional flag to force dhcp releases on instance termination. This allows ips to be reused without having to wait for the lease to timeout
463 * remove urllib import
464 * Fixing case where OSAPI server create would return 500 on malformed body
465 * Fix the issue with the new dnsmasq where it tries and fails to bind to ipv6 addresses
466@@ -14956,7 +14988,7 @@ CHANGES
467 * merge the sknurt
468 * remove the polymorph
469 * Fix typo in comment
470-* Fixes the handling of snapshotting in libvirt driver to actually use the proper image type instead of using raw for everything. Also cleans up an unneeded flag. Based on doude's initial work
471+* Fixes the handling of snapshotting in libvirt driver to actually use the proper image type instead of using raw for everything. Also cleans up an unneeded flag. Based on doude's initial work
472 * merge with trunk
473 * removing extra newline
474 * catching AttributeError and adding tests
475@@ -14990,7 +15022,7 @@ CHANGES
476 * Only log migration info if they exist
477 * remove getting fixed_ips directly from the db
478 * removed unused import
479-* Fixes libvirt rescue to use the same strategy as xen. Use a new copy of the base image as the rescue image. It leaves the original rescue image flags in, so a hand picked rescue image can still be used if desired
480+* Fixes libvirt rescue to use the same strategy as xen. Use a new copy of the base image as the rescue image. It leaves the original rescue image flags in, so a hand picked rescue image can still be used if desired
481 * Fixing tests, PEP8 failures
482 * fix permissions
483 * Add a FakeVirDomainSnapshot and return it from snapshotCreateXML. Fixes libvirt snapshot tests
484@@ -15067,7 +15099,7 @@ CHANGES
485 * merge trunk
486 * write out xml for rescue
487 * fix up the filtering so it does not return duplicates if both the network and the db filters match
488-* fix rescue to use the base image, reset firewall rules, and accept network_info
489+* fix rescue to use the base image, reset firewall rules, and accept network_info
490 * make sure to pass in the context
491 * move the FakeNetworkManager into fake_network
492 * Fix issue where floating ips don't get recreated when a network host reboots
493@@ -15133,7 +15165,7 @@ CHANGES
494 * Fix instance rebooting (lp847604) by correcting a malformed cast in compute.api and an incorrect method signature in the libvirt driver
495 * Fix mismerge
496 * make tests pass
497-* This patch teaches virt/libvirt how to format filesystem on ephemeral device depending on os_type so that the behaviour matches with EC2's. Such behaviour isn't explicitly described in the documentation, but it is confirmed by checking realy EC2 instances. This patch introduces options virt_mkfs as multistring. Its format is --virt_mkfs=<os_type>=<mkfs command> When creating ephemeral device, format it according to the option depending on os_type. This addresses the bugs, https://bugs.launchpad.net/nova/+bug/827598 https://bugs.launchpad.net/nova/+bug/828357
498+* This patch teaches virt/libvirt how to format filesystem on ephemeral device depending on os_type so that the behaviour matches with EC2's. Such behaviour isn't explicitly described in the documentation, but it is confirmed by checking realy EC2 instances. This patch introduces options virt_mkfs as multistring. Its format is --virt_mkfs=<os_type>=<mkfs command> When creating ephemeral device, format it according to the option depending on os_type. This addresses the bugs, https://bugs.launchpad.net/nova/+bug/827598 https://bugs.launchpad.net/nova/+bug/828357
499 * Test new vendor content types as well
500 * Only allow up to 15 chars for a Windows hostname
501 * Split accept tests to better match the name of the test
502@@ -15198,7 +15230,7 @@ CHANGES
503 * api/ec2: make get_metadata() return correct mappings
504 * virt/libvirt: format ephemeral device and add fs label when formating ext3 fs
505 * Fix spelling mistake
506-* Stock zones follows a fill-first methodology—the current zone is filled with instances before other zones are considered. This adds a flag to nova to select a spread-first methodology. The implementation is simply adding a random.shuffle() prior to sorting the list of potential compute hosts by weights
507+* Stock zones follows a fill-first methodology—the current zone is filled with instances before other zones are considered. This adds a flag to nova to select a spread-first methodology. The implementation is simply adding a random.shuffle() prior to sorting the list of potential compute hosts by weights
508 * Pass reboot_type (either HARD or SOFT) to the virt layers from the API
509 * merging trunk
510 * fixing image status mapping
511@@ -15237,7 +15269,7 @@ CHANGES
512 * First pass at adding reboot_type to reboot codepath
513 * child zone queries working with keystone now
514 * Added docstring to explain usage of reserved keyword argument
515-* One more bug fix to make zones work in trunk. Basic problem is that in novaclient using the 1.0 OSAPI, servers.create() takes an ipgroups argument, but when using the 1.1 OSAPI, it doesn't, which means booting instances in child zones won't work with OSAPI v1.0. This fix works around that by using keyword arguments for all the arguments after the flavor, and dropping the unused ipgroups argument
516+* One more bug fix to make zones work in trunk. Basic problem is that in novaclient using the 1.0 OSAPI, servers.create() takes an ipgroups argument, but when using the 1.1 OSAPI, it doesn't, which means booting instances in child zones won't work with OSAPI v1.0. This fix works around that by using keyword arguments for all the arguments after the flavor, and dropping the unused ipgroups argument
517 * Fixes the reroute_compute decorator in the scheduler API so that it properly:
518 * make check for fixed_ip association more defensive
519 * Fix lp:844155
520@@ -15267,7 +15299,7 @@ CHANGES
521 * typo trying to raise InstanceNotFound when all zones returned nothing
522 * create a new exception ZoneRequestError to use for returning errors when zone requests couldn't complete
523 * pep8 fix for tests/api/openstack/test_servers.py which is an issue in trunk
524-* catch exceptions from novaclient when talking to child zones. store them and re-raise if no other child zones return any results. If no exceptions are raised but no results are returned, raise a NotFound exception
525+* catch exceptions from novaclient when talking to child zones. store them and re-raise if no other child zones return any results. If no exceptions are raised but no results are returned, raise a NotFound exception
526 * added test to cover case where no local hosts are available but child hosts are
527 * remove the short circuit in abstract scheduler when no local hosts are available
528 * fix for lp844364: improve check for fixed_ip association
529@@ -15304,7 +15336,7 @@ CHANGES
530 * Added use_single_default_gateway to switch from multiple default gateways to single default gateway
531 * Fixed unit test
532 * reverting change to GlanceImageService._is_image_available
533-* At present, the os servers.detail api does not return server.user_id or server.tenant_id. This is problematic, since the servers.detail api defaults to returning all servers for all users of a tenant, which makes it impossible to tell which user is associated with which server
534+* At present, the os servers.detail api does not return server.user_id or server.tenant_id. This is problematic, since the servers.detail api defaults to returning all servers for all users of a tenant, which makes it impossible to tell which user is associated with which server
535 * reverting xenapi change
536 * Micro-fix; "exception" was misspelled as "exceptions"
537 * Fix a misspelling of "exception"
538@@ -15349,7 +15381,7 @@ CHANGES
539 * removed unneeded import
540 * rick nits
541 * alex meade issues
542-* Added list of security groups to the newly added extension (Createserverext) for the Create Server and Get Server detail responses
543+* Added list of security groups to the newly added extension (Createserverext) for the Create Server and Get Server detail responses
544 * default description to name
545 * use 'qemu-image resize' rather than 'truncate' to grow image files
546 * remove extra description stuff
547@@ -15362,7 +15394,7 @@ CHANGES
548 * move networks declarations within upgrade/downgrade methods
549 * more review cleanup
550 * remove import of 'fake' from nova manager, now that we've moved that to test_quantum.py
551-* Fixes a small bug which causes filters to not work at all. Also reworks a bit of exception handling to allow the exception related to the bug to propagate up
552+* Fixes a small bug which causes filters to not work at all. Also reworks a bit of exception handling to allow the exception related to the bug to propagate up
553 * Email error again. Tired
554 * Email error
555 * Fixed review comments
556@@ -15410,7 +15442,7 @@ CHANGES
557 * typo
558 * more review cleanup
559 * another commit from brad
560-* add specific exceptions for quantum client. Fix doc-strings in client.py
561+* add specific exceptions for quantum client. Fix doc-strings in client.py
562 * merge brad's changes that address most review feedback
563 * fix for lp838583 - fixes bug in os-floating-ips view code that prevents instance_id from being returned for associated addresses
564 * Accept keypair when you launch a new server. These properties would be stored along with the other server properties in the database (like they are currently for ec2 api)
565@@ -15425,7 +15457,7 @@ CHANGES
566 * Add comment for an uncommon failure case that we need to fix
567 * Fix for LP Bug #838466
568 * Correctly yield images from glance client through image service
569-* Simple usage extension for nova. Uses db to calculate tenant_usage for specified time periods
570+* Simple usage extension for nova. Uses db to calculate tenant_usage for specified time periods
571 * Fix for LP Bug #838251
572 * merge trunk, fix conflict
573 * Validates that user-data is b64 encoded
574@@ -15436,8 +15468,8 @@ CHANGES
575 * Updating test for <choices> xml to use lxml
576 * expect key_name attribute in 1.1
577 * change to use _get_key_name to retrieve the key
578-* Implements lp:798876 which is 'switch carrot to kombu'. Leaves carrot as the default for now... decision will be made later to switch the default to kombu after further testing. There's a lot of code duplication between carrot and kombu, but I left it that way in preparation for ripping carrot out later and to keep minimal changes to carrot
579-* Disassociated previously associated floating ips when calling network_api.associate_floating_ip. Also guard against double-association in the network.manager
580+* Implements lp:798876 which is 'switch carrot to kombu'. Leaves carrot as the default for now... decision will be made later to switch the default to kombu after further testing. There's a lot of code duplication between carrot and kombu, but I left it that way in preparation for ripping carrot out later and to keep minimal changes to carrot
581+* Disassociated previously associated floating ips when calling network_api.associate_floating_ip. Also guard against double-association in the network.manager
582 * adding support for limiting in image service; updating tests with fixture ids and marker support
583 * trunk merge
584 * merging trunk
585@@ -15466,7 +15498,7 @@ CHANGES
586 * Removed debug messages
587 * Fix for LP Bug #837534
588 * add kombu to pip-requires and contrib/nova.sh
589-* restore old way FLAGS.rpc_backend worked.. no short name support for consistency
590+* restore old way FLAGS.rpc_backend worked.. no short name support for consistency
591 * fix remaining tests
592 * Update RequestContext so that it correctly sets self.is_admin from the roles array. Additionally add a bit of code to ignore case as well
593 * pep8, fix fakes
594@@ -15506,15 +15538,15 @@ CHANGES
595 * Removed test_parallel_builds
596 * Merged trunk
597 * Increased migration number
598-* Fixes lp:813864 by removing the broken assert. The assert was a check for isinstance of 'int' that should have been 'long'. But it doesn't appear this assert really belongs, anyway
599+* Fixes lp:813864 by removing the broken assert. The assert was a check for isinstance of 'int' that should have been 'long'. But it doesn't appear this assert really belongs, anyway
600 * Merged trunk
601 * Adds assertIn and assertNotIn support to TestCase for compatibility with python 2.6 This is a very minimal addition which doesn't require unittest2
602 * support the extra optional arguments for msg to assertIn and assertNotIn
603 * removed broken assert for abstract_scheduler
604 * pep8 fixes
605-* fix for assertIn and assertNotIn use which was added in python 2.7. this makes things work on 2.6 still
606+* fix for assertIn and assertNotIn use which was added in python 2.7. this makes things work on 2.6 still
607 * merge trunk
608-* restore fixed_ip_associate_pool in nova/db/sqlalchemy.py to its original form before this branch. Figured out how to make unit tests pass without requiring that this function changes
609+* restore fixed_ip_associate_pool in nova/db/sqlalchemy.py to its original form before this branch. Figured out how to make unit tests pass without requiring that this function changes
610 * remove unused rpc connections in test_cloud and test_adminapi
611 * carrot consumer thread fix
612 * add carrot/kombu tests... small thread fix for kombu
613@@ -15527,10 +15559,10 @@ CHANGES
614 * always set network_id in virtual_interfaces table, otherwise API commands that show IP addresses get confused
615 * start to rework some consumer stuff
616 * update melange ipam lib to use network uuid, not bridge
617-* fix issue with setting 'Active' caused by Quantum API changes. Other misc fixes
618+* fix issue with setting 'Active' caused by Quantum API changes. Other misc fixes
619 * Bug #835952: pep8 failures do not cause the tests to fail
620 * Start domid's at 1, not 0, to avoid any confusion with dom0
621-* use 'uuid' field in networks table rather than 'bridge'. Specify project_id when creating instance in unit test
622+* use 'uuid' field in networks table rather than 'bridge'. Specify project_id when creating instance in unit test
623 * Bug #835964: pep8 violations in IPv6 code
624 * In the XenAPI simulator, set VM.domid, when creating the instance initially, and when starting the VM
625 * Bug #835952: pep8 failures do not cause the tests to fail
626@@ -15591,7 +15623,7 @@ CHANGES
627 * Just a couple of small changes I needed to get the migrations working with SQLAlchemy 0.7.x on Fedora 16
628 * Minor fixes
629 * check log file's mode prior to calling chmod
630-* The fix for run_iscsiadm in rev 1489 changed the call to use a tuple because values were being passed as tuples. Unfortunately a few calls to the method were still passing strings
631+* The fix for run_iscsiadm in rev 1489 changed the call to use a tuple because values were being passed as tuples. Unfortunately a few calls to the method were still passing strings
632 * Add a set of generic tests for the virt drivers. Update a bit of documentation to match reality
633 * updated LimitsXMLSerializer to use etree and supply the xml declaration
634 * merge underlying fix for testing
635@@ -15725,7 +15757,7 @@ CHANGES
636 * Merged from upstream
637 * Fixed some pep8 and pylint issues
638 * Forgot to set the flag for the test
639-* I added notifications decorator for each API call using monkey_patching. By this merge, users can get API call notification from any modules
640+* I added notifications decorator for each API call using monkey_patching. By this merge, users can get API call notification from any modules
641 * Fixes bug that causes 400 status code when an instance wasn't attached to a network
642 * fix for rc generation using noauth
643 * Fixed doc string
644@@ -15777,7 +15809,7 @@ CHANGES
645 * Added Test Code, doc string, and fixed pip-requiresw
646 * Merged trunk
647 * Ensure that reserve and unreserve exit when an address is not found
648-* Simple usage extension for nova. Uses db to calculate tenant_usage for specified time periods
649+* Simple usage extension for nova. Uses db to calculate tenant_usage for specified time periods
650 * Stubbed out the database in order to improve tests
651 * logging as exception rather than error
652 * Merged from upstream
653@@ -15826,7 +15858,7 @@ CHANGES
654 * pep8
655 * improve test coverage for instance types / flavors
656 * Launchpad automatic translations update
657-* Assorted fixes to os-floating-ips to make it play nicely with an in-progress novaclient implementation, as well as some changes to make it more consistent with other os rest apis. Changes include:
658+* Assorted fixes to os-floating-ips to make it play nicely with an in-progress novaclient implementation, as well as some changes to make it more consistent with other os rest apis. Changes include:
659 * finished fake network info, removed testing shims
660 * updated a maths
661 * updated a maths
662@@ -15855,7 +15887,7 @@ CHANGES
663 * tweak to comment
664 * Merged with trunkw
665 * a few tweaks - remove unused member functions, add comment
666-* incorporate feedback from brian waldon and brian lamar. Move associate/disassociate to server actions
667+* incorporate feedback from brian waldon and brian lamar. Move associate/disassociate to server actions
668 * merge from trunk
669 * pep8
670 * Finished changing ServerXMLSerializationTest to use XML validation and lxml
671@@ -15866,7 +15898,7 @@ CHANGES
672 * merge from trunk
673 * Removes the incorrect hard-coded filter path
674 * Revert irrelevant changes that accidentally crept into this patch :(
675-* add tenant_id to api. without tenant_id, admins can't tell which servers belong to which tenants when retrieving lists
676+* add tenant_id to api. without tenant_id, admins can't tell which servers belong to which tenants when retrieving lists
677 * Merged from trunk
678 * Fixes primitive with builtins, modules, etc
679 * fix test_virtual interfaces for tenant_id stuff
680@@ -15881,17 +15913,17 @@ CHANGES
681 * Bump migration number
682 * pep8
683 * Start improving documentation
684-* Added uuid column in virtual_interfaces table, and an OpenStack extension API for virtual interfaces to expose these IDs. Also set this UUID as one of the external IDs in the OVS vif driver
685+* Added uuid column in virtual_interfaces table, and an OpenStack extension API for virtual interfaces to expose these IDs. Also set this UUID as one of the external IDs in the OVS vif driver
686 * Move documentation from nova.virt.fake to nova.virt.driver
687 * add key_name/data support to server stub
688-* add user_id and description. without user_id, there is no way for a tenant to tell which user created the server. description should be added for ec2 parity
689+* add user_id and description. without user_id, there is no way for a tenant to tell which user created the server. description should be added for ec2 parity
690 * merge
691-* Bugfix for lp 828429. Its still not clear to me exactly how this code path is actually invoked when nova is used, so I'm looking for input on whether we should be adding a test case for this, removing the code as unused, etc. Thanks
692+* Bugfix for lp 828429. Its still not clear to me exactly how this code path is actually invoked when nova is used, so I'm looking for input on whether we should be adding a test case for this, removing the code as unused, etc. Thanks
693 * remove security groups, improve exception handling, add tests
694 * Merged trunk
695 * merged trunk
696 * Currently, rescue/unrescue is only available over the admin API. Non-admin tenants also need to be able to access this functionality. This patch adds rescue functionality over an API extension
697-* Makes all of the binary services launch using the same strategy.  * Removes helper methods from utils for loading flags and logging  * Changes service.serve to use Launcher  * Changes service.wait to actually wait for all the services to exit  * Changes nova-api to explicitly load flags and logging and use service.serve * Fixes the annoying IOError when /etc/nova/nova.conf doesn't exist
698+* Makes all of the binary services launch using the same strategy. * Removes helper methods from utils for loading flags and logging * Changes service.serve to use Launcher * Changes service.wait to actually wait for all the services to exit * Changes nova-api to explicitly load flags and logging and use service.serve * Fixes the annoying IOError when /etc/nova/nova.conf doesn't exist
699 * tests pass
700 * Fixes issue where ServersXMLSerializer was missing a method for update actions
701 * follow same pattern as userdata (not metadata apporach)
702@@ -15905,7 +15937,7 @@ CHANGES
703 * Fixes lp828207
704 * Added unit test
705 * allow specification of key pair/security group info via metadata
706-* Fixed bug in which DescribeInstances was returning deleted instances. Added tests for pertinent api methods
707+* Fixed bug in which DescribeInstances was returning deleted instances. Added tests for pertinent api methods
708 * Accept binary user_data in radix-64 format when you launch a new server using OSAPI. This user_data would be stored along with the other server properties in the database. Once the VM instance boots you can query for the user-data to do any custom installation of applications/servers or do some specific job like setting up networking route table
709 * added unittests for volume_extra_data
710 * Removed extra parameter from the call to _provision_resource_locally()
711@@ -16007,7 +16039,7 @@ CHANGES
712 * Resolved conflicts and merged with trunk
713 * Added uuid for networks and made changes to the Create server API format to accept network as uuid instead of id
714 * I'm taking Thierry at his word that I should merge early and merge often :)
715-* Fixes issue with exceptions getting eaten in image/s3.py if there is a failure during register. The variables referenced with locals() were actually out of scope
716+* Fixes issue with exceptions getting eaten in image/s3.py if there is a failure during register. The variables referenced with locals() were actually out of scope
717 * Allow local_gb size to be 0. libvirt uses local_gb as a secondary drive, but XenServer uses it as the root partition's size. Now we support both
718 * Merged trunk
719 * merge from trunk
720@@ -16073,7 +16105,7 @@ CHANGES
721 * fix typo where I forgot a comma
722 * merge trunk, remove _validate_cidrs and replace functionality with a double for loop
723 * fix bug which DescribeInstances in EC2 api was returning deleted instances
724-* We don't have source for open-wrt in the source tree, so we shouldn't use the images. Since the images are only there for uploading smoketests, They are now replaced with random images
725+* We don't have source for open-wrt in the source tree, so we shouldn't use the images. Since the images are only there for uploading smoketests, They are now replaced with random images
726 * Make response structure for list floating ips conform with rest of openstack api
727 * put tenant_id back in places where it was
728 * This branch allows the standard inclusion of a body param which most http clients will send along with a POST request
729@@ -16095,16 +16127,16 @@ CHANGES
730 * Dryed up contructors
731 * make list response for floating ip match other apis
732 * fix missing 'run_as_root' from bad merge
733-* Added ability too boot VM from install ISO. System detects an image of type iso. Images is streamed to a VDI and mounted to the VM. Blank disk allocated to VM based on instance type
734+* Added ability too boot VM from install ISO. System detects an image of type iso. Images is streamed to a VDI and mounted to the VM. Blank disk allocated to VM based on instance type
735 * Add source-group filtering
736-* added logic to make the creation of networks (IPv4 only) validation a bit smarter: - detects if the cidr is already in use - detects if any existing smaller networks are within the range of requested cidr(s) - detects if splitting a supernet into # of num_networks && network_size will fit - detects if requested cidr(s) are within range of already existing supernet (larger cidr)
737-* fix InvalidPortRange exception shows up in euca2ools instead of UnknownError when euca-authorize is specified w/ invalid port #
738+* added logic to make the creation of networks (IPv4 only) validation a bit smarter: - detects if the cidr is already in use - detects if any existing smaller networks are within the range of requested cidr(s) - detects if splitting a supernet into # of num_networks && network_size will fit - detects if requested cidr(s) are within range of already existing supernet (larger cidr)
739+* fix InvalidPortRange exception shows up in euca2ools instead of UnknownError when euca-authorize is specified w/ invalid port #
740 * Changes requests with an invalid server action to return an HTTP 400 instead of a 501
741 * Currently OS API doesn't accept availability zone parameter so there is no way to instruct scheduler (SimpleScheduler) to launch VM instance on specific host of specified zone
742 * typo fix
743 * Fix v1.1 /servers/<id> PUT request to match API documentation by returning 200 code and the server data in the body
744 * Allow different schedulers for compute and volume
745-* have NetworkManager generate MAC address and pass it to the driver for plugging. Sets the stage for being able to do duplicate checks on those MACs as well
746+* have NetworkManager generate MAC address and pass it to the driver for plugging. Sets the stage for being able to do duplicate checks on those MACs as well
747 * make sure security groups come back on restart of nova-compute
748 * fix all of the tests
749 * rename project_net to same_net
750@@ -16157,9 +16189,9 @@ CHANGES
751 * Merged trunk
752 * start of day
753 * Fixes to the OSAPI floating API extension DELETE. Updated to use correct args for self.disassociate (don't sweep exceptions which should cause test cases to fail under the rug). Additionally updated to pass network_api.release_floating_ip the address instead of a dict
754-* API needs virtual_interfaces.instance joined when pulling instances from the DB. Updated instance_get_all() to match instance_get_all_by_filters() even though the former is only used by nova-manage now. (The latter is used by the API)
755+* API needs virtual_interfaces.instance joined when pulling instances from the DB. Updated instance_get_all() to match instance_get_all_by_filters() even though the former is only used by nova-manage now. (The latter is used by the API)
756 * remove extra log statements
757-* join virtual_interfaces.instance for DB queries for instances. updates instance_get_all to match instance_get_all_by_filters
758+* join virtual_interfaces.instance for DB queries for instances. updates instance_get_all to match instance_get_all_by_filters
759 * remove accidentally duplicated flag
760 * merged trunk
761 * add keystone middlewares for ec2 api
762@@ -16226,7 +16258,7 @@ CHANGES
763 * added project_id for flavors requests links
764 * added project_id for images requests
765 * merge trunk
766-* fix so that the exception shows up in euca2ools instead of UnknownError
767+* fix so that the exception shows up in euca2ools instead of UnknownError
768 * Dropped vsa_id from instances
769 * import formatting - thx
770 * List security groups project wise for admin users same as other users
771@@ -16327,10 +16359,10 @@ CHANGES
772 * Added possibility to mark fixed ip like reserved and unreserved
773 * Update the OSAPI v1.1 server 'createImage' and 'createBackup' actions to limit the number of image metadata items based on the configured quota.allowed_metadata_items that is set
774 * Pep8 fix
775-* zone_aware_scheduler classes couldn't build instances due to a change to compute api's create_db_entry_for_new_instance call. now passing image argument down to the scheduler and through to the call. updated a existing test to cover this
776+* zone_aware_scheduler classes couldn't build instances due to a change to compute api's create_db_entry_for_new_instance call. now passing image argument down to the scheduler and through to the call. updated a existing test to cover this
777 * Adding check to stub method
778 * moving try/except block, and changing syntax of except statement
779-* Fixes broken image_convert. The context being passed to glance image service was not a real context
780+* Fixes broken image_convert. The context being passed to glance image service was not a real context
781 * Using decorator for snapshots enabled check
782 * Disable flag for V1 Openstack API
783 * adding logging to exception in delete method
784@@ -16374,10 +16406,10 @@ CHANGES
785 * Add run_as_root parameter to utils.execute, uses new sudo_helper FLAG to prefix command
786 * Remove spurious direct use of subprocess
787 * Added virtual interfaces REST API extension controller
788-* Trunk contained PEP8 errors. Fixed
789+* Trunk contained PEP8 errors. Fixed
790 * Trunk merge
791 * fix mismerge
792-* Added migration to add uuid to virtual interfaces. Added uuid column to models
793+* Added migration to add uuid to virtual interfaces. Added uuid column to models
794 * merged trunk
795 * merged with nova trunk
796 * Launchpad automatic translations update
797@@ -16387,22 +16419,22 @@ CHANGES
798 * tests and merge with trunk
799 * removed redundant logic
800 * merged trunk
801-* 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
802+* 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
803 * Remove instances of the "diaper pattern"
804 * Read response to reset the connection state-machine for the next request/response cycle
805 * Added explanations to exceptions and cleaned up reboot types
806 * fix pep8 issues
807-* 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
808+* 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
809 * Adding missing module xmlutil
810 * fixed bug, wasn't detecting smaller subnet conflict properly added test for it
811 * Properly format mapping['dns'] before handing off to template for injection (Fixes LP Bug #821203)
812 * Read response to reset HTTPConnection state machine
813 * removed unnecessary context from test I had left there from prior
814 * move ensure_vlan_bridge,ensure_bridge,ensure_vlan to the bridge/vlan specific vif-plugging driver
815-* 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
816+* 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
817 * Revert migration now finishes
818 * The OSAPI v1.0 image create POST request should store the instance_id as a Glance property
819-* There was a recent change to how we should flip FLAGS in tests, but not all tests were fixed. This covers the rest of them. I also added a method to test.UnitTest so that FLAGS.verbose can be set. This removes the need for flags to be imported from a lot of tests
820+* There was a recent change to how we should flip FLAGS in tests, but not all tests were fixed. This covers the rest of them. I also added a method to test.UnitTest so that FLAGS.verbose can be set. This removes the need for flags to be imported from a lot of tests
821 * Bad method call
822 * Forgot the instance_id parameter in the finish call
823 * Merged in the power action changes
824@@ -16507,7 +16539,7 @@ CHANGES
825 * Use flavorid only at the API level and use instance_type_id internally
826 * Yet another conflict resolved
827 * forgot to remove comment
828-* 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
829+* 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
830 * merged from trunk
831 * merged from trunk
832 * merge trunk
833@@ -16526,7 +16558,7 @@ CHANGES
834 * Merged trunk
835 * Add support for 300 Multiple Choice responses when no version identifier is used in the URI (or no version header is present)
836 * Merged trunk
837-* Glance has been updated for integration with keystone. That means that nova needs to forward the user's credentials (the auth token) when it uses the glance API. This patch, combined with a forth-coming patch for nova_auth_token.py in keystone, establishes that for nova itself and for xenapi; other hypervisors will need to set up the appropriate hooks for their use of glance
838+* Glance has been updated for integration with keystone. That means that nova needs to forward the user's credentials (the auth token) when it uses the glance API. This patch, combined with a forth-coming patch for nova_auth_token.py in keystone, establishes that for nova itself and for xenapi; other hypervisors will need to set up the appropriate hooks for their use of glance
839 * Added changes from mini server
840 * raise correct error
841 * Minor test fixes
842@@ -16566,10 +16598,10 @@ CHANGES
843 * fixing method naming problem
844 * removing compute monitor
845 * merge from trunk
846-* 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
847+* 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
848 * While we currently trap JSON encoding exceptions and bail out, for error notification it's more important that *some* form of the message gets out. So, we take complex notification payloads and convert them to something we know can be expressed in JSON
849 * Better error handling for resizing
850-* Adds the auth token to nova's RequestContext. This will allow for delegation, i.e., use of a nova user's credentials when accessing other services such as glance, or perhaps for zones
851+* Adds the auth token to nova's RequestContext. This will allow for delegation, i.e., use of a nova user's credentials when accessing other services such as glance, or perhaps for zones
852 * merged trunk rev1348
853 * Launchpad automatic translations update
854 * added some tests for network create & moved the ipv6 logic back into the function
855@@ -16621,14 +16653,14 @@ CHANGES
856 * merge trunk
857 * stwart the switch to just fixed_range
858 * typo
859-* Round 1 of changes for keystone integration. * Modified request context to allow it to hold all of the relevant data from the auth component. * Pulled out access to AuthManager from as many places as possible * Massive cleanup of unit tests * Made the openstack api fakes use fake Authentication by default
860+* Round 1 of changes for keystone integration. * Modified request context to allow it to hold all of the relevant data from the auth component. * Pulled out access to AuthManager from as many places as possible * Massive cleanup of unit tests * Made the openstack api fakes use fake Authentication by default
861 * require either v4 or v6
862 * pull-up from trunk
863 * Fix various errors discovered by pylint and pyflakes
864 * fixing underline
865 * removing extra verbage
866 * merged trunk
867-* This change creates a minimalist API abstraction for the nova/rpc.py code so that it's possible to use other queue mechanisms besides Rabbit and/or AMQP, and even use other drivers for AMQP rather than Rabbit. The change is intended to give the least amount of interference with the rest of the code, fixes several bugs in the tests, and works with the current branch. I also have a small demo driver+server for using 0MQ which I'll submit after this patch is merged
868+* This change creates a minimalist API abstraction for the nova/rpc.py code so that it's possible to use other queue mechanisms besides Rabbit and/or AMQP, and even use other drivers for AMQP rather than Rabbit. The change is intended to give the least amount of interference with the rest of the code, fixes several bugs in the tests, and works with the current branch. I also have a small demo driver+server for using 0MQ which I'll submit after this patch is merged
869 * removing dict() comment
870 * adding more on return_type in docstrings
871 * Fixes issue with OSAPI passing compute API a flavorid instead of an instance identifier. Added tests
872@@ -16757,12 +16789,12 @@ CHANGES
873 * remove unexpected parameter
874 * fixed xmlns issue
875 * updated the bridge arg requirements based on manager
876-* this change will require that local urls be input with a properly constructed local url: http://localhost/v1.1/images/[id]. Such urls are translated to ids at the api layer. Previously, any url ending with and int was ok
877+* this change will require that local urls be input with a properly constructed local url: http://localhost/v1.1/images/[id]. Such urls are translated to ids at the api layer. Previously, any url ending with and int was ok
878 * make atom+xml accept header be ignored on 300 responses in the VersionsRequestDeserializer
879 * Removed superfluous parameter
880 * Use auth_token to set x-auth-token header in glance requests
881 * Fixed the virt driver base
882-* Some work on testing. Two cases related to lp816713 have some coverage already: using an id as an imageRef (test_create_instance_v1_1_local_href), and using a nova href as a url (test_create_instance_v1_1)
883+* Some work on testing. Two cases related to lp816713 have some coverage already: using an id as an imageRef (test_create_instance_v1_1_local_href), and using a nova href as a url (test_create_instance_v1_1)
884 * Remove xenapi_inject_image flag
885 * Add a flag to set the default file mode of logs
886 * fixed issue with factory for Versions Resource
887@@ -16818,7 +16850,7 @@ CHANGES
888 * cleanup
889 * pep8
890 * pep8
891-* First pass at converting this stuff--pass context down into vmops. Still need to fix unit tests and actually use auth_token from the context..
892+* First pass at converting this stuff--pass context down into vmops. Still need to fix unit tests and actually use auth_token from the context..
893 * pep8 and simplify rule refresh logic
894 * pep8
895 * merging parent branch lp:~rackspace-titan/nova/osapi-create-server
896@@ -16843,7 +16875,7 @@ CHANGES
897 * merging trunk; resolving conflicts
898 * Add OpenStack API support for block_device_mapping
899 * queries in the models.Instance context need to reference the table by name (fixed_ips) however queries in the models.FloatingIp context alias the tables out properly and return the data as fixed_ip (which is why you need to reference it by fixed_ip in that context)
900-* 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
901+* 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
902 * xml deserialization works now
903 * merged from trunk
904 * merged trunk
905@@ -16865,7 +16897,7 @@ CHANGES
906 * fix issue with failing test
907 * merged trunk
908 * I'm sorry, for my fail with rebasing. Any way previous branch grew to many other futures, so I supersede it. 1. Used optparse for parsing arg string 2. Added decorator for describe method params 3. Added option for assigning network to certain project. 4. Added field to "network list" for showing which project owns network
909-* Moved the VIF network connectivity logic('ensure_bridge' and 'ensure_vlan_bridge') from the network managers to the virt layer. In addition, VIF driver class is added to allow customized VIF configurations for various types of VIFs and underlying network technologies
910+* Moved the VIF network connectivity logic('ensure_bridge' and 'ensure_vlan_bridge') from the network managers to the virt layer. In addition, VIF driver class is added to allow customized VIF configurations for various types of VIFs and underlying network technologies
911 * merge with trunk, resolve conflicts
912 * fix pep8
913 * Launchpad automatic translations update
914@@ -16888,7 +16920,7 @@ CHANGES
915 * Estetic fix
916 * Fix boot from volume failure for network block devices
917 * Bug #796813: vmwareapi does not support distributed vswitch
918-* 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
919+* 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
920 * Fixes faults to use xml serializers based on api version. This fixed bug 814228
921 * Fixes a typo in rescue instance in ec2 api. This is mnaser's fix, I just added a test to verify the change
922 * Fixes bug 797250 where a create server request with the body '{"name":"server1"}' results in a HTTP 500 instead of HTTP 422
923@@ -16907,7 +16939,7 @@ CHANGES
924 * added 1.0 detail test, added VersionRequestDeserializer to support Versions actions properly, started 300/multiple choice work
925 * fix for reviews
926 * Fixed bad test Fixed using wrong variable
927-* Moved the exception handling of unplugging VIF from virt driver to VIF driver. Added better comments. Added OpenStack copyrights to libivrt vifs.py
928+* Moved the exception handling of unplugging VIF from virt driver to VIF driver. Added better comments. Added OpenStack copyrights to libivrt vifs.py
929 * pep8 + spelling fixes
930 * Floating IP DB tests
931 * Updated Faults controller to choose an xml serializer based on api version found in the request url
932@@ -17031,7 +17063,7 @@ CHANGES
933 * Moving lp:~rackspace-titan/nova/extensions-xml-serialization to new branch based off of trunk. To remove dep on another branch
934 * Perform fault wrapping in the openstack WSGI controller. This allows us to just raise webob Exceptions in OS API controllers with the appropriate explanations set. This resolves some inconsistencies with exception raising and returning that would cause HTML output to occur when faults weren't being handled correctly
935 * pep8 and stuff
936-* Some code was recently added to glance to allow the is_public filter to be overridden. This allows us to get all images and filter properly on the nova side until keystone support is in glance. This fixes the issue with private images and snapshots disappearing from the image list
937+* Some code was recently added to glance to allow the is_public filter to be overridden. This allows us to get all images and filter properly on the nova side until keystone support is in glance. This fixes the issue with private images and snapshots disappearing from the image list
938 * pep8
939 * Merged with trunk which includes ha-net changes
940 * Updated the compute API so that has_finished_migration uses instance_uuid. Fixes some regressions with 1295-1296
941@@ -17059,8 +17091,8 @@ CHANGES
942 * Fixed Xenapi unit test error of test_rescue
943 * Slight indentation change
944 * Merged Dan Wendlandt's branch and fixed pep8 errors
945-* Added call to second coverage invocation
946-* Fixed an issue where was invoked before it was defined in the case of a venv
947+* Added call to second coverage invocation
948+* Fixed an issue where was invoked before it was defined in the case of a venv
949 * - Add 'fixed_ipv6' property to VirtualInterface model - Expose ipv6 addresses in each network in OSAPI v1.1
950 * forgot to add xenapi/vif.py
951 * Perform fault wrapping in the openstack WSGI controller. This allows us to just raise webob Exceptions in OS API controllers with the appropriate explanations set. This resolves some inconsistencies with exception raising and returning that could cause HTML output to occur when an exception was raised
952@@ -17081,8 +17113,8 @@ CHANGES
953 * Fix plus passing tests
954 * remove debug prints
955 * merge ryu's branch
956-* update for ryu's naming changes, fix some bugs. tested with OVSDriver only so far
957-* Fixes bug #807764. Please disregard previous proposal with incorrect bug #
958+* update for ryu's naming changes, fix some bugs. tested with OVSDriver only so far
959+* Fixes bug #807764. Please disregard previous proposal with incorrect bug #
960 * Whoops
961 * Added LP bug num to TODO
962 * Split tests into 2
963@@ -17136,7 +17168,7 @@ CHANGES
964 * move import network to the top
965 * Merged lp:~danwent/nova/network-refactoring-l2
966 * merged from trunk
967-* network api release_floating_ip method checks if an instance associated to the floating prior to releasing. added test
968+* network api release_floating_ip method checks if an instance associated to the floating prior to releasing. added test
969 * Added detroy_vif_network
970 * Functionality fixed and new test passing
971 * Updates to the compute API and manager so that rebuild, reboot, snapshots, and password resets work with the most recent versions of novaclient
972@@ -17204,7 +17236,7 @@ CHANGES
973 * merged with 1280
974 * VSA: first cut. merged with 1279
975 * Added some unit and integration tests for updating the server name via the openstack api
976-* 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
977+* 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
978 * got rid of return_server_with_interfaces and added return_server_with_attributes
979 * Added ServerXMLSerializationTest
980 * take out print statements
981@@ -17220,7 +17252,7 @@ CHANGES
982 * use id in links instead of uuid
983 * pep8 fixes
984 * fix ServersViewBuilderV11Tests
985-* Adds greater configuration flexibility to rate limiting via api-paste.ini. In particular:
986+* Adds greater configuration flexibility to rate limiting via api-paste.ini. In particular:
987 * return id and uuid for now
988 * merge with trunk
989 * Adds distributed scheduler and multinic docs to the Developer Reference page
990@@ -17345,7 +17377,7 @@ CHANGES
991 * pre trunk merge
992 * Missing Author updated
993 * Allows for ports in serverRef in image create through the openstack api
994-* Adds security groups to metadata server. Also adds some basic tests for metadata code
995+* Adds security groups to metadata server. Also adds some basic tests for metadata code
996 * fix comments
997 * fix conflict
998 * Added vif OS API extension to get started on it
999@@ -17363,7 +17395,7 @@ CHANGES
1000 * Add a flag to disable ec2 or osapi
1001 * refactor
1002 * easing up content-type restrictions
1003-* 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.'
1004+* 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.'
1005 * Updated resize docstring
1006 * removing Content-Length requirement
1007 * Add docstrings for multinic extension
1008@@ -17377,7 +17409,7 @@ CHANGES
1009 * Updated mailmap due to wrong address in commit message
1010 * tests/test_cloud: make an unit test, test_create_image, happy
1011 * nova/compute/api.py: fixed mismerge
1012-* 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
1013+* 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
1014 * sqlalchemy/migrate: resolved version conflict
1015 * merge with trunk
1016 * pull-up from trunk
1017@@ -17438,7 +17470,7 @@ CHANGES
1018 * merged trunk
1019 * merge code i'd split from instance_get_fixed_addresses_v6 that's no longer needed to be split
1020 * fix metadata test since fixed_ip searching now goes thru filters db api call instead of the get_by_fixed_ip call
1021-* clean up compute_api.get_all filter name remappings. ditch fixed_ip one-off code. fixed ec2 api call to this to compensate
1022+* clean up compute_api.get_all filter name remappings. ditch fixed_ip one-off code. fixed ec2 api call to this to compensate
1023 * clean up OS API servers getting
1024 * rename _check_servers_options, add some comments and small cleanup in the db get_by_filters call
1025 * pep8 fix
1026@@ -17479,14 +17511,14 @@ CHANGES
1027 * add image and flavor searching to v1.0 api fixed missing updates from cut n paste in some doc strings
1028 * added searching by 'image', 'flavor', and 'status' reverted ip/ip6 searching to be admin only
1029 * compute's get_all should accept 'name' not 'display_name' for searching Instance.display_name. Removed 'server_name' searching.. Fixed DB calls for searching to filter results based on context
1030-* Refactored OS API code to allow checking of invalid query string paremeters and admin api/context to the index/detail calls. v1.0 still ignores unknown parameters, but v1.1 will return 400/BadRequest on unknown options. admin_api only commands are treated as unknown parameters if FLAGS.enable_admin_api is False. If enable_admin_api is True, non-admin context requests return 403/Forbidden
1031+* Refactored OS API code to allow checking of invalid query string paremeters and admin api/context to the index/detail calls. v1.0 still ignores unknown parameters, but v1.1 will return 400/BadRequest on unknown options. admin_api only commands are treated as unknown parameters if FLAGS.enable_admin_api is False. If enable_admin_api is True, non-admin context requests return 403/Forbidden
1032 * clean up checking for exclusive search options fix a cut n paste error with instance_get_all_by_name_regexp
1033 * merged trunk
1034 * python-novaclient 2.5.8 is required
1035 * fix bugs with fixed_ip returning a 404 instance searching needs to joinload more stuff
1036 * added searching by instance name added unit tests
1037 * pep8 fixes
1038-* Replace 'like' support with 'regexp' matching done in python. Since 'like' would result in a full table scan anyway, this is a bit more flexible. Make search options and matching a little more generic Return 404 when --fixed_ip doesn't match any instance, instead of a 500 only when the IP isn't in the FixedIps table
1039+* Replace 'like' support with 'regexp' matching done in python. Since 'like' would result in a full table scan anyway, this is a bit more flexible. Make search options and matching a little more generic Return 404 when --fixed_ip doesn't match any instance, instead of a 500 only when the IP isn't in the FixedIps table
1040 * start of re-work of compute/api's 'get_all' to handle more search options
1041 * Silence warning in case tests.sqlite doesn't exist
1042 * fix libvirt test
1043@@ -17540,7 +17572,7 @@ CHANGES
1044 * Include migrate_repo/versions/*.sql in tarball
1045 * Ensure auto-delete is false on Topic Queues
1046 * refactored the security_group tests a bit and broke up a few of them into smaller tests
1047-* Reverses the self.auto_delete = True that was added to TopicPublisher in the bugfix for lp804063. That bugfix should have only added auto_delete = True to FanoutPublisher to match the previous change to FanoutConsumer
1048+* Reverses the self.auto_delete = True that was added to TopicPublisher in the bugfix for lp804063. That bugfix should have only added auto_delete = True to FanoutPublisher to match the previous change to FanoutConsumer
1049 * Added 'self.auto_delete = True' to the two Publisher subclasses that lacked that setting
1050 * Added the '--fixes' tag to link to bug
1051 * Added self.auto_delete = True to the Publisher subclasses that did not have that set
1052@@ -17590,8 +17622,12 @@ CHANGES
1053 * Merged trunk
1054 * Fixes Bug #803563 by changing how nova passes options in to glance. Before, if limit or marker were not set, we would pass limit=0 and marker=0 in to glance. However, marker is supposed to be an image id. With this change, if limit or marker are not set, they are simply not passed into glance. Glance is free then to choose the default behavior
1055 * Fixed indentation issues Fixed min/max_count checking issues Fixed a wrongly log message when zone aware scheduler finds no suitable hosts
1056+
1057+diablo-2
1058+--------
1059+
1060 * Fixes Bug #803563 by changing how nova passes options in to glance. Before, if limit or marker were not set, we would pass limit=0 and marker=0 in to glance. However, marker is supposed to be an image id. With this change, if limit or marker are not set, they are simply not passed into glance. Glance is free then to choose the default behavior
1061-* Sets 'exclusive=True' on Fanout amqp queues. We create the queues with uuids, so the consumer should have exclusive access and they should get removed when done (service stop). exclusive implies auto_delete. Fixes lp:803165
1062+* Sets 'exclusive=True' on Fanout amqp queues. We create the queues with uuids, so the consumer should have exclusive access and they should get removed when done (service stop). exclusive implies auto_delete. Fixes lp:803165
1063 * don't pass zero in to glance image service if no limit or marker are present
1064 * more incorrect list type casting in create_network
1065 * removed the list type cast in create_network on the NETADDR projects
1066@@ -17602,7 +17638,7 @@ CHANGES
1067 * "nova-manage vm list" was still referencing the old "image_id" column, which was renamed to "image_ref" at revision 1144
1068 * Implement backup with rotation and expose this functionality in the OS API
1069 * Allow a port name in the server ref for image create
1070-* Fanout queues use unique queue names, so the consumer should have exclusive access. This means that they also get auto deleted when we're done with them, so they're not left around on a service restart. Fixes lp:803165
1071+* Fanout queues use unique queue names, so the consumer should have exclusive access. This means that they also get auto deleted when we're done with them, so they're not left around on a service restart. Fixes lp:803165
1072 * pep8 fix
1073 * removed extra stubout, switched to isinstance and catching explicit exception
1074 * get latest branch
1075@@ -17669,10 +17705,10 @@ CHANGES
1076 * Re-merging code for generating system-usages to get around bzr merge braindeadness
1077 * getting started
1078 * Added floating IP support in OS API
1079-* This speeds up multiple runs of tests to start up much faster because it only runs db migrations if the test db doesn't exist. It also adds the -r/--recreate-db option to run_tests.sh to delete the tests db so it will be recreated
1080+* This speeds up multiple runs of tests to start up much faster because it only runs db migrations if the test db doesn't exist. It also adds the -r/--recreate-db option to run_tests.sh to delete the tests db so it will be recreated
1081 * small formatting change
1082 * breaking up into individual tests for security_groups
1083-* Proposing this because it is a critical fix before milestone. Suggestions on testing it are welcome
1084+* Proposing this because it is a critical fix before milestone. Suggestions on testing it are welcome
1085 * logging fixes
1086 * removed unneded mac parameter to lease and release fixed ip functions
1087 * Made _issue_novaclient_command() behave better. Fixed a bunch of tests
1088@@ -17722,7 +17758,7 @@ CHANGES
1089 * Merged from trunk
1090 * Add api methods to delete provider firewall rules
1091 * This small change restores single quotes and double quotes as they were before in the filter expression for retrieving the PIF (physical interface) xenapi should use for creating VLAN interfaces
1092-* Remove the unnecessary insertion of whitespace. This happens to be enough to make this patch apply on recent versions of XenServer / Xen Cloud Platform
1093+* Remove the unnecessary insertion of whitespace. This happens to be enough to make this patch apply on recent versions of XenServer / Xen Cloud Platform
1094 * Removes the usage of the IPy module in favor of the netaddr module
1095 * - update glance image fixtures with expected checksum attribute - ensure checksum attribute is handled properly in image service
1096 * mailmap
1097@@ -17768,7 +17804,7 @@ CHANGES
1098 * image/s3: typo
1099 * same typo i made before!
1100 * on 2nd run through filter_hosts, we've already accounted for the topic memory needs converted to Bytes from MB
1101-* LeastCostScheduler wasn't checking for topic cost functions correctly. Added support so that --least_cost_scheduler_cost_functions only needs to have method names specified, instead of the full blown version with module and class name. Still works the old way, too
1102+* LeastCostScheduler wasn't checking for topic cost functions correctly. Added support so that --least_cost_scheduler_cost_functions only needs to have method names specified, instead of the full blown version with module and class name. Still works the old way, too
1103 * requested_mem typo
1104 * more typos
1105 * typo in least cost scheduler
1106@@ -17808,7 +17844,7 @@ CHANGES
1107 * libvirt test for deleting provider firewall rules
1108 * Make firewall rules tests idempotent, move IPy=>netaddr, add deltete test
1109 * merge from trunk
1110-* 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
1111+* 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
1112 * Make sure there are actually rules to test against
1113 * Add test for listing provider firewall rules
1114 * pep8: remove newline at end of file
1115@@ -17850,7 +17886,7 @@ CHANGES
1116 * Bug fixing
1117 * Added flavor extra specs controller
1118 * Initial unit test (failing)
1119-* This catches the InstanceNotFound exception on create, and ignores it. This prevents errors in the compute log, and causes the server to not be built (it should only get InstanceNotFound if the server was deleted right after being created). This is a temporary fix that should be fixed correctly once no-db-messaging stuff is complete
1120+* This catches the InstanceNotFound exception on create, and ignores it. This prevents errors in the compute log, and causes the server to not be built (it should only get InstanceNotFound if the server was deleted right after being created). This is a temporary fix that should be fixed correctly once no-db-messaging stuff is complete
1121 * allocate and release implementation
1122 * fixed pep8 issues
1123 * merge from trunk
1124@@ -17927,7 +17963,7 @@ CHANGES
1125 * Removed debugging and switched eventlet to monkey patch everything
1126 * Removed unneeded import
1127 * Tests for WSGI/Launcher
1128-* Remove the unnecessary insertion of whitespace. This happens to be enough to match this patch apply on recent versions of XenServer / Xen Cloud Platform
1129+* Remove the unnecessary insertion of whitespace. This happens to be enough to match this patch apply on recent versions of XenServer / Xen Cloud Platform
1130 * trunk merge
1131 * fix lp 798361
1132 * Removed logging logic from __init__, added concept of Launcher...no tests for it yet
1133@@ -17966,7 +18002,7 @@ CHANGES
1134 * General cleanup and refactor of a lot of the API/WSGI service code
1135 * Adding tests for is_uuid_like
1136 * Using proper UUID format for uuids
1137-* Implements a portion of ec2 ebs boot. What's implemented - block_device_mapping option for run instance with volume (ephemeral device and no device isn't supported yet) - stop/start instance
1138+* Implements a portion of ec2 ebs boot. What's implemented - block_device_mapping option for run instance with volume (ephemeral device and no device isn't supported yet) - stop/start instance
1139 * updated fixed ip and floating ip exceptions
1140 * pep8: white space/blank lines
1141 * Merging trunk
1142@@ -17974,7 +18010,7 @@ CHANGES
1143 * moving instance existance logic down to api layer
1144 * Ensure os_type and architecture get set correctly
1145 * Make EC2 update_instance() only update updatable_fields, rather than all fields. Patch courtesy of Vladimir Popovski
1146-* Fixes two minor bugs (lp795123 and lp795126) in the extension mechanism. The first bug is that each extension has _check_extension() called twice on it; this is a minor cosmetic problem, but the second is that extensions which flunk _check_extension() are still added. The proposed fix is to make _check_extensions() return True or False, then make _add_extension() call it from the top and return immediately if _check_extensions() returns False
1147+* Fixes two minor bugs (lp795123 and lp795126) in the extension mechanism. The first bug is that each extension has _check_extension() called twice on it; this is a minor cosmetic problem, but the second is that extensions which flunk _check_extension() are still added. The proposed fix is to make _check_extensions() return True or False, then make _add_extension() call it from the top and return immediately if _check_extensions() returns False
1148 * Fixes a bug where a misleading error message is outputted when there's a sqlalchemy-migrate version conflict
1149 * Result is already in JSON format from _wait_for_agent
1150 * Fix PEP8
1151@@ -18012,7 +18048,7 @@ CHANGES
1152 * We don't check result in caller, so don't set variable to return value
1153 * Remove debugging statement
1154 * Fix lp795123 and lp795126 by making _check_extension() return True or False and checking the result only from the top of _add_extension()
1155-* Glance host defaults to rather than localhost
1156+* Glance host defaults to rather than localhost
1157 * Upstream merge
1158 * add in dhcp drawing
1159 * Rename: intance_type_metadata -> instance_type_extra_specs
1160@@ -18178,7 +18214,7 @@ CHANGES
1161 * Improved tests
1162 * removing unnecessary lines
1163 * wsgi can now handle dispatching action None more elegantly
1164-* This fixes the server_metadata create and update functions that were returning req.body (as a string) instead of body (deserialized body dictionary object). It also adds checks where appropriate to make sure that body is not empty (and return 400 if it is). Tests updated/added where appropriate
1165+* This fixes the server_metadata create and update functions that were returning req.body (as a string) instead of body (deserialized body dictionary object). It also adds checks where appropriate to make sure that body is not empty (and return 400 if it is). Tests updated/added where appropriate
1166 * removed yucky None return types
1167 * merging trunk
1168 * trunk merge
1169@@ -18196,7 +18232,7 @@ CHANGES
1170 * block migration feature added
1171 * Reorder firewall rules so the common path is shorter
1172 * ec2 api method allocate_address ; raises exception.NoFloatingIpsDefined instead of UnknownError when there aren't any floating ips available
1173-* in XML Serialization of output, the toprettyxml() call would sometimes return a str() and sometimes unicode(), I've forced encoding to utf-8 to ensure that we always get str(). This fixes the related bug
1174+* in XML Serialization of output, the toprettyxml() call would sometimes return a str() and sometimes unicode(), I've forced encoding to utf-8 to ensure that we always get str(). This fixes the related bug
1175 * A recent commit added a couple of directories that don't belong in version control. Remove them again
1176 * adding support for cusom serialization methods
1177 * forgot a comma
1178@@ -18312,7 +18348,7 @@ CHANGES
1179 * Remove ipy from network code and replace with netaddr
1180 * Remove ipy from nova/api/ec2/cloud.py and use netaddr
1181 * Remove ipy from nova-manage and use netaddr
1182-* This branch allows marker and limit parameters to be used on image listing (index and detail) requests. It parses the parameters from the request, and passes it along to the glance_client, which can now handle these parameters. Essentially all of the logic for the pagination is handled in glance, we just pass along the correct parameters and do some error checking
1183+* This branch allows marker and limit parameters to be used on image listing (index and detail) requests. It parses the parameters from the request, and passes it along to the glance_client, which can now handle these parameters. Essentially all of the logic for the pagination is handled in glance, we just pass along the correct parameters and do some error checking
1184 * merge from trunk, resolved conflicts
1185 * Update the OSAPI images controller to use 'serverRef' for image create requests
1186 * Changed the error raise to not be AdminRequired when admin is not, in fact, required
1187@@ -18328,7 +18364,7 @@ CHANGES
1188 * Small pylint fixes
1189 * merge with trunk
1190 * Fixed incorrect exception
1191-* This branch removes nwfilter rules when instances are terminated to prevent resource leakage and serious eventual performance degradation. Without this patch, launching instances and restarting nova-compute eventually become very slow
1192+* This branch removes nwfilter rules when instances are terminated to prevent resource leakage and serious eventual performance degradation. Without this patch, launching instances and restarting nova-compute eventually become very slow
1193 * merge with trunk
1194 * resolve conflicts with trunk
1195 * Update migrate script version to 22
1196@@ -18346,8 +18382,8 @@ CHANGES
1197 * Fixed pip-requires double requirement
1198 * Added a test case for XML serialization
1199 * Removed unused and erroneous (yes, it was both) function
1200-* paramiko is not installed into the venv, but is required by smoketests/base.py. Added paramiko to tools/pip-requires
1201-* Changes all uses of utcnow to use the version in utils. This is a simple wrapper for datetime.datetime.utcnow that allows us to use fake values for tests
1202+* paramiko is not installed into the venv, but is required by smoketests/base.py. Added paramiko to tools/pip-requires
1203+* Changes all uses of utcnow to use the version in utils. This is a simple wrapper for datetime.datetime.utcnow that allows us to use fake values for tests
1204 * Set pylint to ignore correct lines that it could not determine were correct, due to the means by which eventlet.green imported subprocess Minimized the number of these lines to ignore
1205 * LDAP optimization and fix for one small bug caused huge performance leak. Dashboard's benchmarks showed overall x22 boost in page request completion time
1206 * Adds LeastCostScheduler which uses a series of cost functions and associated weights to determine which host to provision to
1207@@ -18360,7 +18396,7 @@ CHANGES
1208 * Flush AuthManager's cache before each test
1209 * Fixed FakeLdapDriver, made it call LdapDriver.__init__
1210 * Merged with trunk
1211-* This change set adds the ability to create new servers with an href that points to a server image on any glance server (not only the default one configured). This means you can create a server with imageRef = http://glance1:9292/images/3 and then also create one with imageRef = http://glance2:9292/images/1. Using the old way of passing in an image_id still works as well, and will use the default configured glance server (imageRef = 3 for instance)
1212+* This change set adds the ability to create new servers with an href that points to a server image on any glance server (not only the default one configured). This means you can create a server with imageRef = http://glance1:9292/images/3 and then also create one with imageRef = http://glance2:9292/images/1. Using the old way of passing in an image_id still works as well, and will use the default configured glance server (imageRef = 3 for instance)
1213 * added nova_adminclient to tools/pip-requires
1214 * merged trunk
1215 * Added paramiko to tools/pip-requires
1216@@ -18403,7 +18439,7 @@ CHANGES
1217 * list --reservation now works across zones
1218 * fix novarc to work on mac and zsh
1219 * merged, with trunk, fixed the test failure, and split the test into 3 as per peer review
1220-* 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'
1221+* 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'
1222 * start the flat network
1223 * more testing fun
1224 * fixed as per peer review to make more consistent
1225@@ -18423,7 +18459,7 @@ CHANGES
1226 * touch ups
1227 * Updates to the 018_rename_server_management_url to avoid adding and dropping a column. Just simply rename the column
1228 * basic reservation id support to GET /servers
1229-* - move osapi-specific wsgi code from nova/wsgi.py to nova/api/openstack/wsgi.py - refactor wsgi modules to use more object-oriented approach to wsgi request handling: - Resource object steps up to original Controller position - Resource coordinates deserialization, dispatch to controller, serialization - serialization and deserialization broken down to be more testable/flexible
1230+* - move osapi-specific wsgi code from nova/wsgi.py to nova/api/openstack/wsgi.py - refactor wsgi modules to use more object-oriented approach to wsgi request handling: - Resource object steps up to original Controller position - Resource coordinates deserialization, dispatch to controller, serialization - serialization and deserialization broken down to be more testable/flexible
1231 * merge from trunk
1232 * make the stubs
1233 * use the host
1234@@ -18442,6 +18478,10 @@ CHANGES
1235 * Renamed migration to 020
1236 * osapi: added support for header X-Auth-Project-Id
1237 * added /zones/boot reservation id tests
1238+
1239+diablo-1
1240+--------
1241+
1242 * Adds hooks for applying ovs flows when vifs are created and destroyed for XenServer instances
1243 * Logs the exception if metadata fails and returns a 500 with an error message to the client
1244 * Fixing a bunch of conflicts
1245@@ -18454,7 +18494,7 @@ CHANGES
1246 * Incremented version of migration script to reflect changes in trunk
1247 * switch to using webob exception
1248 * Added new snapshots table to InnoDB migrations
1249-* Adds a few more status messages to error states on image register for the ec2 api. This will hopefully provide users of the ec2 api with a little more info if their registration fails
1250+* Adds a few more status messages to error states on image register for the ec2 api. This will hopefully provide users of the ec2 api with a little more info if their registration fails
1251 * Cleaned up bug introduced after fixing pep8 errors
1252 * Fixing Scheduler Tests
1253 * Cleaned up bug introduced after fixing ^Cp8 errors
1254@@ -18530,7 +18570,7 @@ CHANGES
1255 * Fixing xen and vmware tests by correctly mocking glance client
1256 * Fixing integration tests by correctly stubbing image service
1257 * More image_id to image_ref stuff. Also fixed tests in test_servers
1258-* When encrypting passwords in xenapi's SimpleDH(), we shouldn't send a final newline to openssl, as it'll use that as encryption data. However, we do need to make sure there's a newline on the end when we write the base64 string for decoding.. Made these changes and updated the test
1259+* When encrypting passwords in xenapi's SimpleDH(), we shouldn't send a final newline to openssl, as it'll use that as encryption data. However, we do need to make sure there's a newline on the end when we write the base64 string for decoding.. Made these changes and updated the test
1260 * Fixes the bug introduced by rpc-multicall that caused some test_service.py tests to fail by pip-requiring a later version of mox
1261 * added \n is not needed with -A
1262 * now pip-requires mox version 0.5.3
1263@@ -18562,7 +18602,7 @@ CHANGES
1264 * Commit the migration script
1265 * fixed docstrings and general tidying
1266 * remove _take_action_to_instance
1267-* fix calls to openssl properly now. Only append \n to stdin when decoding. Updated the test slightly, also
1268+* fix calls to openssl properly now. Only append \n to stdin when decoding. Updated the test slightly, also
1269 * fixed read_only check
1270 * Fix pep8 errors
1271 * Fix pep8 violations
1272@@ -18651,7 +18691,7 @@ CHANGES
1273 * Always create Service consumers no matter if report_interval is 0 Fix tests to handle how Service loads Consumers now
1274 * catch greenlet.GreenletExit when shutting service down
1275 * fix consumers to actually be deleted and clean up cloud test
1276-* fakerabbit's declare_consumer should support more than 1 consumer. also: make fakerabbit Backend.consume be an iterator like it should be.
1277+* fakerabbit's declare_consumer should support more than 1 consumer. also: make fakerabbit Backend.consume be an iterator like it should be.
1278 * convert fanout_cast to ConnectionPool
1279 * pep8 and comment fixes
1280 * Add a connection pool for rpc cast/call Use the same rabbit connection for all topic listening and wait to be notified vs doing a 0.1 second poll for each
1281@@ -18668,14 +18708,14 @@ CHANGES
1282 * make the test work
1283 * Merged with trunk
1284 * Several changes designed to bring the openstack api 1.1 closer to spec - add ram limits to the nova compute quotas - enable injected file limits and injected file size limits to be overridden in the quota database table - expose quota limits as absolute limits in the openstack api 1.1 limits resource - add support for controlling 'unlimited' quotas to nova-manage
1285-* During the API create call, the API would kick off a build and then loop in a greenthread waiting for the scheduler to pick a host for the instance. After API would see a host was picked, it would cast to the compute node's set_admin_password method
1286+* During the API create call, the API would kick off a build and then loop in a greenthread waiting for the scheduler to pick a host for the instance. After API would see a host was picked, it would cast to the compute node's set_admin_password method
1287 * starting breakdown of nova.compute.api.create()
1288-* fix test. instance is not updated in DB with admin password in the API anymore
1289+* fix test. instance is not updated in DB with admin password in the API anymore
1290 * Merged upstream
1291 * pep8 fixes
1292 * Initial tests
1293 * fix forever looping on a password reset API call
1294-* updating admin_pass moved down to compute where the password is actually reset. only update if it succeeds
1295+* updating admin_pass moved down to compute where the password is actually reset. only update if it succeeds
1296 * merged trunk
1297 * change install_ref.admin_password to instance_ref.admin_pass to match the DB
1298 * Merged trunk
1299@@ -18705,17 +18745,17 @@ CHANGES
1300 * Add unittests for cloning volumes
1301 * merged recent trunk
1302 * merged recent trunk
1303-* Make snapshot_id=None a default value in VolumeManager:create_volume(). It is not a regular case to create a volume from a snapshot
1304+* Make snapshot_id=None a default value in VolumeManager:create_volume(). It is not a regular case to create a volume from a snapshot
1305 * Don't need to import json
1306 * Fix wrong call of the volume api create()
1307 * pep8 fix in nova/compute/api.py
1308-* instead of the API spawning a greenthread to wait for a host to be picked, the instance to boot, etc for setting the admin password... let's push the admin password down to the scheduler so that compute can just take care of setting the password as a part of the build process
1309+* instead of the API spawning a greenthread to wait for a host to be picked, the instance to boot, etc for setting the admin password... let's push the admin password down to the scheduler so that compute can just take care of setting the password as a part of the build process
1310 * tests working again
1311 * eventlet.spawn_n() expects the function and arguments, but it expects the arguments unpacked since it uses *args
1312 * Don't pass a tuple since spawn_n will get the arguments with *args anyway
1313 * move devices back
1314 * Using the root-password subcommand of the nova client results in the password being changed for the instance specified, but to a different unknown password. The patch changes nova to use the password specified in the API call
1315-* Pretty simple. We call openssl to encrypt the admin password, but the recent changes around this code forgot to strip the newline off the read from stdout
1316+* Pretty simple. We call openssl to encrypt the admin password, but the recent changes around this code forgot to strip the newline off the read from stdout
1317 * DHSimple's decrypt needs to append \n when writing to stdin
1318 * need to strip newline from openssl stdout data
1319 * merge with trey
1320@@ -18822,7 +18862,7 @@ CHANGES
1321 * fixed silly issue with variable needing to be named 'id' for the url mapper, also caught new exception type where needed
1322 * This is the groundwork for the upcoming distributed scheduler changes. Nothing is actually wired up here, so it shouldn't break any existing code (and all tests pass)
1323 * Merging trunk
1324-* Get rid of old virt/images.py functions that are no longer needed. Checked for any loose calls to these functions and found none. All tests pass for me
1325+* Get rid of old virt/images.py functions that are no longer needed. Checked for any loose calls to these functions and found none. All tests pass for me
1326 * Update OSAPI v1.1 extensions so that it supports RequestExtensions. ResponseExtensions were removed since the new RequestExtension covers both use cases. This branch also removes some of the odd serialization code in the RequestExtensionController that converted dictionary objects into webob objects. RequestExtension handlers should now always return proper webob objects
1327 * Addressing bug #785763. Usual default for maximum number of DHCP leases in dnsmasq is 150. This prevents instances to obtain IP addresses from DHCP in case we have more than 150 in our network. Adding myself to Authors
1328 * foo
1329@@ -18832,7 +18872,7 @@ CHANGES
1330 * Fixed some tests
1331 * merge with trunk
1332 * Added an EC2 API endpoint that'll allow import of public key. Prior, api only allowed generation of new keys
1333-* This fix ensures that kpartx -d is called in the event that tune2fs fails during key injection, as it does when trying to inject a key into a windows instance. Bug #760921 is a symptom of this issue, as if kpartx -d is not called then partitions remain mapped that prevent the underlying nbd from being reused
1334+* This fix ensures that kpartx -d is called in the event that tune2fs fails during key injection, as it does when trying to inject a key into a windows instance. Bug #760921 is a symptom of this issue, as if kpartx -d is not called then partitions remain mapped that prevent the underlying nbd from being reused
1335 * Add new flag 'max_kernel_ramdisk_size' to specify a maximum size of kernel or ramdisk so we don't copy large files to dom0 and fill up /boot/guest
1336 * The XenAPI driver uses openssl as part of the nova-agent implementation to set the password for root. It uses a temporary file insecurely and unnecessarily. Change the code to write the password directly to stdin of the openssl process instead
1337 * The tools/* directory is now included in pep8 runs. Added an opt-out system for excluding files/dirs from pep8 (using GLOBIGNORE)
1338@@ -18842,7 +18882,7 @@ CHANGES
1339 * fixed pep8 issue
1340 * merge from trunk
1341 * Fail early if requested imageRef does not exist when creating a server
1342-* Separate out tests for when unfilter is called from iptables vs. nwfilter driver. Re: lp783705
1343+* Separate out tests for when unfilter is called from iptables vs. nwfilter driver. Re: lp783705
1344 * Moved back templates and fixed pep8 issue. Template move was due to breaking packaging with template moves. That will need to happen in a later merge
1345 * further refactoring of wsgi module; adding documentation and tests
1346 * don't give instance quota errors with negative values
1347@@ -18927,7 +18967,7 @@ CHANGES
1348 * Changed builder to match specs and added test
1349 * add migration for proper name
1350 * Update test case to ensure password gets set correctly
1351-* make token use typo that is in database. Also fix now -> utcnow and stop using . syntax for dealing with tokens
1352+* make token use typo that is in database. Also fix now -> utcnow and stop using . syntax for dealing with tokens
1353 * Added missing metadata join to instance_get calls
1354 * Avoid using spawn_n to fix LP784132
1355 * add ram limits to instance quotas
1356@@ -18996,9 +19036,9 @@ CHANGES
1357 * started on integrating HostFilter
1358 * Add support for rbd snapshots
1359 * Merging in trunk
1360-* I'm assuming that openstack doesnt work with python < 2.6 here (which I read somewhere on the wiki). This patch will check to make sure python >= 2.6 is installed, and also allow it to work with python 2.7 (and greater in the future)
1361+* I'm assuming that openstack doesnt work with python < 2.6 here (which I read somewhere on the wiki). This patch will check to make sure python >= 2.6 is installed, and also allow it to work with python 2.7 (and greater in the future)
1362 * merge lp:nova
1363-* XenAPI was not implemented to allow for multiple simultaneous XenAPI requests. A single XenAPIConnection (and thus XenAPISession) is used for all queries. XenAPISession's wait_for_task method would set a self.loop = for looping calls to _poll_task until task completion. Subsequent (parallel) calls to wait_for_task for another query would overwrite this. XenAPISession._poll_task was pulled into the XenAPISession.wait_for_task method to avoid having to store self.loop
1364+* XenAPI was not implemented to allow for multiple simultaneous XenAPI requests. A single XenAPIConnection (and thus XenAPISession) is used for all queries. XenAPISession's wait_for_task method would set a self.loop = for looping calls to _poll_task until task completion. Subsequent (parallel) calls to wait_for_task for another query would overwrite this. XenAPISession._poll_task was pulled into the XenAPISession.wait_for_task method to avoid having to store self.loop
1365 * pep8 fixes
1366 * Merged trunk
1367 * volume/driver: make unit test, test_volume, pass
1368@@ -19028,9 +19068,9 @@ CHANGES
1369 * updated previous calls referring to the flags to use the column from the networks table instead
1370 * merged from trunk
1371 * handle instance_type_ids that are NULL during upgrade to integers
1372-* fix for lp760921. Previously, if tune2fs failed, as it does on windows hosts, kpartx -d also failed to be called which leaves mapped partitions that retain holds on the nbd device. These holds cause the observed errors
1373+* fix for lp760921. Previously, if tune2fs failed, as it does on windows hosts, kpartx -d also failed to be called which leaves mapped partitions that retain holds on the nbd device. These holds cause the observed errors
1374 * if a LoopingCall has canceled the loop, break out early instead of sleeping any more than needed
1375-* Add a test for parallel builds. verified this test fails before this fix and succeeds after this fix
1376+* Add a test for parallel builds. verified this test fails before this fix and succeeds after this fix
1377 * incorporated ImageNotFound instead of NotFound
1378 * merged from trunk
1379 * misc related network manager refactor and cleanup
1380@@ -19059,7 +19099,7 @@ CHANGES
1381 * Merged trunk
1382 * Updated MANIFEST for template move
1383 * NoValidHost exception test
1384-* Fixes an issue with conversion of images that was introduced by exception refactoring. This makes the exceptions when trying to locate an ec2 id clearer and also adds some tests for the conversion methods
1385+* Fixes an issue with conversion of images that was introduced by exception refactoring. This makes the exceptions when trying to locate an ec2 id clearer and also adds some tests for the conversion methods
1386 * oops fixed a docstring
1387 * Pep8 stuff
1388 * Bluprint URL: https://blueprints.launchpad.net/nova/+spec/improve-pylint-scores/
1389@@ -19085,7 +19125,7 @@ CHANGES
1390 * extracted xenserver capability reporting from dabo's dist-scheduler branch and added tests
1391 * migrate back updated_at correctly
1392 * added in log_notifier for easier debugging
1393-* Add priority based queues to notifications. Remove duplicate json encoding in notifier (rpc.cast does encoding... ) make no_op_notifier match rabbit one for signature on notify()
1394+* Add priority based queues to notifications. Remove duplicate json encoding in notifier (rpc.cast does encoding... ) make no_op_notifier match rabbit one for signature on notify()
1395 * Bugfix #780784. KeyError when creating custom image
1396 * removed unused wild card imports, replaced sqlalchemy wildcard import with explicit imports
1397 * removed unused wild card imports, replaced sqlalchemy wildcard import with explicit imports
1398@@ -19097,7 +19137,7 @@ CHANGES
1399 * fix migration bug
1400 * Pep8
1401 * Test
1402-* remove stubbing of XenAPISession.wait_for_task for xenapi tests as it doesn't need to be faked. Also removed duplicate code that stubbed xenapi_conn._parse_xmlrpc_value
1403+* remove stubbing of XenAPISession.wait_for_task for xenapi tests as it doesn't need to be faked. Also removed duplicate code that stubbed xenapi_conn._parse_xmlrpc_value
1404 * migration bug fixes
1405 * Change xenapi's wait_for_task to handle multiple simultaenous queries to fix lp:766404
1406 * Added GitPython to [install_dir]/tools/pip-requires
1407@@ -19123,7 +19163,7 @@ CHANGES
1408 * merge from trunk
1409 * Set publish_errors default to False
1410 * convert quota table to key-value
1411-* Simple fix for this issue. Tries to raise an exception passing in a variable that doesn't exist, which causes an error
1412+* Simple fix for this issue. Tries to raise an exception passing in a variable that doesn't exist, which causes an error
1413 * Fixed duplicate function
1414 * Review feedback
1415 * Review feedback
1416@@ -19140,7 +19180,7 @@ CHANGES
1417 * Sanitize get_console_output results. See bug #758054
1418 * revised file docs
1419 * New author in town
1420-* Changes to allow a VM to boot from iso image. A blank HD is also attached with a size corresponding to the instance type
1421+* Changes to allow a VM to boot from iso image. A blank HD is also attached with a size corresponding to the instance type
1422 * Added stub function for a referenced, previously non-existant function
1423 * Merged trunk
1424 * grabbed from dist-sched branch
1425@@ -19197,7 +19237,7 @@ CHANGES
1426 * ensure create image conforms to OS API 1.1 spec
1427 * merge updates from trunk
1428 * Added support in the nova openstack api for requests with local hrefs, e.g., "imageRef":"2" Previously, it only supported "imageRef":"http://foo.com/images/2". The 1.1 api spec defines both approaches
1429-* Add a flag to allow the user to specify a dnsmasq configuration file for nova-network to use when starting dnsmasq. Currently the command line option is set to "--config-fil=" with nothing specified. This branch will leave it as it is if the user does not specify a config file, but will utilize the specific file if they do
1430+* Add a flag to allow the user to specify a dnsmasq configuration file for nova-network to use when starting dnsmasq. Currently the command line option is set to "--config-fil=" with nothing specified. This branch will leave it as it is if the user does not specify a config file, but will utilize the specific file if they do
1431 * merged from trunk
1432 * implemented review suggestion EAFP style, and fixed test stub fake_show needs to have image_state = available or other tests will fail
1433 * got rid of extra whitespace
1434@@ -19333,7 +19373,7 @@ CHANGES
1435 * revert changes that doesn't affect the bug
1436 * in doesn't work properly on instance_ref
1437 * Another small round of pylint clean-up
1438-* Added an option to run_tests.sh so you can run just pep8. So now you can: ./run_tests.sh --just-pep8 or ./run_tests.sh -p
1439+* Added an option to run_tests.sh so you can run just pep8. So now you can: ./run_tests.sh --just-pep8 or ./run_tests.sh -p
1440 * merge trunk
1441 * fix display of vpn instance id and add output rule so it can be tested from network host
1442 * Exit early if tests fail, before pep8 is run
1443@@ -19478,7 +19518,7 @@ CHANGES
1444 2011.2rc1
1445 ---------
1446
1447-* Rework GlanceImageService._translate_base() to not call BaseImageService._translate_base() otherwise the wrong class attributes are used in properties construction..
1448+* Rework GlanceImageService._translate_base(
1449 * Updated following to RIck's comments
1450 * Rebased to trunk rev 987
1451 * Rework GlanceImageService._translate_base() to not call BaseImageService._translate_base() otherwise the wrong class attributes are used in properties construction..
1452@@ -19502,7 +19542,7 @@ CHANGES
1453 * Minor fixes
1454 * Fix RBDDriver in volume manager. discover_volume was raising exception. Modified local_path as well
1455 * Fixes VMware Connection to inherit from ComputeDriver
1456-* Fixes s3.py to allow looking up images by name. Smoketests run unmodified again with this change!
1457+* Fixes s3.py to allow looking up images by name. Smoketests run unmodified again with this change!
1458 * move from try_execute to _execute
1459 * Make VMWare Connection inherit from ComputeDriver
1460 * add up and down .sh
1461@@ -19593,6 +19633,10 @@ CHANGES
1462 * Ignore errors when deleting the default route in the ensure_bridge function
1463 * bzr ignore the CA dir
1464 * merge prop tweaks
1465+
1466+2011.2gamma1
1467+------------
1468+
1469 * Import translations from Launchpad
1470 * added Zones doc
1471 * Update the describe_image_attribute and modify_image_attribute functions in the EC2 API so they use the top level 'is_public' attribute of image objects. This brings these functions in line with the base image service
1472@@ -19608,17 +19652,17 @@ CHANGES
1473 * Fixes issues with describe instances due to improperly set metadata
1474 * Keep guest instances when libvirt host restarts
1475 * fix tests from moving access check into update and delete
1476-* Added support for listing addresses of a server in the openstack api. Now you can GET * /servers/1/ips * /servers/1/ips/public * /servers/1/ips/private Supports v1.0 json and xml. Added corresponding tests
1477+* Added support for listing addresses of a server in the openstack api. Now you can GET * /servers/1/ips * /servers/1/ips/public * /servers/1/ips/private Supports v1.0 json and xml. Added corresponding tests
1478 * Log libvirt errcode on exception
1479 * This fixes how the metadata and addresses collections are serialized in xml responses
1480 * Fix to correct libvirt error code when the domain is not found
1481 * merged trunk
1482 * Removed commented-out old 'delete instance on SHUTOFF' code
1483-* Automatically add the metadata address to the network host. This allows guests to ARP for the address properly
1484+* Automatically add the metadata address to the network host. This allows guests to ARP for the address properly
1485 * merged trunk and resolved conflict
1486 * slight typo
1487 * clarified nova-manage instance_type create error output on duplicate flavorid
1488-* This branch is a patch for fixing below issue. > Bug #746821: live_migration failing due to network filter not found Link a bug report
1489+* This branch is a patch for fixing below issue. > Bug #746821: live_migration failing due to network filter not found Link a bug report
1490 * fix pep8 violation
1491 * Update instances table to use instance_type_id instead of the old instance_type column which represented the name (ex: m1.small) of an instance type
1492 * Drop extra 'None' arg from dict.get call
1493@@ -19647,18 +19691,18 @@ CHANGES
1494 * Make description of volume_id more generic
1495 * add the tests
1496 * pep8 cleanup
1497-* 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
1498-* ec2 api run_instances checks for image status must be 'available'. Overhauled test_run_instances for working set of test assertions
1499+* 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
1500+* ec2 api run_instances checks for image status must be 'available'. Overhauled test_run_instances for working set of test assertions
1501 * if we delete the old route when we move it we don't need to check for exists
1502 * merged trunk
1503 * removed comment on API compliance
1504-* Added an option to run_tests.sh so you can run just pep8. So now you can: ./run_tests.sh --just-pep8 or ./run_tests.sh -p
1505-* Add automatic metadata ip to network host on start. Also fix race where gw is readded twice
1506+* Added an option to run_tests.sh so you can run just pep8. So now you can: ./run_tests.sh --just-pep8 or ./run_tests.sh -p
1507+* Add automatic metadata ip to network host on start. Also fix race where gw is readded twice
1508 * Controllers now inherit from nova.api.openstack.common.OpenstackController
1509 * Merged trunk
1510 * Support providing an XML namespace on the XML output from the OpenStack API
1511 * Merged with trunk, fixed up test that wasn't checking namespace
1512-* Added support for listing addresses of a server in the openstack api. Now you can GET * /servers/1/ips * /servers/1/ips/public * /servers/1/ips/private Supports v1.0 json and xml. Added corresponding tests
1513+* Added support for listing addresses of a server in the openstack api. Now you can GET * /servers/1/ips * /servers/1/ips/public * /servers/1/ips/private Supports v1.0 json and xml. Added corresponding tests
1514 * check visibility on delete and update
1515 * YADU (Yet Another Docstring Update)
1516 * Make sure ca_folder is created before chdir()ing into it
1517@@ -19741,7 +19785,7 @@ CHANGES
1518 * Removed adminclient.py and added reference to the new nova-adminclient project in tools/pip-requires
1519 * Don't prefix adminPass with the first 4 chars of the instance name
1520 * Declares the flag for vncproxy_topic in compute.api
1521-* Fixes bug 741246. Ed Leafe's inject_file method for the agent plugin was mistakenly never committed after having to fix commits under wrong email address. vmops makes calls to this (previously) missing method
1522+* Fixes bug 741246. Ed Leafe's inject_file method for the agent plugin was mistakenly never committed after having to fix commits under wrong email address. vmops makes calls to this (previously) missing method
1523 * Attempt to circumvent errors in the API from improper/malformed responses from image service
1524 * fixes incorrect case of OpenStack API status response
1525 * Fixed network_info creating
1526@@ -19851,12 +19895,12 @@ CHANGES
1527 * Moving server update adminPass support to be v1.0-specific OS API servers update tests actually assert and pass now Enforcing server name being a string of length > 0
1528 * Adding Content-Type code to openstack.api.versions.Versions wsgi.Application
1529 * Fixes metadata for ec2_api to specify owner_id so that it filters properly
1530-* Makes the image decryption code use the per-project private key to decrpyt uploaded images if use_project_ca is set. This allows the decryption code to work properly when we are using a different ca per project
1531+* Makes the image decryption code use the per-project private key to decrpyt uploaded images if use_project_ca is set. This allows the decryption code to work properly when we are using a different ca per project
1532 * exception -> Fault
1533 * Merged trunk
1534 * Do not push 'None' to authorized_keys when no key is specified
1535 * Add missing method that prevent HyperV compute nodes from starting up
1536-* TopicAdapterConsumer uses a different callback model than TopicConsumer. This patch updates the console proxy to use this pattern
1537+* TopicAdapterConsumer uses a different callback model than TopicConsumer. This patch updates the console proxy to use this pattern
1538 * merge trunk
1539 * Uses the proc filesystem to check the volume size in volume smoketests so that it works with a very limited busybox image
1540 * merged trunk
1541@@ -19868,7 +19912,7 @@ CHANGES
1542 * Deepcopy the images, because the string formatting transforms them in-place
1543 * name, created_at, updated_at are required
1544 * Merged with trunk
1545-* "Incubator" is no more. Long live "contrib"
1546+* "Incubator" is no more. Long live "contrib"
1547 * Rename MockImageService -> FakeImageService
1548 * Removed unused super_verbose argument left over from previous code
1549 * Renamed incubator => contrib
1550@@ -19891,7 +19935,7 @@ CHANGES
1551 * add line
1552 * incorporate feedback from termie
1553 * Make dnsmasq_interface configurable
1554-* Stop nova-manage from reporting an error every time. Apparently except: catches sys.exit(0)
1555+* Stop nova-manage from reporting an error every time. Apparently except: catches sys.exit(0)
1556 * add comment
1557 * switch cast to a call
1558 * move functions around
1559@@ -19934,7 +19978,7 @@ CHANGES
1560 * Pass along the nbd flags although we dont support it just yet
1561 * cleaned up var name
1562 * made changes per code review: 1) removed import of image from objectstore 2) changed to comments instaed of triple quotes
1563-* Displays an error message to the user if an exception is raised. This is vital because if logfile is set, the exception shows up in the log and the user has no idea something went wrong
1564+* Displays an error message to the user if an exception is raised. This is vital because if logfile is set, the exception shows up in the log and the user has no idea something went wrong
1565 * Yet more docstring fixes
1566 * More style changes
1567 * Merged with trunk
1568@@ -20001,7 +20045,7 @@ CHANGES
1569 * merge lp:nova
1570 * Mixins for tests confuse pylint no end, and aren't necessary... you can stop the base-class from being run as a test by prefixing the class name with an underscore
1571 * Merged the two periodic_tasks functions, that snuck in due to parallel merges in compute.manager
1572-* Start up nova-api service on an unused port if 0 is specified. Fixes bug 744150
1573+* Start up nova-api service on an unused port if 0 is specified. Fixes bug 744150
1574 * Removed 'is not None' to do more general truth-checking. Added rather verbose testing
1575 * Merged with trunk
1576 * merge trunk
1577@@ -20029,8 +20073,8 @@ CHANGES
1578 * Fix utils checking
1579 * use_ipv6 now passing to interfaces.template as first level variable in libvirt_conn
1580 * Replaced import of an object with module import as per suggestion
1581-* Updates to the newest version of nova.sh, which includes:  * Installing new python dependencies  * Allows for use of interfaces other than eth0  * Adds a run_detached mode for automated testing
1582-* Now that it's an extension, it has to be v1.1. Also fixed up all the things that changed in v1.1
1583+* Updates to the newest version of nova.sh, which includes: * Installing new python dependencies * Allows for use of interfaces other than eth0 * Adds a run_detached mode for automated testing
1584+* Now that it's an extension, it has to be v1.1. Also fixed up all the things that changed in v1.1
1585 * merge trunk addressing Trey's comments
1586 * Initial extensification of volumes
1587 * Merged with trunk, resolved conflicts & code-flicts
1588@@ -20070,7 +20114,7 @@ CHANGES
1589 * merging trunk and resolving conflicts
1590 * Fix up destroy container
1591 * Fix up templating
1592-* Implement metadata resource for Openstack API v1.1. Includes: -GET /servers/id/meta -POST /servers/id/meta -GET /servers/id/meta/key -PUT /servers/id/meta/key -DELETE /servers/id/meta/key
1593+* Implement metadata resource for Openstack API v1.1. Includes: -GET /servers/id/meta -POST /servers/id/meta -GET /servers/id/meta/key -PUT /servers/id/meta/key -DELETE /servers/id/meta/key
1594 * Dont always assume qemu
1595 * Removed partition from setup_container
1596 * pep8 fix
1597@@ -20102,7 +20146,7 @@ CHANGES
1598 * merge trunk
1599 * Added detail keywork and i18n as per suggestions
1600 * incorporate feedback from termie
1601-* Implementation of blueprint hypervisor-vmware-vsphere-support. (Link to blueprint: https://blueprints.launchpad.net/nova/+spec/hypervisor-vmware-vsphere-support)
1602+* Implementation of blueprint hypervisor-vmware-vsphere-support. (Link to blueprint: https://blueprints.launchpad.net/nova/+spec/hypervisor-vmware-vsphere-support)
1603 * fix typo
1604 * Addressing Trey's comments. Removed disk_get_injectables, using _get_network_info's return value
1605 * Adds serverId to OpenStack API image detail per related_image blueprint
1606@@ -20119,7 +20163,7 @@ CHANGES
1607 * Added test_get_servers_with_bad_limit, test_get_servers_with_bad_offset and test_get_servers_with_bad_marker
1608 * pep8 cleanups
1609 * Added test_get_servers_with_limit_and_marker to test pagination with marker and limit request params
1610-* style and spacing fixed
1611+* style and spacing fixed
1612 * better error handling and serialization
1613 * add some more docs and make it more obvious which parts are examples
1614 * add an example of a versioned api
1615@@ -20212,7 +20256,7 @@ CHANGES
1616 * boto_v6 module is imported if the flag "use_ipv6" is set to True
1617 * pep8 fixes, backported some important fixes that didn't make it over from my testing system :-(
1618 * Move all types of locking into utils.synchronize decorator
1619-* Doh! Missed two places which were importing the old driver location
1620+* Doh! Missed two places which were importing the old driver location
1621 * Review feedback
1622 * make missing noVNC error condition a bit more fool-proof
1623 * clean some pep8 issues
1624@@ -20267,7 +20311,7 @@ CHANGES
1625 * more progress
1626 * use the nova Server object
1627 * separating out components of vnc console
1628-* Earlier versions of the python libvirt binding had getVersion in the libvirt namespace, not on the connection object. Check both
1629+* Earlier versions of the python libvirt binding had getVersion in the libvirt namespace, not on the connection object. Check both
1630 * Report the exception (happens when can't import libvirt)
1631 * Use subset_dict
1632 * Removing dead code
1633@@ -20291,9 +20335,9 @@ CHANGES
1634 * Filled out the base-driver contract, so it's not a false-promise
1635 * Enable flat manager support for ipv6
1636 * Adding a talk bubble to the nova.openstack.org site that points readers to the 2011.1 site and the docs.openstack.org site - similar to the swift.openstack.org site. I believe it helps people see more sites are available, plus they can get to the Bexar site if they want to. Going forward it'll be nice to use this talk bubble to point people to the trunk site from released sites
1637-* Correctly imports greenthread in libvirt_conn.py. It is used by live_migrate()
1638+* Correctly imports greenthread in libvirt_conn.py. It is used by live_migrate()
1639 * Forgot this in the rename of check_instance -> check_isinstance
1640-* Test the login behavior of the OpenStack API. Uncovered bug732866
1641+* Test the login behavior of the OpenStack API. Uncovered bug732866
1642 * trunk merge
1643 * Renamed check_instance -> check_isinstance to make intent clearer
1644 * Fix some crypto strangeness (\n in file_name field of certificates, wrong IMPL method for certificate_update)
1645@@ -20313,7 +20357,7 @@ CHANGES
1646 * Merging trunk
1647 * make executable
1648 * Adding BASE_IMAGE_ATTRS to ImageService
1649-* intermediate progress on vnc-nova integration. checking in to show vish
1650+* intermediate progress on vnc-nova integration. checking in to show vish
1651 * add in eventlet version of vnc proxy
1652 * Updating doc strings in accordance with PEP 257. Fixing order of imports in common.py
1653 * one more copyright fix
1654@@ -20460,10 +20504,10 @@ CHANGES
1655 * Ensuring kernel/ramdisk files are always removed in case of failures
1656 * merge trunk
1657 * merge trunk
1658-* Implement metadata resource for Openstack API v1.1. Includes: -GET /servers/id/meta -POST /servers/id/meta -GET /servers/id/meta/key -PUT /servers/id/meta/key -DELETE /servers/id/meta/key
1659+* Implement metadata resource for Openstack API v1.1. Includes: -GET /servers/id/meta -POST /servers/id/meta -GET /servers/id/meta/key -PUT /servers/id/meta/key -DELETE /servers/id/meta/key
1660 * Make "ApiError" the default error code for ApiError instances, rather than "Unknown."
1661 * When changing the project manager, if the new manager is not yet a project member, be sure to make them be a project member
1662-* Make the rpc cast/call debug calls show what topic they are sending to. This aides in debuugging
1663+* Make the rpc cast/call debug calls show what topic they are sending to. This aides in debuugging
1664 * Final touches and bug/pep8 fixes
1665 * Support for markers for pagination as defined in the 1.1 spec
1666 * Merged trunk
1667@@ -20486,7 +20530,7 @@ CHANGES
1668 * Fix a couple of things that assume that libvirt == kvm/qemu
1669 * Made fixed_range a required parameter for nova-manage network create. Changed default num_networks to 1; 1000 seems large
1670 * Fix a number of place in the volume driver where the argv hadn't been fully split
1671-* fix for lp712982, and likely a variety of other dashboard error handling issues. This fix simply causes the default error code for ApiError to be 'ApiError' rather than 'Unknown', which makes dashboard handle the error gracefully, and makes euca error output slightly prettier
1672+* fix for lp712982, and likely a variety of other dashboard error handling issues. This fix simply causes the default error code for ApiError to be 'ApiError' rather than 'Unknown', which makes dashboard handle the error gracefully, and makes euca error output slightly prettier
1673 * Fix mis-merge
1674 * pep8 is hard
1675 * syntax error
1676@@ -20623,7 +20667,7 @@ CHANGES
1677 * fixes bug 735298: start of nova-compute not possible because of wrong xml paths to the //host/cpu section in "virsh capabilities", used in nova/virt/libvirt_conn.py
1678 * update image service documentation
1679 * merge lp:nova and resolve conflicts
1680-* User ids are strings, and are not necessarily == name. Also fix so that non-existent user gives a 404, not a 500
1681+* User ids are strings, and are not necessarily == name. Also fix so that non-existent user gives a 404, not a 500
1682 * Fudge
1683 * Keypairs are not required in the OpenStack API; don't require them!
1684 * Merging trunk
1685@@ -20657,7 +20701,7 @@ CHANGES
1686 * Stuff
1687 * Removing io_util.py. We now use eventlets library instead
1688 * Some typos
1689-* * Updated document vmware_readme.rst to mention VLAN networking * Corrected docstrings as per pep0257 recommentations. * Stream-lined the comments. * Updated code with locals() where ever applicable. * VIM : It stands for VMware Virtual Infrastructure Methodology. We have used the terminology from VMware. we have added a question in FAQ inside vmware_readme.rst in doc/source * New fake db: vmwareapi fake module uses a different set of fields and hence the structures required are different. Ex: bridge : 'xenbr0' does not hold good for VMware environment and bridge : 'vmnic0' is used instead. Also return values varies, hence went for implementing separate fake db. * Now using eventlet library instead and removed io_utils.py from branch. * Now using glance.client.Client instead of homegrown code to talk to Glance server to handle images. * Corrected all mis-spelled function names and corresponding calls. Yeah, an auto-complete side-effect!
1690+* * Updated document vmware_readme.rst to mention VLAN networking * Corrected docstrings as per pep0257 recommentations. * Stream-lined the comments. * Updated code with locals() where ever applicable. * VIM : It stands for VMware Virtual Infrastructure Methodology. We have used the terminology from VMware. we have added a question in FAQ inside vmware_readme.rst in doc/source * New fake db: vmwareapi fake module uses a different set of fields and hence the structures required are different. Ex: bridge : 'xenbr0' does not hold good for VMware environment and bridge : 'vmnic0' is used instead. Also return values varies, hence went for implementing separate fake db. * Now using eventlet library instead and removed io_utils.py from branch. * Now using glance.client.Client instead of homegrown code to talk to Glance server to handle images. * Corrected all mis-spelled function names and corresponding calls. Yeah, an auto-complete side-effect!
1691 * Implement top level extensions
1692 * Added i18n to error message
1693 * Checks locally before routing
1694@@ -20690,7 +20734,7 @@ CHANGES
1695 * adding imageRef and flavorRef attributes to servers serialization metadata
1696 * Merged with trunk (and brian's previous fixes to fake auth)
1697 * Plugin
1698-* As suggested by Eric Day: * changed request.environ version key to more descriptive 'api.version' * removed python3 string formatting * added licenses to headers on new files
1699+* As suggested by Eric Day: * changed request.environ version key to more descriptive 'api.version' * removed python3 string formatting * added licenses to headers on new files
1700 * Tweak
1701 * A few fixes
1702 * pep8
1703@@ -20733,8 +20777,8 @@ CHANGES
1704 * Merging trunk
1705 * Reapplied rename to another file
1706 * serverId returned as int per spec
1707-* Reapplied rename of Openstack -> OpenStack. Easier to do it by hand than to ask Bazaar to do it
1708-* Merged with trunk. Had to hold bazaar's hand as it got lost again
1709+* Reapplied rename of Openstack -> OpenStack. Easier to do it by hand than to ask Bazaar to do it
1710+* Merged with trunk. Had to hold bazaar's hand as it got lost again
1711 * Derive unit test from standard nova.test.TestCase
1712 * pep8 fixes
1713 * adding flavors and images barebones view code; adding flavorRef and imageRef to v1.1 servers
1714@@ -20752,8 +20796,8 @@ CHANGES
1715 * Fix capitalization of ApiError (it was mistakenly called APIError)
1716 * added migration to repo
1717 * Clarified message when a VM is not running but still in DB
1718-* Implemented Hyper-V list_instances_detail function. Needs a cleanup by someone that knows the Hyper-V code
1719-* So the first of those tests doesn't pass. Removing as it looks like it was meant to be deleted
1720+* Implemented Hyper-V list_instances_detail function. Needs a cleanup by someone that knows the Hyper-V code
1721+* So the first of those tests doesn't pass. Removing as it looks like it was meant to be deleted
1722 * Added test and fixed up code so that it works
1723 * Fix for LP Bug #704300
1724 * fixed keyword arg error
1725@@ -20864,11 +20908,11 @@ CHANGES
1726 * fix minor typo
1727 * Fix a fer nits jaypipes found in review
1728 * Pep8 / Style
1729-* Re-removed the code that was deleted upstream but somehow didn't get merged in. Bizarre!
1730+* Re-removed the code that was deleted upstream but somehow didn't get merged in. Bizarre!
1731 * More resize
1732 * Merged with upstream
1733 * pep8 fun
1734-* Test login. Uncovered bug732866
1735+* Test login. Uncovered bug732866
1736 * Merged with upstream
1737 * Better logging, be more careful about when we throw login errors re bug732866
1738 * Don't wrap keys and volumes till they're in the API
1739@@ -20907,9 +20951,9 @@ CHANGES
1740 * merged to trunk rev781
1741 * fix pep8 check
1742 * merge lp:nova
1743-* Modifies S3ImageService to wrap LocalImageService or GlanceImageService. It now pulls the parts out of s3, decrypts them locally, and sends them to the underlying service. It includes various fixes for image/glance.py, image/local.py and the tests
1744+* Modifies S3ImageService to wrap LocalImageService or GlanceImageService. It now pulls the parts out of s3, decrypts them locally, and sends them to the underlying service. It includes various fixes for image/glance.py, image/local.py and the tests
1745 * add tests to verify the serialization of adminPass in server creation response
1746-* Fixes nova.sh to run properly the first time. We have to get the zip file after nova-api is running
1747+* Fixes nova.sh to run properly the first time. We have to get the zip file after nova-api is running
1748 * minor fixes from review
1749 * merged trunk
1750 * fixed based on reviewer's comment
1751@@ -20917,7 +20961,7 @@ CHANGES
1752 * Moved umount container to disk.py and try to remove loopback when destroying the container
1753 * Merged trunk
1754 * Replace session.execute() calls performing raw UPDATE statements with SQLAlchemy code, with the exception of fixed_ip_disassociate_all_by_timeout()
1755-* Fixes a race condition where multiple greenthreads were attempting to resize a file at the same time. Adds tests to verify that the image caching call will run concurrently for different files, but will block other greenthreads trying to cache the same file
1756+* Fixes a race condition where multiple greenthreads were attempting to resize a file at the same time. Adds tests to verify that the image caching call will run concurrently for different files, but will block other greenthreads trying to cache the same file
1757 * maybe a int instead ?
1758 * merge lp:nova
1759 * merge, resolve conflicts, and update to reflect new standard deserialization function signature
1760@@ -20953,7 +20997,7 @@ CHANGES
1761 * replaced ConnectionFailed with Exception in tools/euca-get-ajax-console was not working for me with euca2tools 1.2 (version 2007-10-10, release 31337)
1762 * Fixed pep8 issues
1763 * remerge trunk
1764-* removed uneeded **kw args leftover from removed account-in-url changes
1765+* removed uneeded **kw args leftover from removed account-in-url changes
1766 * fixed lp715427
1767 * fixed lp715427
1768 * Fix spacing
1769@@ -20999,7 +21043,7 @@ CHANGES
1770 * Remove addition of account to service url
1771 * refactored up nova/virt/xenapi/vmops _get_vm_opaque_ref() no longer inspects the param to check to see if it is an opaque ref works better for unittests
1772 * This fix is an updated version of Todd's lp720157. Adds SignatureVersion checking for Amazon EC2 API requests, and resolves bug #720157
1773-* * pep8 cleanups in migrations * a few bugfixes
1774+* * pep8 cleanups in migrations * a few bugfixes
1775 * Removed stale references to XenAPI
1776 * Moved guest_tool.py from etc/esx directory to tools/esx directory
1777 * Removed excess comment lines
1778@@ -21011,10 +21055,10 @@ CHANGES
1779 * add a delay before grabbing zipfile
1780 * Some more refactoring and a tighter unit test
1781 * Moved FLAGS.paste_config to its re-usable location
1782-* Merged with trunk and fixed conflict. Sigh
1783+* Merged with trunk and fixed conflict. Sigh
1784 * Converted tabs to spaces in bin/nova-api
1785 * A few more changes
1786-* Inhibit inclusion of stack traces in the logs UNLESS --verbose has been specified. This should help keep the logs compact, helping admins find the messages they're interested in (e.g., "Can't connect to MySQL server on '127.0.0.1' (111)") without having to sort through the stack traces, while still allowing developers to see those traces at will
1787+* Inhibit inclusion of stack traces in the logs UNLESS --verbose has been specified. This should help keep the logs compact, helping admins find the messages they're interested in (e.g., "Can't connect to MySQL server on '127.0.0.1' (111)") without having to sort through the stack traces, while still allowing developers to see those traces at will
1788 * Addresses bugs 704985 and 705453 by:
1789 * And unit tests
1790 * A few formatting niceties
1791@@ -21049,7 +21093,7 @@ CHANGES
1792 * Merged to trunk rev 760, and fixed comment line indent according to Jay's comment
1793 * Fix renaming of instance fields using update_instance api method
1794 * apirequest -> apireq
1795-* * os_type is no longer `not null`
1796+* * os_type is no longer `not null`
1797 * respond well if personality attribute is incomplete
1798 * Added initial support to delete networks nova-manage
1799 * move the id wrapping into cloud layer instead of image_service
1800@@ -21158,7 +21202,7 @@ CHANGES
1801 * Moved the guest tools script that does IP injection inside VM on ESX server to etc/esx directory from etc/ directory
1802 * support adding a single personality in the osapi
1803 * corrected copyrights for new files
1804-* Updated with flags for nova-compute, nova-network and nova-console. Added the flags, --vlan_interface=<Physical ethernet adapter name in VMware ESX host for vlan networking E.g vmnic0> --network_driver=nova.network.vmwareapi_net [Optional, only for VLAN Networking] --flat_network_bridge=<ESX Virtual Machine Port Group> [Optional, only for Flat Networking] --console_manager=nova.console.vmrc_manager.ConsoleVMRCManager --console_driver=nova.console.vmrc.VMRCSessionConsole [Optional for OTP (One time Passwords) as against host credentials] --vmwareapi_wsdl_loc=<http://<WEB SERVER>/vimService.wsdl>
1805+* Updated with flags for nova-compute, nova-network and nova-console. Added the flags, --vlan_interface=<Physical ethernet adapter name in VMware ESX host for vlan networking E.g vmnic0> --network_driver=nova.network.vmwareapi_net [Optional, only for VLAN Networking] --flat_network_bridge=<ESX Virtual Machine Port Group> [Optional, only for Flat Networking] --console_manager=nova.console.vmrc_manager.ConsoleVMRCManager --console_driver=nova.console.vmrc.VMRCSessionConsole [Optional for OTP (One time Passwords) as against host credentials] --vmwareapi_wsdl_loc=<http://<WEB SERVER>/vimService.wsdl>
1806 * Fixed trunk merge issues
1807 * Merged trunk
1808 * At previous commit, I forget to erase conflict - fixed it
1809@@ -21192,7 +21236,7 @@ CHANGES
1810 * Fixed obvious errors with flags. Note: tests still fail
1811 * Merging trunk
1812 * Fixed default value for xenapi_agent_path flag
1813-* 1) merge trunk 2) removed preconfigure_xenstore 3) added jkey for broadcast address in inject_network_info 4) added 2 flags: 4.1) xenapi_inject_image (default True) This flag allows for turning off data injection by mounting the image in the VDI (agreed with Trey Morris) 4.2) xenapi_agent_path (default /usr/bin/xe-update-networking) This flag specifies the path where the agent should be located. It makes sense only if the above flag is True. If the agent is found, data injection is not performed
1814+* 1) merge trunk 2) removed preconfigure_xenstore 3) added jkey for broadcast address in inject_network_info 4) added 2 flags: 4.1) xenapi_inject_image (default True) This flag allows for turning off data injection by mounting the image in the VDI (agreed with Trey Morris) 4.2) xenapi_agent_path (default /usr/bin/xe-update-networking) This flag specifies the path where the agent should be located. It makes sense only if the above flag is True. If the agent is found, data injection is not performed
1815 * Wrap IptablesManager.apply() calls in utils.synchronized to avoid having different workers step on each other's toes
1816 * merge trunk
1817 * Add utils.synchronized decorator to allow for synchronising method entrance across multiple workers on the same host
1818@@ -21275,7 +21319,7 @@ CHANGES
1819 * Merged trunk
1820 * nothing
1821 * Removes processName from debug output since we aren't using multiprocessing and it doesn't exist in python 2.6.1
1822-* Add some methods to the ec2 admin api to work with VPNs. Also implements and properly documents the get_hosts method
1823+* Add some methods to the ec2 admin api to work with VPNs. Also implements and properly documents the get_hosts method
1824 * Fix copypasta pep8 violation
1825 * moved migrate script to 007 (again..sigh)
1826 * Don't require metadata (hotfix for bug 724143)
1827@@ -21284,7 +21328,7 @@ CHANGES
1828 * Updated email in Authors
1829 * Easy and effective fix for getting the DNS value from flag file, when working in FlatNetworking mode
1830 * Some first steps towards resolving some of the issues brought up on the mailing list related to documenting flags
1831-* Support HP/LeftHand SANs. We control the SAN by SSHing and issuing CLIQ commands. Also improved the way iSCSI volumes are mounted: try to store the iSCSI connection info in the volume entity, in preference to doing discovery. Also CHAP authentication support
1832+* Support HP/LeftHand SANs. We control the SAN by SSHing and issuing CLIQ commands. Also improved the way iSCSI volumes are mounted: try to store the iSCSI connection info in the volume entity, in preference to doing discovery. Also CHAP authentication support
1833 * This fix checks whether the boot/guest directory exists on the hypervisor. If that is not the case, it creates it
1834 * Globally exclude *.pyc files from generated tarballs
1835 * stubbing out _is_vdi_pv for test purposes
1836@@ -21338,7 +21382,7 @@ CHANGES
1837 * Revert commit 709. This fixes issues with the Openstack API causing 'No user for access key admin' errors
1838 * put the redirection back in to run_tests.sh and fix terminal colors by using original stdout
1839 * Deleted trailing whitespace
1840-* Fixes and optimizes filtering for describe_security_groups. Also adds a unit test
1841+* Fixes and optimizes filtering for describe_security_groups. Also adds a unit test
1842 * merged trunk
1843 * fix for failing describe_instances test
1844 * merged trunk
1845@@ -21347,10 +21391,10 @@ CHANGES
1846 * Fixes lp715424, code now checks network range can fit num_networks * network_size
1847 * The proposed branch prevents FlatManager from executing network initialisation tasks contained in linux_net.init_host(), which are unnecessary when flat networking is used
1848 * Adds some features to run_tests.sh: - if it crashes right away with a short erorr log, print that directly - allow specifying tests without the nova.tests part
1849-* The kernel_id and the ramdisk_id are optional, yet the OpenStack API was requiring them. In addition, with the ObjectStore these properties are not under 'properties' (as they are with Glance)
1850+* The kernel_id and the ramdisk_id are optional, yet the OpenStack API was requiring them. In addition, with the ObjectStore these properties are not under 'properties' (as they are with Glance)
1851 * merged trunk
1852 * merge trunk
1853-* Initial support for per-instance metadata, though the OpenStack API. Key/value pairs can be specified at instance creation time and are returned in the details view. Support limits based on quota system
1854+* Initial support for per-instance metadata, though the OpenStack API. Key/value pairs can be specified at instance creation time and are returned in the details view. Support limits based on quota system
1855 * Merged trunk
1856 * Removed pass
1857 * Changed unit test to refer to compute API, per Todd's suggestion. Avoids needing to extend our implementation of the EC2 API
1858@@ -21402,7 +21446,7 @@ CHANGES
1859 * Merged trunk
1860 * no, really fix lp721297 this time
1861 * Updated import statements according to HACKING guidelines. Added docstrings to each document. Verified pep8 over all files. Replaced some constants by enums accordingly. Still little bit more left in vm_util.py and vim_util.py files
1862-* Add flags for listen_port to nova-api. This allows us to listen on one port, but return another port (for a proxy or load balancer) in calls like describe_regions, etc
1863+* Add flags for listen_port to nova-api. This allows us to listen on one port, but return another port (for a proxy or load balancer) in calls like describe_regions, etc
1864 * Fix tiny mitakes! (remove unnecessary comment, etc)
1865 * Fixed based on reviewer's comment. 1. Change docstrings format 2. Fix comment grammer mistake, etc
1866 * PEP8 again
1867@@ -21420,7 +21464,7 @@ CHANGES
1868 * added disabled services to the list of displayed services in bin/nova-manage
1869 * merged to trunk rev709. NEEDS to be fixed based on 3rd reviewer's comment
1870 * just add 005_add_live_migration.py
1871-* Fixed based on reviewer's comment. 1. DB schema change vcpu/memory/hdd info were stored into Service table. but reviewer pointed out to me creating new table is better since Service table has too much columns
1872+* Fixed based on reviewer's comment. 1. DB schema change vcpu/memory/hdd info were stored into Service table. but reviewer pointed out to me creating new table is better since Service table has too much columns
1873 * update based on prereq branch
1874 * update based on prereq branch
1875 * fixed newline and moved import fake_flags into run_tests where it makes more sense
1876@@ -21436,7 +21480,7 @@ CHANGES
1877 * add a start_service method to our test baseclass
1878 * add a test for rpc consumer isolation
1879 * Merged with trunk
1880-* The OpenStack API was using the 'secret' as the 'access key'. There is an 'access key' and there is a 'secret key'. Access key ~= username. Secret key ~= password. This fix is necessary for the OpenStack Python API bindings to log in
1881+* The OpenStack API was using the 'secret' as the 'access key'. There is an 'access key' and there is a 'secret key'. Access key ~= username. Secret key ~= password. This fix is necessary for the OpenStack Python API bindings to log in
1882 * Add a bunch of docs for the new iptables hotness
1883 * fix pep8 and remove extra reference to reset
1884 * switch to explicit call to logging.setup()
1885@@ -21456,9 +21500,9 @@ CHANGES
1886 * PEP8 errors and remove check in authors file for nova-core, since nova-core owns the translation export branch
1887 * Merged trunk
1888 * Stub out VM create
1889-* * Removed VimService_services.py & VimService_services_types.py to reduce the diffs to normal. These 2 files are auto-generated files containing stubs for VI SDK API end points. The stub files are generated using ZSI SOAP stub generator module ZSI.commands.wsdl2py over Vimservice.wsdl distributed as part of VMware Virtual Infrastructure SDK package. To not include them in the repository we have few options to choose from, 1) Generate the stub files in build time and make them available as packages for distribution. 2) Generate the stub files in installation/configuration time if ESX/ESXi server is detected as compute provider. Further to this, we can try to reduce the size of stub files by attempting to create stubs only for the API end points required by the module vmwareapi
1890+* * Removed VimService_services.py & VimService_services_types.py to reduce the diffs to normal. These 2 files are auto-generated files containing stubs for VI SDK API end points. The stub files are generated using ZSI SOAP stub generator module ZSI.commands.wsdl2py over Vimservice.wsdl distributed as part of VMware Virtual Infrastructure SDK package. To not include them in the repository we have few options to choose from, 1) Generate the stub files in build time and make them available as packages for distribution. 2) Generate the stub files in installation/configuration time if ESX/ESXi server is detected as compute provider. Further to this, we can try to reduce the size of stub files by attempting to create stubs only for the API end points required by the module vmwareapi
1891 * introducing a new flag timeout_nbd for manually setting the time in seconds for waiting for an upcoming NBD device
1892-* * Removed nova/virt/guest-tools/guest_tool.bat & nova/virt/guest-tools/guest_tool.sh as guest_tool.py can be invoked directly during guest startup
1893+* * Removed nova/virt/guest-tools/guest_tool.bat & nova/virt/guest-tools/guest_tool.sh as guest_tool.py can be invoked directly during guest startup
1894 * More PEP-8
1895 * Wrap ipv6 rules, too
1896 * PEP-8 fixes
1897@@ -21624,7 +21668,7 @@ CHANGES
1898 * polling tests
1899 * Use glance image type to determine disk type
1900 * Minor change. Adding a helper function stub_instance() inside the test test_get_all_server_details_with_host for readability
1901-* Fixes ldapdriver so that it works properly with admin client. It now sanitizes all unicode data to strings before passing it into ldap driver. This may need to be rethought to work properly for internationalization
1902+* Fixes ldapdriver so that it works properly with admin client. It now sanitizes all unicode data to strings before passing it into ldap driver. This may need to be rethought to work properly for internationalization
1903 * Moved definition of return_servers_with_host stub to inside the test_get_all_server_details_with_host test
1904 * fixed
1905 * Pep8 fixes
1906@@ -21634,7 +21678,7 @@ CHANGES
1907 * Update to our HACKING doc to add examples of our docstring style
1908 * add periodic disassociate from VlanManager to FlatDHCPManager
1909 * Flipped mailmap entries
1910-* -from migrate.versioning import exceptions as versioning_exceptions + +try: + from migrate.versioning import exceptions as versioning_exceptions +except ImportError: + try: + # python-migration changed location of exceptions after 1.6.3 + # See LP Bug #717467 + from migrate import exceptions as versioning_exceptions + except ImportError: + sys.exit(_("python-migrate is not installed. Exiting."))
1911+* -from migrate.versioning import exceptions as versioning_exceptions + +try: + from migrate.versioning import exceptions as versioning_exceptions +except ImportError: + try: + # python-migration changed location of exceptions after 1.6.3 + # See LP Bug #717467 + from migrate import exceptions as versioning_exceptions + except ImportError: + sys.exit(_("python-migrate is not installed. Exiting."))
1912 * Accidently removed myself from Authors
1913 * Added alternate email to mailmap
1914 * zone manager tests
1915@@ -21707,7 +21751,7 @@ CHANGES
1916 * Merged lp:nova
1917 * Fixes tarball contents by adding missing scripts and files to setup.py / MANIFEST.in
1918 * Moving SR path code outside of glance plugin
1919-* When re-throwing an exception, use "raise", not "raise e". This way we don't lose the stack trace
1920+* When re-throwing an exception, use "raise", not "raise e". This way we don't lose the stack trace
1921 * Adding more documentation, code-cleanup
1922 * Replace placeholders in nova.pot with some actual values
1923 * The proposed fix puts a VM which fails to spawn in a (new) 'FAILED' power state. It does not perform a clean-up. This because the user needs to know what has happened to the VM he/she was trying to run. Normally, API users do not have access to log files. In this case, the only way for the user to know what happened to the instance is to query its state (e.g.: doing euca-describe-instances). If we perform a complete clean-up, no information about the instance which failed to spawn will be left
1924@@ -21800,7 +21844,7 @@ CHANGES
1925 * More typos
1926 * fixed exceptions import from python migrate
1927 * Cast to host
1928-* This fixes a lazy-load issue in describe-instances, which causes a crash. The solution is to specifically load the network table when retrieving an instance
1929+* This fixes a lazy-load issue in describe-instances, which causes a crash. The solution is to specifically load the network table when retrieving an instance
1930 * added instance_type_purge() to actually remove records from db
1931 * updated tests and added more error checking
1932 * Merged trunk
1933@@ -21849,7 +21893,7 @@ CHANGES
1934 * Wrap line to under 79 characters
1935 * Launchpad automatic translations update
1936 * adding myself to Authors file
1937-* 1. Merged to rev654(?) 2. Fixed bug continuous request. if user continuouslly send live-migration request to same host, concurrent request to iptables occurs, and iptables complains. This version add retry for this issue
1938+* 1. Merged to rev654(?) 2. Fixed bug continuous request. if user continuouslly send live-migration request to same host, concurrent request to iptables occurs, and iptables complains. This version add retry for this issue
1939 * forgot to register new instance_types table
1940 * Plugin tidying and more migration implementation
1941 * fixed overlooked mandatory changes in Xen
1942@@ -21858,7 +21902,7 @@ CHANGES
1943 * - population of public and private addresses containers in openstack api - replacement of sqlalchemy model in instance stub with dict
1944 * Fixes the ordering of init_host commands so that iptables chains are created before they are used
1945 * Pass timestamps to the db layer in fixed_ip_disassociate_all_by_timeout rather than converting to strings ahead of time, otherwise comparison between timestamps would often fail
1946-* Added support for 'SAN' style volumes. A SAN's big difference is that the iSCSI target won't normally run on the same host as the volume service
1947+* Added support for 'SAN' style volumes. A SAN's big difference is that the iSCSI target won't normally run on the same host as the volume service
1948 * added support to pull list of ALL instance types even those that are marked deleted
1949 * Indent args to ssh_connect correctly
1950 * Fix PEP8 violations
1951@@ -21868,7 +21912,7 @@ CHANGES
1952 * Fixed pep8 error in vm_utils.py
1953 * Add my name to AUTHORS, remove parentheses from the substitution made in the previous commit
1954 * Don't convert datetime objects to a string using .isoformat(). Leave it to sqlalchmeny (or pysqlite or whatever it is that does the magic) to work it out
1955-* Added test case for 'not enough memory' Successfully ran unit tests Fixed pep8 errors
1956+* Added test case for 'not enough memory' Successfully ran unit tests Fixed pep8 errors
1957 * Give a better error message if the instance type specified is invalid
1958 * Launchpad automatic translations update
1959 * added testing for instance_types.py and refactored nova-manage to use instance_types.py instead of going directly to db
1960@@ -21997,7 +22041,7 @@ CHANGES
1961 * Working on api / manager / db support for zones
1962 * Launchpad automatic translations update
1963 * Adds security group output to describe_instances
1964-* Use firewall_driver flag as expected with NWFilterFirewall. This way, either you use NWFilterFirewall directly, or you use IptablesFirewall, which creates its own instance of NWFilterFirewall for the setup_basic_filtering command. This removes the requirement that LibvirtConnection would always need to know about NWFirewallFilter, and cleans up the area where the flag is used for loading the firewall class
1965+* Use firewall_driver flag as expected with NWFilterFirewall. This way, either you use NWFilterFirewall directly, or you use IptablesFirewall, which creates its own instance of NWFilterFirewall for the setup_basic_filtering command. This removes the requirement that LibvirtConnection would always need to know about NWFirewallFilter, and cleans up the area where the flag is used for loading the firewall class
1966 * simplify get and remove extra reference to import logging
1967 * Added a test that checks for localized strings in the source code that contain position-based string formatting placeholders. If found, an exception message is generated that summarizes the problem, as well as the location of the problematic code. This will prevent future trunk commits from adding localized strings that cannot be properly translated
1968 * Made changes based on code review
1969@@ -22021,7 +22065,7 @@ CHANGES
1970 * Properly pulling the name attribute from security_group
1971 * adding testcode
1972 * Fix Bug #703037. ra_server is None
1973-* Fix regression in s3 image service. This should be a feature freeze exception
1974+* Fix regression in s3 image service. This should be a feature freeze exception
1975 * I have a feeling if we try to migrate from imageId to id we'll be tracking it down a while
1976 * more instanceId => id fixes
1977 * Fix regression in imageId => id field rename in s3 image service
1978@@ -22046,20 +22090,20 @@ CHANGES
1979 * Merged with http://bazaar.launchpad.net/~vishvananda/nova/lp703037
1980 * Merged with vish branch
1981 * Prefixed ending multi-line docstring with a newline
1982-* Fixing documentation strings. Second attempt at pep8
1983-* Removal of image tempdir in test tearDown. Also, reformatted a couple method comments to match the file's style
1984-* Add DescribeInstanceTypes to admin api. This lets the dashboard know what sizes can be launched (using the -t flag in euca-run-instances, for example) and what resources they provide
1985+* Fixing documentation strings. Second attempt at pep8
1986+* Removal of image tempdir in test tearDown. Also, reformatted a couple method comments to match the file's style
1987+* Add DescribeInstanceTypes to admin api. This lets the dashboard know what sizes can be launched (using the -t flag in euca-run-instances, for example) and what resources they provide
1988 * Rename Mock, since it wasn't a Mock
1989 * Add DescribeInstanceTypes to admin api (dashboard uses it)
1990 * Fix for LP Bug #699654
1991 * Change how libvirt firewall drivers work to have meaningful flags
1992 * Fixed pep8 errors
1993-* This branch updates docs to reflect the db sync addition. It additionally adds some useful errors to nova-manage to help people that are using old guides. It wraps sqlalchemy errors in generic DBError. Finally, it updates nova.sh to use current settings
1994+* This branch updates docs to reflect the db sync addition. It additionally adds some useful errors to nova-manage to help people that are using old guides. It wraps sqlalchemy errors in generic DBError. Finally, it updates nova.sh to use current settings
1995 * Added myself to the authors list
1996 * fix pep8 issue (and my commit hook that didn't catch it)
1997 * Add a host argument to virt drivers's init_host method. It will be set to the name of host it's running on
1998 * merged trunk
1999-* Wraps the NotFound exception at the api layer to print the proper instance id. Does the same for volume. Note that euca-describe-volumes doesn't pass in volume ids properly, so you will get no error messages on euca-describe-volumes with improper ids. We may also need to wrap a few other calls as well
2000+* Wraps the NotFound exception at the api layer to print the proper instance id. Does the same for volume. Note that euca-describe-volumes doesn't pass in volume ids properly, so you will get no error messages on euca-describe-volumes with improper ids. We may also need to wrap a few other calls as well
2001 * Fixes issue with SNATTING chain not getting created or added to POSTROUTING when nova-network starts
2002 * Fix for bug #702237
2003 * Moving init_host before metadata_forward, as metadata_forward modifies prerouting rules
2004@@ -22077,7 +22121,7 @@ CHANGES
2005 * Adds driver.init_host() call to flatdhcp driver
2006 * Fixed pep8 errors
2007 * Fixed pep8 errors
2008-* No longer hard coding to "/tmp/nova/images/". Using tempdir so tests run by different people on the same development machine pass
2009+* No longer hard coding to "/tmp/nova/images/". Using tempdir so tests run by different people on the same development machine pass
2010 * Perform same filtering for OUTPUT as FORWARD in iptables. This removes a way around the filtering
2011 * Fix pep-8 problem from prereq branch
2012 * Add a host argument to virt driver's init_host method. It will be set to the name of host it's running on
2013@@ -22094,7 +22138,7 @@ CHANGES
2014 * Fixed spacing issue for pep8
2015 * Fixed merge conflict
2016 * Added myself to ./Authors file
2017-* Switches from project_get_network to network_get_by_instance, which actually works with all networking modes. Also removes a couple duplicate lines from a bad merge
2018+* Switches from project_get_network to network_get_by_instance, which actually works with all networking modes. Also removes a couple duplicate lines from a bad merge
2019 * Set the default number of IP's to to reserver for VPN to 0
2020 * Localized strings that employ formatting should not use positional arguments, as they prevent the translator from re-ordering the translated text; instead, they should use mappings (i.e., dicts). This change replaces all localized formatted strings that use more than one formatting placeholder with a mapping version
2021 * add ip and network to nwfilter test
2022@@ -22110,7 +22154,7 @@ CHANGES
2023 * merged branch to name net_manager.create_networks args
2024 * the net_managers expect different args to create_networks, so nova-manage's call to net_manager.create_networks was changed to use named args to prevent argument mismatching
2025 * OS-55: Post-merge fixes
2026-* Fix describe_regions by changing renamed flags. Also added a test to catch future errors
2027+* Fix describe_regions by changing renamed flags. Also added a test to catch future errors
2028 * changed nova-manage to use named arguments to net_manager.create_networks
2029 * Merged trunk
2030 * Removed tabs form source. Merged trunk changes
2031@@ -22128,7 +22172,7 @@ CHANGES
2032 * i18n!
2033 * merged trunk fixed whitespace in rst
2034 * wrap sqlalchemy exceptions in a generic error
2035-* Wrap instance at api layer to print the proper error. Use same logic for volumes
2036+* Wrap instance at api layer to print the proper error. Use same logic for volumes
2037 * This patch adds two flags:
2038 * Using new style logging
2039 * Adding ability to remap VBD device
2040@@ -22138,7 +22182,7 @@ CHANGES
2041 * Add provider_fw_rules awareness to iptables firewall driver
2042 * No longer chmod 0777 instance directories, since nova works just fine without them
2043 * Updated docs for db sync requirements; merged with Vish's similar doc updates
2044-* Change default log formats so that:  * they include a timestamp (necessary to correlate logs)  * no longer display version on every line (shorter lines)  * use [-] instead of [N/A] (shorter lines, less scary-looking)  * show level before logger name (better human-readability)
2045+* Change default log formats so that: * they include a timestamp (necessary to correlate logs) * no longer display version on every line (shorter lines) * use [-] instead of [N/A] (shorter lines, less scary-looking) * show level before logger name (better human-readability)
2046 * OS55: pylint fixes
2047 * OS-55: Added unit test for network injection via xenstore
2048 * fixed typo
2049@@ -22156,7 +22200,7 @@ CHANGES
2050 * syntax
2051 * syntax error
2052 * added plugin call for resetnetworking
2053-* Fix metadata using versions other than /later. Patch via ~ttx
2054+* Fix metadata using versions other than /later. Patch via ~ttx
2055 * should be writing some kindof network info to the xenstore now, hopefully
2056 * Use ttx's patch to be explict about paths, as urlmap doesn't work as I expected
2057 * Doc changes for db sync
2058@@ -22238,22 +22282,22 @@ CHANGES
2059 * Enable the use_ipv6 flag in unit tests by default
2060 * Fixed unit tests
2061 * merge from upstream and fix small issues
2062-* merged to trunk rev572
2063+* merged to trunk rev572
2064 * fixed based on reviewer's comment
2065 * Basic stubbing throughout the stack
2066 * Enable the use_ipv6 flag in unit tests by default
2067 * Add an apply_instance_filter method to NWFilter driver
2068 * update status to 'error_deleting' on volumes where deletion fails
2069 * Merged trunk
2070-* This disables ipv6 by default. Most use cases will not need it on and it makes dependencies more complex
2071+* This disables ipv6 by default. Most use cases will not need it on and it makes dependencies more complex
2072 * The live_migration branch ( https://code.launchpad.net/~nttdata/nova/live-migration/+merge/44940 ) was not ready to be merged
2073 * merge from upstream to fix conflict
2074 * Trunk merge
2075-* s/cleanup/volume. volume commands will need their own ns in the long run
2076+* s/cleanup/volume. volume commands will need their own ns in the long run
2077 * disable ipv6 by default
2078 * Merged trunk
2079 * Plug VBD to existing instance and minor cleanup
2080-* fixes related to #701749. Also, added nova-manage commands to recover from certain states:
2081+* fixes related to #701749. Also, added nova-manage commands to recover from certain states:
2082 * Implement support for streaming images from Glance when using the XenAPI virtualization backend, as per the bexar-xenapi-support-for-glance blueprint
2083 * Works around the app-armor problem of requiring disks with backing files to be named appropriately by changing the name of our extra disks
2084 * fix test to respect xml changes
2085@@ -22262,9 +22306,9 @@ CHANGES
2086 * added paste pastedeploy to nova.sh
2087 * authors needed for test
2088 * revert live_migration branch
2089-* This removes the need for the custom udev rule for iscsi devices. It instead attaches the device based on /dev/disk/by-path/ which should make the setup of nova-volume a little easier
2090+* This removes the need for the custom udev rule for iscsi devices. It instead attaches the device based on /dev/disk/by-path/ which should make the setup of nova-volume a little easier
2091 * Merged trunk
2092-* Risk of Regression: This patch don’t modify existing functionlities, but I have added some. 1. nova.db.service.sqlalchemy.model.Serivce (adding a column to database) 2. nova.service ( nova-compute needes to insert information defined by 1 above)
2093+* Risk of Regression: This patch don’t modify existing functionlities, but I have added some. 1. nova.db.service.sqlalchemy.model.Serivce (adding a column to database) 2. nova.service ( nova-compute needes to insert information defined by 1 above)
2094 * Docstrings aren't guaranteed to exist, so split() can't automatically be called on a method without first checking for the method docstring's existence. Fixes Bug #704447
2095 * Removes circular import issues from bin/stack and replaces utils.loads with json.loads. Fixes Bug#704424
2096 * ComputeAPI -> compute.API in bin/nova-direct-api. Fixes LP#704422
2097@@ -22278,8 +22322,8 @@ CHANGES
2098 * Merged trunk
2099 * Merged with trunk revno 572
2100 * Better shutdown handling
2101-* Change where paste.deploy factories live and how they are called. They are now in the nova.wsgi.Application/Middleware classes, and call the __init__ method of their class with kwargs of the local configuration of the paste file
2102-* Further decouple api routing decisions and move into paste.deploy configuration. This makes paste back the nova-api binary
2103+* Change where paste.deploy factories live and how they are called. They are now in the nova.wsgi.Application/Middleware classes, and call the __init__ method of their class with kwargs of the local configuration of the paste file
2104+* Further decouple api routing decisions and move into paste.deploy configuration. This makes paste back the nova-api binary
2105 * Clean up openstack api test fake
2106 * Merged trunk
2107 * Add Start/Shutdown support to XenAPI
2108@@ -22297,8 +22341,8 @@ CHANGES
2109 * merge from upstream
2110 * pep8
2111 * remove print statement
2112-* This branch fixes two outstanding bugs in compute. It also fixes a bad method signature in network and removes an unused method in cloud
2113-* Re-removes TrialTestCase. It was accidentally added in by some merges and causing issues with running tests individually
2114+* This branch fixes two outstanding bugs in compute. It also fixes a bad method signature in network and removes an unused method in cloud
2115+* Re-removes TrialTestCase. It was accidentally added in by some merges and causing issues with running tests individually
2116 * removed rpc in cloud
2117 * merged trial fix again
2118 * fix bad function signature in create_networks
2119@@ -22306,7 +22350,7 @@ CHANGES
2120 * Merged trunk
2121 * merged lp:~vishvananda/nova/lp703012
2122 * remove TrialTestCase again and fix merge issues
2123-* import re, remove extra call in cloud.py. Move get_console_output to compute_api
2124+* import re, remove extra call in cloud.py. Move get_console_output to compute_api
2125 * Create and use a generic handler for RPC calls to compute
2126 * Create and use a generic handler for RPC calls to compute
2127 * Create and use a generic handler for RPC calls
2128@@ -22325,8 +22369,8 @@ CHANGES
2129 * update migration script to add new tables since merge
2130 * sort Authors
2131 * Merged with r562
2132-* This modifies libvirt to use CoW images instead of raw images. This is much more efficient and allows us to use the snapshotting capabilities available for qcow2 images. It also changes local storage to be a separate drive instead of a separate partition
2133-* pep8. Someday I'll remember 2 blank lines between module methods
2134+* This modifies libvirt to use CoW images instead of raw images. This is much more efficient and allows us to use the snapshotting capabilities available for qcow2 images. It also changes local storage to be a separate drive instead of a separate partition
2135+* pep8. Someday I'll remember 2 blank lines between module methods
2136 * remove ">>>MERGE" iin nova/db/sqlalchemy/api.py
2137 * checking based on pep8
2138 * merged trunk
2139@@ -22359,7 +22403,7 @@ CHANGES
2140 * Replaced home-grown Diffie-Hellman implementation with the M2Crypto version supplied by Soren
2141 * Instead of a set() to keep track of instances and security groups, use a dict(). __eq__ for stuff coming out of sqlalchemy does not do what I expected (probably due to our use of sessions)
2142 * Fixes broken call to __generate_rc in auth manager
2143-* Fixes bug #701055. Moves code for instance termination inline so that the manager doesn't prematurely mark an instance as deleted. Prematurely doing so causes find calls to fail, prevents instance data from being deleted, and also causes some other issues
2144+* Fixes bug #701055. Moves code for instance termination inline so that the manager doesn't prematurely mark an instance as deleted. Prematurely doing so causes find calls to fail, prevents instance data from being deleted, and also causes some other issues
2145 * Revert r510 and r512 because Josh had already done the same work
2146 * merged trunk
2147 * Fixed Authors
2148@@ -22368,7 +22412,7 @@ CHANGES
2149 * merge from upstream and fix leaks in console tests
2150 * make sure get_all returns
2151 * Fixes a typo in the name of a variable
2152-* Fixes #701055. Move instance termination code inline to prevent manager from prematurely marking it as destroyed
2153+* Fixes #701055. Move instance termination code inline to prevent manager from prematurely marking it as destroyed
2154 * fix invalid variable reference in cloud api
2155 * fix indentation
2156 * add support for database migration
2157@@ -22417,10 +22461,10 @@ CHANGES
2158 * Added support of availability zones for compute. models.Service got additional field availability_zone and was created ZoneScheduler that make decisions based on this field. Also replaced fake 'nova' zone in EC2 cloud api
2159 * Eagerly load fixed_ip property of instances
2160 * Had to abandon the other branch (~annegentle/nova/newscript) because the diffs weren't working right for me. This is a fresh branch that should be merged correctly with trunk. Thanks for your patience. :)
2161-* Added unit tests for the xenapi-glance integration. This adds a glance simulator that can stub in place of glance.client.Client, and enhances the xapi simulator to add the additional calls that the Glance-specific path requires
2162+* Added unit tests for the xenapi-glance integration. This adds a glance simulator that can stub in place of glance.client.Client, and enhances the xapi simulator to add the additional calls that the Glance-specific path requires
2163 * Merged with 549
2164 * Change command to get link local address Remove superfluous code
2165-* This branch adds web based serial console access. Here is an overview of how it works (for libvirt):
2166+* This branch adds web based serial console access. Here is an overview of how it works (for libvirt):
2167 * Merged with r548
2168 * Fixed bug
2169 * Add DescribeInstanceV6 for backward compatibility
2170@@ -22432,7 +22476,7 @@ CHANGES
2171 * merge trunk, fix conflict
2172 * more useful prefix and fix typo in string
2173 * use by-path instead of custom udev script
2174-* Quick bugfix. Also make the error message more specific and unique in the equivalent code in the revoke method
2175+* Quick bugfix. Also make the error message more specific and unique in the equivalent code in the revoke method
2176 * remove extra whitspaces
2177 * Raise meaningful exception when there aren't enough params for a sec group rule
2178 * bah - pep8 errors
2179@@ -22441,7 +22485,7 @@ CHANGES
2180 * Read Full Spec for implementation details and notes on how to boot an instance using OS API. http://etherpad.openstack.org/B2RK0q1CYj
2181 * Added my name to Authors list
2182 * Changes per Edays comments
2183-* Fixed a number of issues with the iptables firewall backend: * Port specifications for firewalls come back from the data store as integers, but were compared as strings. * --icmp-type was misspelled as --icmp_type (underscore vs dash) * There weren't any unit tests for these issues
2184+* Fixed a number of issues with the iptables firewall backend: * Port specifications for firewalls come back from the data store as integers, but were compared as strings. * --icmp-type was misspelled as --icmp_type (underscore vs dash) * There weren't any unit tests for these issues
2185 * merged trunk changes
2186 * Removed unneeded SimpleDH code from agent plugin. Improved handling of plugin call failures
2187 * Now tries to install virtualenv via easy_install if not present
2188@@ -22449,11 +22493,11 @@ CHANGES
2189 * fixed issue in pluginlib_nova.py
2190 * Trunk merge and conflcts resolved
2191 * Implementation of xs-console blueprint (adds support for console proxies like xvp)
2192-* Fixed a number of issues with the iptables firewall backend: * Port specifications for firewalls come back from the data store as integers, but were compared as strings. * --icmp-type was misspelled as --icmp_type (underscore vs dash) * There weren't any unit tests for these issues
2193+* Fixed a number of issues with the iptables firewall backend: * Port specifications for firewalls come back from the data store as integers, but were compared as strings. * --icmp-type was misspelled as --icmp_type (underscore vs dash) * There weren't any unit tests for these issues
2194 * Add support for EBS volumes to the live migration feature. Currently, only AoE is supported
2195 * Changed shared_ip_group detail routing
2196 * Changed shared_ip_group detail routing
2197-* A few more changes to the smoeketests. Allows smoketests to find the nova package from the checkout. Adds smoketests for security groups. Also fixes a couple of typos
2198+* A few more changes to the smoeketests. Allows smoketests to find the nova package from the checkout. Adds smoketests for security groups. Also fixes a couple of typos
2199 * Fixes the metadata forwarding to work by default
2200 * Adds support to nova-manage to modify projects
2201 * Add glance to pip-requires, as we're now using the Glance client code from Nova
2202@@ -22476,7 +22520,7 @@ CHANGES
2203 * Adding modify option for projects
2204 * Fixes describe_instances to filter by a list of instance_ids
2205 * Late import module for register_models() so it doesn't create the db before flags are loaded
2206-* Checks for existence of volume group using vgs instead of checking to see if /dev/nova-volumes exists. The dev is created by udev and isn't always there even if the volume group does exist
2207+* Checks for existence of volume group using vgs instead of checking to see if /dev/nova-volumes exists. The dev is created by udev and isn't always there even if the volume group does exist
2208 * Add a new firewall backend for libvirt, based on iptables
2209 * Create LibvirtConnection directly, rather than going through libvirt_conn.get_connection. This should remove the dependency on libvirt for tests
2210 * Fixed xenapi_conn wait_for_task to properly terminate LoopingCall on exception
2211@@ -22489,14 +22533,14 @@ CHANGES
2212 * alphbetized Authors
2213 * added myself to authors and fixed typo to follow standard
2214 * typo correction
2215-* fixed small glitch in _fetch_image_glance virtual_size = imeta['size']
2216+* fixed small glitch in _fetch_image_glance virtual_size = imeta['size']
2217 * fixed doc make process for new nova version (rev530) machanism
2218 * late import module for register_models() so it doesn't create the db before flags are loaded
2219 * use safer vgs call
2220 * Return proper region info in describe_regions
2221 * change API classname to match the way other API's are done
2222 * small cleanups
2223-* First cut at implementing partition-adding in combination with the Glance streaming. Untested
2224+* First cut at implementing partition-adding in combination with the Glance streaming. Untested
2225 * some small cleanups
2226 * merged from upstream and made applicable changes
2227 * Adds a mechanism to programmatically determine the version of Nova. The designated version is defined in nova/version.py. When running python setup.py from a bzr checkout, information about the bzr branch is put into nova/vcsversion.py which is conditionally imported in nova/version.py
2228@@ -22568,12 +22612,12 @@ CHANGES
2229 * pep8 fix
2230 * merged trunk changes
2231 * commit before merging trunk
2232-* Fixes format_instances error by passing reservation_id as a kwarg instead of an arg. Also removes extraneous yields in test_cloud that were causing tests to pass with broken code
2233-* Remove module-level factory methods in favor of having a factory class-method on wsgi components themselves. Local options from config are passed to the __init__ method of the component as kwargs
2234+* Fixes format_instances error by passing reservation_id as a kwarg instead of an arg. Also removes extraneous yields in test_cloud that were causing tests to pass with broken code
2235+* Remove module-level factory methods in favor of having a factory class-method on wsgi components themselves. Local options from config are passed to the __init__ method of the component as kwargs
2236 * fix the broken tests that allowed the breakage in format to happen
2237 * Fix format_run_instances to pass in reservation id as a kwarg
2238 * Add factories into the wsgi classes
2239-* Add blank __init__ file for fixing importability. The stale .pyc masked this error locally
2240+* Add blank __init__ file for fixing importability. The stale .pyc masked this error locally
2241 * merged trunk changes
2242 * Introduces basic support for spawning, rebooting and destroying vms when using Microsoft Hyper-V as the hypervisor. Images need to be in VHD format. Note that although Hyper-V doesn't accept kernel and ramdisk separate from the image, the nova objectstore api still expects an image to have an associated aki and ari. You can use dummy aki and ari images -- the hyper-v driver won't use them or try to download them. Requires Python's WMI module
2243 * merged trunk changes
2244@@ -22681,10 +22725,10 @@ CHANGES
2245 * Make sure we point to the right PPA's everywhere
2246 * Editing note about the database schema available on the wiki
2247 * Modifying based on reviewer comments
2248-* Uses paste.deploy to make application running configurable. This includes the ability to swap out middlewares, define new endpoints, and generally move away from having code to build wsgi routers and middleware chains into a configurable, extensible method for running wsgi servers
2249+* Uses paste.deploy to make application running configurable. This includes the ability to swap out middlewares, define new endpoints, and generally move away from having code to build wsgi routers and middleware chains into a configurable, extensible method for running wsgi servers
2250 * Modifications to the nova-CC-installer.sh based on review
2251-* Adds the pool_recycle option to the sql engine startup call. This enables connection auto-timeout so that connection pooling will work properly. The recommended setting (per sqlalchemy FAQ page) has been provided as a default for a new configuration flag. What this means is that if a db connection sits idle for the configured # of seconds, the engine will automatically close the connection and return it to the available thread pool. See Bug #690314 for info
2252-* Add burnin support. Services are now by default disabled, but can have instances and volumes run on them using availability_zone = nova:HOSTNAME. This lets the hardware be put through its paces without being put in the generally available pool of hardware. There is a 'service' subcommand for nova-manage where you can enable, disable, and list statuses of services
2253+* Adds the pool_recycle option to the sql engine startup call. This enables connection auto-timeout so that connection pooling will work properly. The recommended setting (per sqlalchemy FAQ page) has been provided as a default for a new configuration flag. What this means is that if a db connection sits idle for the configured # of seconds, the engine will automatically close the connection and return it to the available thread pool. See Bug #690314 for info
2254+* Add burnin support. Services are now by default disabled, but can have instances and volumes run on them using availability_zone = nova:HOSTNAME. This lets the hardware be put through its paces without being put in the generally available pool of hardware. There is a 'service' subcommand for nova-manage where you can enable, disable, and list statuses of services
2255 * pep8 fixes
2256 * Merged compute-api-cleanup branch
2257 * Removed compute dependency in quota.py
2258@@ -22751,7 +22795,7 @@ CHANGES
2259 * Merged trunk
2260 * Calling compute api directly from OpenStack image create
2261 * Several documentation corrections
2262-* merge recent revision(version of 2010/12/28) Change: 1. Use greenthread instead of defer at nova.virt.libvirt_conn.live_migration. 2. Move nova.scheduler.manager.live_migration to nova.scheduler.driver 3. Move nova.scheduler.manager.has_enough_resource to nova.scheduler.driver 4. Any check routine in nova-manage.instance.live_migration is moved to nova.scheduler.driver.schedule_live_migration
2263+* merge recent revision(version of 2010/12/28) Change: 1. Use greenthread instead of defer at nova.virt.libvirt_conn.live_migration. 2. Move nova.scheduler.manager.live_migration to nova.scheduler.driver 3. Move nova.scheduler.manager.has_enough_resource to nova.scheduler.driver 4. Any check routine in nova-manage.instance.live_migration is moved to nova.scheduler.driver.schedule_live_migration
2264 * Merging trunk
2265 * Note that contributors are required to be listed in Authors file before work can be merged into trunk
2266 * Mention Authors and .mailmap files in Developer Guide
2267@@ -22779,7 +22823,7 @@ CHANGES
2268 * removed lock check from show and changed returning 404 to 405
2269 * fix lp:695182, scheduler tests needed to DECLARE flag to run standalone
2270 * removed () from if (can't believe i did that) and renamed checks_lock decorator
2271-* Add the pool_recycle setting to enable connection pooling features for the sql engine. The setting is hard-coded to 3600 seconds (one hour) per the recommendation provided on sqlalchemy's site
2272+* Add the pool_recycle setting to enable connection pooling features for the sql engine. The setting is hard-coded to 3600 seconds (one hour) per the recommendation provided on sqlalchemy's site
2273 * i18n
2274 * Pep-8 cleanup
2275 * Fix scheduler testcase so it knows all flags and can run in isolation
2276@@ -22789,11 +22833,11 @@ CHANGES
2277 * fixed up test for lock
2278 * added tests for EC2 describe_instances
2279 * PEP8 cleanup
2280-* This branch fixes an issue where VM creation fails because of a missing flag definition for 'injected_network_template'. See Bug #695467 for more info
2281+* This branch fixes an issue where VM creation fails because of a missing flag definition for 'injected_network_template'. See Bug #695467 for more info
2282 * Added tests
2283 * added test for lock to os api
2284 * refactor
2285-* Re-added flag definition for injected_network_template. Tested & verified fix in the same env as the original bug
2286+* Re-added flag definition for injected_network_template. Tested & verified fix in the same env as the original bug
2287 * forgot import
2288 * syntax error
2289 * Merged trunk
2290@@ -22873,7 +22917,7 @@ CHANGES
2291 * テスト項目表がなぜか消えたので追加
2292 * nova.compute.managerがこれまでの修正でデグレしていたので修正 CPUID, その他のチェックルーチンをnova.scheduler.manager.live_migrationに追加
2293 * nova.compute.managerがこれまでの修正でデグレしていたので修正 CPUID, その他のチェックルーチンをnova.scheduler.manager.live_migrationに追加
2294-* Make nova work even when user has LANG or LC_ALL configured
2295+* Make nova work even when user has LANG or LC_ALL configured
2296 * merged trunk, resolved trivial conflict
2297 * merged trunk, resolved conflict
2298 * Faked out handling for shared ip groups so they return something
2299@@ -22915,7 +22959,7 @@ CHANGES
2300 * better bin name, and pep8
2301 * pep8 fixes
2302 * some pep8 fixes
2303-* removing xen/uml specific switches. If they need special treatment, we can add it
2304+* removing xen/uml specific switches. If they need special treatment, we can add it
2305 * add license
2306 * delete xtra dir
2307 * move euca-get-ajax-console up one directory
2308@@ -22928,7 +22972,7 @@ CHANGES
2309 * added power state logging to nova.virt.xenapi.vm_utils
2310 * added suspend as a power state
2311 * last merge trunk before push
2312-* merge trunk, fixed unittests, added i18n strings, cleanups etc etc
2313+* merge trunk, fixed unittests, added i18n strings, cleanups etc etc
2314 * And the common module
2315 * minor notes, commit before rewriting proxy with eventlet
2316 * There were a few unclaimed addresses in mailmap
2317@@ -22943,7 +22987,7 @@ CHANGES
2318 * Fixes reboot (and rescue) to work even if libvirt doesn't know about the instance and the network doesn't exist
2319 * merged trunk
2320 * Fixes reboot (and rescue) to work even if libvirt doesn't know about the instance and the network doesn't exist
2321-* Adds a flag to use the X-Forwarded-For header to find the ip of the remote server. This is needed when you have multiple api servers with a load balancing proxy in front. It is a flag that defaults to False because if you don't have a sanitizing proxy in front, users could masquerade as other ips by passing in the header manually
2322+* Adds a flag to use the X-Forwarded-For header to find the ip of the remote server. This is needed when you have multiple api servers with a load balancing proxy in front. It is a flag that defaults to False because if you don't have a sanitizing proxy in front, users could masquerade as other ips by passing in the header manually
2323 * Got basic xenstore operations working
2324 * Merged trunk
2325 * Modified InstanceDiagnostics and truncate action
2326@@ -22969,7 +23013,7 @@ CHANGES
2327 * working connection security
2328 * WSGI middleware for lockout after failed authentications of ec2 access key
2329 * Modifies nova-network to recreate important data on start
2330-* Puts the creation of nova iptables chains into the source code and cleans up rule creation. This makes nova play more nicely with other iptables rules that may be created on the host
2331+* Puts the creation of nova iptables chains into the source code and cleans up rule creation. This makes nova play more nicely with other iptables rules that may be created on the host
2332 * Forgot the copyright info
2333 * i18n support for xs-snaps
2334 * Finished moving the middleware layers and fixed the API tests again
2335@@ -23008,7 +23052,7 @@ CHANGES
2336 * Burnin support by specifying a specific host via availability_zone for running instances and volumes on
2337 * Merged trunk
2338 * This stops the nova-network dhcp ip from being added to all of the compute hosts
2339-* prototype works with kvm. now moving call from api to compute
2340+* prototype works with kvm. now moving call from api to compute
2341 * Style correction
2342 * fix reboot command to work even if a host is rebooted
2343 * Filter templates and dom0 from list_instances()
2344@@ -23039,7 +23083,7 @@ CHANGES
2345 * Typo fix, stubbing out to use admin project for now
2346 * Close devnull filehandle
2347 * added suspend and resume
2348-* Rewrite of vif_rules.py to meet coding standards and be more pythonic in general. Use absolute paths for iptables/ebtables/arptables in host-rules
2349+* Rewrite of vif_rules.py to meet coding standards and be more pythonic in general. Use absolute paths for iptables/ebtables/arptables in host-rules
2350 * Add raw disk image support
2351 * Add my @linux2go.dk address to .mailmap
2352 * fixed some pep8 business
2353@@ -23057,8 +23101,8 @@ CHANGES
2354 * pep8 (again again)
2355 * pep8 (again)
2356 * small clean up
2357-* テストコードをレポジトリに追加 nova.compute.manager.pre_live_migration()について、異常終了しているのに正常終了の戻り値を返すことがあったため変更 - 正常終了の戻り値をTrueに変更 - fixed_ipが見つからないときにはRemoteErrorをraiseする - それに合わせてnova.compute.manager.live_migrationも変更
2358-* テストコードをレポジトリに追加 nova.compute.manager.pre_live_migration()について、異常終了しているのに正常終了の戻り値を返すことがあったため変更 - 正常終了の戻り値をTrueに変更 - fixed_ipが見つからないときにはRemoteErrorをraiseする - それに合わせてnova.compute.manager.live_migrationも変更
2359+* テストコードをレポジトリに追加 nova.compute.manager.pre_live_migration()について、異常終了しているのに正常終了の戻り値を返すことがあったため変更 - 正常終了の戻り値をTrueに変更 - fixed_ipが見つからないときにはRemoteErrorをraiseする - それに合わせてnova.compute.manager.live_migrationも変更
2360+* テストコードをレポジトリに追加 nova.compute.manager.pre_live_migration()について、異常終了しているのに正常終了の戻り値を返すことがあったため変更 - 正常終了の戻り値をTrueに変更 - fixed_ipが見つからないときにはRemoteErrorをraiseする - それに合わせてnova.compute.manager.live_migrationも変更
2361 * Support proxying api by using X-Forwarded-For
2362 * eventlet merge updates
2363 * Cleaned up TODOs, using flags now
2364@@ -23112,7 +23156,7 @@ CHANGES
2365 * Removed FakeInstance and introduced stubout for DB. Code clean-up
2366 * removed extra stuff used for debugging
2367 * Restore code which was changed for testing reasons to the original state. Kudos to Armando for spotting this
2368-* Make nova work even when user has LANG or LC_ALL configured
2369+* Make nova work even when user has LANG or LC_ALL configured
2370 * Merged changes from trunk into the branch
2371 * Hostテーブルのカラム名を修正 FlatManager, FlatDHCPManagerに対応
2372 * merged with trunk. fixed compute.pause test
2373@@ -23138,13 +23182,13 @@ CHANGES
2374 * added volume tests and extended fake to support them
2375 * Make sure the new, consolidated template gets included
2376 * Make sure we unlock the bzr tree again in the authors unit test
2377-* The ppa was moved. This updates nova.sh to reflect that
2378+* The ppa was moved. This updates nova.sh to reflect that
2379 * merged upstream
2380 * remove some logging
2381 * Merged from trunk and fixed merge issues. Also fixed pep8 issues
2382 * Lockout middleware for ec2 api
2383 * updates per review
2384-* Initial work on i18n. This adds the installation of the nova domain in gettext to all the "endpoints", which are all the bin/* files and run_tests.py
2385+* Initial work on i18n. This adds the installation of the nova domain in gettext to all the "endpoints", which are all the bin/* files and run_tests.py
2386 * For some reason, I forgot to commit the other endpoints..
2387 * Remove default_{kernel,ramdisk} flags. They are not used anymore
2388 * Don't attempt to fiddle with partitions for whole-disk-images
2389@@ -23210,7 +23254,7 @@ CHANGES
2390 * Changed OpenStack API auth layer to inject a RequestContext rather than building one everywhere we need it
2391 * changed resume to unpause
2392 * Import module instead of function
2393-* filter describe volumes by supplied ids. Includes unittest
2394+* filter describe volumes by supplied ids. Includes unittest
2395 * merging sandy's branch
2396 * Make get_diagnostics async
2397 * raw instances can now be launched in xenapi (only as hvm at the moment)
2398@@ -23285,7 +23329,7 @@ CHANGES
2399 * Remove dead test code
2400 * Add iptables based security groups implementation
2401 * Merged gundlach's fixes
2402-* Don't wrap HTTPAccepted in a fault. Correctly pass kwargs to update_instance
2403+* Don't wrap HTTPAccepted in a fault. Correctly pass kwargs to update_instance
2404 * fixed import module in __init__.py
2405 * minor changes to docstrings
2406 * added interim solution for target discovery. Now info can either be passed via flags or discovered via iscsiadm. Long term solution is to add a few more fields to the db in the iscsi_target table with the necessary info and modify the iscsi driver to set them
2407@@ -23293,7 +23337,7 @@ CHANGES
2408 * merge trunk
2409 * moved XenAPI namespace definition into xenapi/__init__.py
2410 * pylint and pep8 fixes
2411-* Decreased the maximum value for instance-id generation from uint32 to int32 to avoid truncation when being entered into the instance table. Reverted fix to make internal_id column a uint
2412+* Decreased the maximum value for instance-id generation from uint32 to int32 to avoid truncation when being entered into the instance table. Reverted fix to make internal_id column a uint
2413 * Finished cleaning up the openstack servers API, it no longer touches the database directly. Also cleaned up similar things in ec2 API and refactored a couple methods in nova.compute.api to accomodate this work
2414 * Merged reboot-rescue into network-manager
2415 * Merged trunk
2416@@ -23307,7 +23351,7 @@ CHANGES
2417 * Use newfangled compute_api
2418 * Update tests to use proper id
2419 * Fixing single node install doc
2420-* Oops, update 'display_name', not 'name'. And un-extract-method
2421+* Oops, update 'display_name', not 'name'. And un-extract-method
2422 * Correctly translate instance ids to internal_ids in some spots we neglected
2423 * Added test files to be ignored
2424 * Consolidated the start instance logic in the two API classes into a single method. This also cleans up a number of small discrepencies between the two
2425@@ -23326,15 +23370,15 @@ CHANGES
2426 * Add a simple abstraction for firewalls
2427 * fix nova.sh to reflect new location of ppa
2428 * Changed null_kernel flag from aki-00000000 to nokernel
2429-* Guarantee that the OpenStack API's Server-related responses will always contain a "name" value. And get rid of a redundant field in models.py
2430+* Guarantee that the OpenStack API's Server-related responses will always contain a "name" value. And get rid of a redundant field in models.py
2431 * Going for a record commits per line changes ratio
2432-* Oops, internal_id isn't available until after a save. This code saves twice; if I moved it into the DB layer we could do it in one save. However, we're moving to one sqlite db per compute worker, so I'd rather have two saves in order to keep the logic in the right layer
2433-* Todd points out that the API doesn't require a display_name, so let's make a default. That way the OpenStack API can rest assured that its server responses will always have a name key
2434+* Oops, internal_id isn't available until after a save. This code saves twice; if I moved it into the DB layer we could do it in one save. However, we're moving to one sqlite db per compute worker, so I'd rather have two saves in order to keep the logic in the right layer
2435+* Todd points out that the API doesn't require a display_name, so let's make a default. That way the OpenStack API can rest assured that its server responses will always have a name key
2436 * Adds in more documentation contributions from Citrix
2437 * Remove duplicate field and make OpenStack API return server.name for EC2-API-created instances
2438 * Move cc_host and cc_port flags into nova/network/linux_net.py. They weren't used anywhere else
2439 * Add include_package_data=True to setup.py
2440-* With utils.default_flagfile() in its old location, the flagfile isn't being read -- twistd.serve() loads flags earlier than that point. Move the utils.default_flagfile() call earlier so the flagfile is included
2441+* With utils.default_flagfile() in its old location, the flagfile isn't being read -- twistd.serve() loads flags earlier than that point. Move the utils.default_flagfile() call earlier so the flagfile is included
2442 * Removed a blank line
2443 * Broke parts of compute manager out into compute.api to separate what gets run on the API side vs the worker side
2444 * Move default_flagfile() call to where it will be parsed in time to load the flagfile
2445@@ -23344,7 +23388,7 @@ CHANGES
2446 * Fixed termie's tiny bits from the prior merge request
2447 * Delete unused flag in nova.sh
2448 * Moving the openldap schema out of nova.sh into it's own files, and adding sun (opends/opendj/sun directory server/fedora ds) schema files
2449-* OpenStack API returns the wrong x-server-management-url. Fix that
2450+* OpenStack API returns the wrong x-server-management-url. Fix that
2451 * Cleaned up pep8 errors
2452 * brought latest changes from trunk
2453 * iscsi volumes attach/detach complete. There is only one minor issue on how to discover targets from device_path
2454@@ -23355,7 +23399,7 @@ CHANGES
2455 * Rename imageSet variable to images
2456 * remove FAKE_subdomain reference
2457 * Return the correct server_management_url
2458-* Default flagfile moved in trunk recently. This updates nova.sh to run properly with the new flagfile location
2459+* Default flagfile moved in trunk recently. This updates nova.sh to run properly with the new flagfile location
2460 * Correctly handle imageId list passed to DescribeImages API call
2461 * update of nova.sh because default flagfile moved
2462 * merged trunk
2463@@ -23373,13 +23417,13 @@ CHANGES
2464 * other round of refactoring
2465 * further refactoring
2466 * typos and pep8 fixes
2467-* first cut of the refactoring of the XenAPIConnection class. Currently the class merged both the code for managing the XenAPI connection and the business logic for implementing Nova operations. If left like this, it would eventually become difficult to read, maintain and extend. The file was getting kind of big and cluttered, so a quick refactoring now will save a lot of headaches later
2468+* first cut of the refactoring of the XenAPIConnection class. Currently the class merged both the code for managing the XenAPI connection and the business logic for implementing Nova operations. If left like this, it would eventually become difficult to read, maintain and extend. The file was getting kind of big and cluttered, so a quick refactoring now will save a lot of headaches later
2469 * PEP fixes
2470 * Adding support for modification only of user accounts
2471 * This modification should have occured in a different branch. Reverting
2472 * added attach_volume implementation
2473 * work on attach_volume, with a few things to iron out
2474-* A few more changes: * Fixed up some flags * Put in an updated nova.sh * Broke out metadata forwarding so it will work in flatdhcp mode * Added descriptive docstrings explaining the networking modes in more detail
2475+* A few more changes: * Fixed up some flags * Put in an updated nova.sh * Broke out metadata forwarding so it will work in flatdhcp mode * Added descriptive docstrings explaining the networking modes in more detail
2476 * small conflict resolution
2477 * first cut of changes for the attach_volume call
2478 * The image server should throw not found errors, don't need to check in compute manager
2479@@ -23416,13 +23460,12 @@ CHANGES
2480 * updated nova.sh
2481 * added flat_interface for flat_dhcp binding
2482 * changed bridge_dev to vlan_interface
2483-*
2484 * Add a --logdir flag that will be prepended to the logfile setting. This makes it easier to share a flagfile between multiple workers while still having separate log files
2485 * added svg files (state.svg is missing because its source is a screen snapshot)
2486 * Unify the location of the default flagfile. Not all workers called utils.default_flagfile, and nova-manage explicitly said to use the one in /etc/nova/nova-manage.conf
2487 * Set and use AMQP retry interval and max retry FLAGS
2488 * Incorporating security groups info
2489-* Rename cloudServersFault (rackspace branding) to computeFault. Fixes bug lp680285
2490+* Rename cloudServersFault (rackspace branding) to computeFault. Fixes bug lp680285
2491 * Use FLAGS instead of constants
2492 * Incorporating more networking info
2493 * Make time.sleep() non-blocking
2494@@ -23444,7 +23487,7 @@ CHANGES
2495 * Adds images (only links one in), start for a nova-manage man file, and also documents all nova-manage commands. Can we merge it in even though the man page build isn't working?
2496 * Added some comments
2497 * Check for running AMQP instances
2498-* first cut of fixes for bug #676128
2499+* first cut of fixes for bug #676128
2500 * Removed .DS_Store files everywhere, begone!
2501 * Moves the EC2 API S3 image service into nova.service. There is still work to be done to make the APIs align, but this is the first step
2502 * PEP8 fixes, 2 lines were too long
2503@@ -23469,12 +23512,12 @@ CHANGES
2504 * small edit
2505 * Further editing and added images
2506 * Update version to 2011.1 as that is the version we expect to release next
2507-* ec2_api commands for describe_addresses and associate_address are broken in trunk. This happened during the switch to ec2_id and internal_id. We clearly didn't have any unit tests for this, so I've added a couple in addition to the three line change to actually fix the bugs
2508+* ec2_api commands for describe_addresses and associate_address are broken in trunk. This happened during the switch to ec2_id and internal_id. We clearly didn't have any unit tests for this, so I've added a couple in addition to the three line change to actually fix the bugs
2509 * delete floating ips after tests
2510 * remove extra line and ref. to LOG that doesn't exist
2511 * fix leaking floating ip from network unittests and use of fakeldap driver
2512 * Adds nova-debug to tools directory, for debugging of instances that lose networking
2513-* fixes errors in describe address and associate address. Adds test cases
2514+* fixes errors in describe address and associate address. Adds test cases
2515 * Ryan_Lane's code to handle /etc/network not existing when we try to inject /etc/network/interfaces into an image
2516 * pep8
2517 * First dump of content related to Nova RPC and RabbitMQ
2518@@ -23485,7 +23528,7 @@ CHANGES
2519 * Changed from fine-grained operation control to binary admin on/off setting
2520 * Changed from fine-grained operation control to binary admin on/off setting
2521 * Lots of documentation and docstring updates
2522-* The docs are just going to be wrong for now. I'll file a bug upstream
2523+* The docs are just going to be wrong for now. I'll file a bug upstream
2524 * Change how wsgified doc wrapping happens to fix test
2525 * merge to trunk
2526 * pep8
2527@@ -23509,14 +23552,14 @@ CHANGES
2528 * Add sample puppet scripts
2529 * fix install guide
2530 * getting started
2531-* create SPHINX_DEBUG env var. Setting this will disable aggressive autodoc generation. Also provide some sample for P syntax
2532+* create SPHINX_DEBUG env var. Setting this will disable aggressive autodoc generation. Also provide some sample for P syntax
2533 * fix conf file from earlier merge
2534 * notes, and add code to enable sorted "..todo:: P[1-5] xyz" syntax
2535 * merge in more networking docs - still a work in progress
2536 * anne's changes to the networking documentation
2537 * Updated Networking doc
2538 * anne gentle's changes to community page
2539-* merge in heckj's corrections to multi-node install
2540+* merge in heckj's corrections to multi-node install
2541 * Added a .mailmap that maps addresses in bzr to people's real, preferred e-mail addresses. (I made a few guesses along the way, feel free to adjust according to what is actually the preferred e-mail)
2542 * Updated community.rst to fix a link to the IRC logs
2543 * merging in changes from ~anso/nova/trunkdoc
2544@@ -23548,7 +23591,7 @@ CHANGES
2545 * quieter doc building (less warnings)
2546 * File moves from "merge" of termie's branch
2547 * back out stacked merge
2548-* Doc updates: * quieter build (fewer warnings) * move api reference out of root directory * auto glob api reference into a TOC * remove old dev entries for new-fangled auto-generated docs
2549+* Doc updates: * quieter build (fewer warnings) * move api reference out of root directory * auto glob api reference into a TOC * remove old dev entries for new-fangled auto-generated docs
2550 * Normalization of Dev reference docs
2551 * Switch to module-per-file for the module index
2552 * Allow case-by-case overriding of autodocs
2553@@ -23577,12 +23620,12 @@ CHANGES
2554 * Getting Started Guide
2555 * Nova quickstart: move vish's novascript into contrib, and convert reademe.md to a quickstart.rst
2556 * merge trunk
2557-* Add a templating mechanism in the flag parsing. Add a state_path flag that will be used as the top-level dir for all other state (such as images, instances, buckets, networks, etc). This way you only need to change one flag to put all your state in e.g. /var/lib/nova
2558+* Add a templating mechanism in the flag parsing. Add a state_path flag that will be used as the top-level dir for all other state (such as images, instances, buckets, networks, etc). This way you only need to change one flag to put all your state in e.g. /var/lib/nova
2559 * add missing file
2560 * Cleanup nova-manage section
2561 * have "contents" look the same as other headings
2562 * Enables the exclusive flag for DirectConsumer queues
2563-* Ensures that keys for context from the queue are passed to the context constructor as strings. This prevents hangs on older versions of python that can't handle unicode kwargs
2564+* Ensures that keys for context from the queue are passed to the context constructor as strings. This prevents hangs on older versions of python that can't handle unicode kwargs
2565 * Fix for bug #640400, enables the exclusive flag on the temporary queues
2566 * pep8 whitespace and line length fixes
2567 * make sure context keys are not unicode so they can be passed as kwargs
2568@@ -23676,7 +23719,7 @@ CHANGES
2569 * Added Google Analytics code
2570 * renamed target_id to iscsi_target
2571 * merged gundlach's excision
2572-* Oops, didn't mean to check this one in. Ninja-patch
2573+* Oops, didn't mean to check this one in. Ninja-patch
2574 * Delete BaseTestCase and with it the last reference to tornado
2575 * fix completely broken ServiceTestCase
2576 * Removes some cruft from sqlalchemy/models.py like unused imports and the unused str_id method
2577@@ -23741,7 +23784,7 @@ CHANGES
2578 * Also update version in docs
2579 * Update version to 2010.1 in preparation for Austin release
2580 * * Fills out the Parallax/Glance API calls for update/create/delete and adds unit tests for them. * Modifies the ImageController and GlanceImageService/LocalImageService calls to use index and detail routes to comply perfectly with the RS/OpenStack API
2581-* Makes disk.partition resize root drive to 10G, unless it is m1.tiny which just leaves it as is. Larger images are just used as is
2582+* Makes disk.partition resize root drive to 10G, unless it is m1.tiny which just leaves it as is. Larger images are just used as is
2583 * reverted python-boto version in pip-requires to 1.9b1
2584 * Construct exception instead of raising a class
2585 * Authorize Image before download
2586@@ -23754,14 +23797,14 @@ CHANGES
2587 * Makes nova-dhcpbridge notify nova-network on old network lease updates
2588 * add reasonable gb to instance types
2589 * it is flags.DEFINE_integer, not FLAGS.define_int
2590-* Makes disk.partition resize root drive to 10G, unless it is m1.tiny which just leaves it as is. Larger images are just used as is
2591+* Makes disk.partition resize root drive to 10G, unless it is m1.tiny which just leaves it as is. Larger images are just used as is
2592 * update leases on old leases as well
2593 * Adds a simple nova-manage command called scrub to deallocate the network and remove security groups for a projeect
2594 * Refresh MANIFEST.in to make the tarball include all the stuff that belongs in the tarball
2595 * Added test case to reproduce bug #660668 and provided a fix by using the user_id from the auth layer instead of the username header
2596 * Add the last few things to MANIFEST.in
2597 * Also add Xen template to manifest
2598-* Fix two problems with get_console_log: * libvirt has this annoying "feature" where it chown()s your console to the uid running libvirt. That gets in the way of reading it. Add a call to "sudo chown ...." right before we read it to make sure it works out well. * We were looking in the wrong directory for console.log. *blush*
2599+* Fix two problems with get_console_log: * libvirt has this annoying "feature" where it chown()s your console to the uid running libvirt. That gets in the way of reading it. Add a call to "sudo chown ...." right before we read it to make sure it works out well. * We were looking in the wrong directory for console.log. *blush*
2600 * This branch converts incoming data to the api into the proper type
2601 * Fixes deprecated use of context in nova-manage network create
2602 * Add a bunch of stuff to MANIFEST.in that has been added to the tree over the last couple of months
2603@@ -23769,7 +23812,7 @@ CHANGES
2604 * Fix two problems with get_console_log: libvirt has this annoying "feature" where it chown()s your console to the uid running libvirt. That gets in the way of reading it. We were looking in the wrong directory for console.log. *blush*
2605 * Fix for bug 660818 by adding the resource ID argument
2606 * Reorg the image services code to push glance stuff into its own directory
2607-* Fix some unit tests: * One is a race due to the polling nature of rpc in eventlet based unit tests. * The other is a more real problem. It was caused by datastore.py being removed. It wasn't caught earlier because the .pyc file was still around on the tarmac box
2608+* Fix some unit tests: * One is a race due to the polling nature of rpc in eventlet based unit tests. * The other is a more real problem. It was caused by datastore.py being removed. It wasn't caught earlier because the .pyc file was still around on the tarmac box
2609 * Add a greenthread.sleep(0.3) in get_console_output unit test. This is needed because, for eventlet based unit tests, rpc polls, and there's a bit of a race. We need to fix this properly later on
2610 * Perform a redisectomy on bin/nova-dhcpbridge
2611 * Removed 'and True' oddity
2612@@ -23785,7 +23828,7 @@ CHANGES
2613 * Added test case to reproduce bug #660668 and provided a fix by using the user_id from the auth layer instead of the username header
2614 * get flags for nova-manage and fix a couple more deprecations
2615 * Fix for bug#660818, allows tests to pass since delete expects a resource ID
2616-* This branch modifies the fixes all of the deprecation warnings about empty context. It does this by adding the following fixes/features * promotes api/context.py to context.py because it is used by the whole system * adds more information to the context object * passes the context through rpc * adds a helper method for promoting to admin context (elevate()) * modifies most checks to use context.project_id instead of context.project.id to avoid trips to the database
2617+* This branch modifies the fixes all of the deprecation warnings about empty context. It does this by adding the following fixes/features * promotes api/context.py to context.py because it is used by the whole system * adds more information to the context object * passes the context through rpc * adds a helper method for promoting to admin context (elevate()) * modifies most checks to use context.project_id instead of context.project.id to avoid trips to the database
2618 * timestamps are passed as unicode
2619 * Removed stray spaces that were causing an unnecessary diff line
2620 * merged trunk
2621@@ -23822,7 +23865,7 @@ CHANGES
2622 * Fixes LP Bug#660095
2623 * Xen support
2624 * Adds flat networking + dhcpserver mode
2625-* This patch removes the ugly network_index that is used by VlanManager and turns network itself into a pool. It adds support for creating the networks through an api command: nova-manage network create # creates all of the networks defined by flags or nova-manage network create 5 # create the first five networks
2626+* This patch removes the ugly network_index that is used by VlanManager and turns network itself into a pool. It adds support for creating the networks through an api command: nova-manage network create # creates all of the networks defined by flags or nova-manage network create 5 # create the first five networks
2627 * Newlines again, reorder imports
2628 * Remove extraneous newlines
2629 * Fix typo, fix import
2630@@ -23835,13 +23878,13 @@ CHANGES
2631 * merged trunk
2632 * merged trunk
2633 * Revert the conversion to 64-bit ints stored in a PickleType column, because PickleType is incompatible with having a unique constraint
2634-* Revert 64 bit storage and use 32 bit again. I didn't notice that we verify that randomly created uids don't already exist in the DB, so the chance of collision isn't really an issue until we get to tens of thousands of machines. Even then we should only expect a few retries before finding a free ID
2635+* Revert 64 bit storage and use 32 bit again. I didn't notice that we verify that randomly created uids don't already exist in the DB, so the chance of collision isn't really an issue until we get to tens of thousands of machines. Even then we should only expect a few retries before finding a free ID
2636 * Add design doc, docstrings, document hyper-v wmi, python wmi usage. Adhere to pep-8 more closely
2637-* This patch adds support for EC2 security groups using libvirt's nwfilter mechanism, which in turn uses iptables and ebtables on the individual compute nodes. This has a number of benefits: * Inter-VM network traffic can take the fastest route through the network without our having to worry about getting it through a central firewall. * Not relying on a central firewall also removes a potential SPOF. * The filtering load is distributed, offering great scalability
2638+* This patch adds support for EC2 security groups using libvirt's nwfilter mechanism, which in turn uses iptables and ebtables on the individual compute nodes. This has a number of benefits: * Inter-VM network traffic can take the fastest route through the network without our having to worry about getting it through a central firewall. * Not relying on a central firewall also removes a potential SPOF. * The filtering load is distributed, offering great scalability
2639 * Change internal_id from a 32 bit int to a 64 bit int
2640-* 32 bit internal_ids become 64 bit. Since there is no 64 bit native type in SqlAlchemy, we use PickleType which uses the Binary SqlAlchemy type under the hood
2641+* 32 bit internal_ids become 64 bit. Since there is no 64 bit native type in SqlAlchemy, we use PickleType which uses the Binary SqlAlchemy type under the hood
2642 * Make Instance.name a string again instead of an integer
2643-* Now that the ec2 id is not the same as the name of the instance, don't compare internal_id [nee ec2_id] to instance names provided by the virtualization driver. Compare names directly instead
2644+* Now that the ec2 id is not the same as the name of the instance, don't compare internal_id [nee ec2_id] to instance names provided by the virtualization driver. Compare names directly instead
2645 * Fix bug 659330
2646 * Catch exception.NotFound when getting project VPN data
2647 * Improve the virt unit tests
2648@@ -23895,19 +23938,19 @@ CHANGES
2649 * Update Parallax default port number to match Glance
2650 * One last bad line
2651 * merge from gundlach ec2 conversion
2652-* Adds ParallaxClient and TellerClient plumbing for GlanceImageService. Adds stubs FakeParallaxClient and unit tests for LocalImageService and GlanceImageService
2653+* Adds ParallaxClient and TellerClient plumbing for GlanceImageService. Adds stubs FakeParallaxClient and unit tests for LocalImageService and GlanceImageService
2654 * Fix broken unit tests
2655 * Matches changes in the database / model layer with corresponding fixes to nova.virt.xenapi
2656 * Replace the embarrasingly crude string based tests for to_xml with some more sensible ElementTree based stuff
2657 * A shiny, new Auth driver backed by SQLAlchemy. Read it and weep. I did
2658-* Move manager_class instantiation and db.service_* calls out of nova.service.Service.__init__ into a new nova.service.Service.startService method which gets called by twisted. This delays opening db connections (and thus sqlite file creation) until after privileges have been shed by twisted
2659+* Move manager_class instantiation and db.service_* calls out of nova.service.Service.__init__ into a new nova.service.Service.startService method which gets called by twisted. This delays opening db connections (and thus sqlite file creation) until after privileges have been shed by twisted
2660 * Add pylint thingamajig for startService (name defined by Twisted)
2661 * Revert r312
2662 * Add a context of None to the call to db.instance_get_all
2663 * Honour the --verbose flag by setting the logging level to DEBUG
2664 * Accidentally renamed volume related stuff
2665 * More clean up and conflict resolution
2666-* Move manager_class instantiation and db.service_* calls out of nova.service.Service.__init__ into a new nova.service.Service.startService method which gets called by twisted. This delays opening db connections (and thus sqlite file creation) until after privileges have been shed by twisted
2667+* Move manager_class instantiation and db.service_* calls out of nova.service.Service.__init__ into a new nova.service.Service.startService method which gets called by twisted. This delays opening db connections (and thus sqlite file creation) until after privileges have been shed by twisted
2668 * Bug #653560: AttributeError in VlanManager.periodic_tasks
2669 * Bug #653534: NameError on session_get in sqlalchemy.api.service_update
2670 * Fixes to address the following issues:
2671@@ -23924,7 +23967,7 @@ CHANGES
2672 * Adjust db api usage according to recent refactoring
2673 * Make _dhcp_file ensure the existence of the directory containing the files it returns
2674 * Keep handles to loggers open after daemonizing
2675-* Adds BaseImageService and flag to control image service loading. Adds unit test for local image service
2676+* Adds BaseImageService and flag to control image service loading. Adds unit test for local image service
2677 * Cleans up the unit tests that are meant to be run with nosetests
2678 * Refactor sqlalchemy api to perform contextual authorization
2679 * automatically convert strings passed into the api into their respective original values
2680@@ -23951,7 +23994,7 @@ CHANGES
2681 * Get rid of mention of mongo, since we are using openstack/swift
2682 * Mongo bad, swift good
2683 * Add a DB backend for auth manager
2684-* Bug #652103: NameError in exception handler in sqlalchemy API layer
2685+* Bug #652103: NameError in exception handler in sqlalchemy API layer
2686 * Bug #652103: NameError in exception handler in sqlalchemy API layer
2687 * Bug #651887: xenapi list_instances completely broken
2688 * Grabbed the wrong copyright info
2689@@ -24081,7 +24124,7 @@ CHANGES
2690 * fix a few missed calls to _confirm_rule and 80 char issues
2691 * allow mgmt ip access to api
2692 * flush the nova chains
2693-* Test the AuthManager interface explicitly, in case the user/project wrappers fail or change at some point. Those interfaces should be tested on their own
2694+* Test the AuthManager interface explicitly, in case the user/project wrappers fail or change at some point. Those interfaces should be tested on their own
2695 * Update auth manager to have a update_user method and better tests
2696 * add a reset command
2697 * Merged Termie's branch and fixed rpc test cases for tesited. Nothing is testing the Eventlet version of rpc.call though yet
2698@@ -24102,11 +24145,11 @@ CHANGES
2699 * put setup_iptables in the right dir
2700 * Fixed rpc consumer to use unique return connection to prevent overlap. This could be reworked to share a connection, but it should be a wait operation and not a fast poll like it was before. We could also keep a cache of opened connections to be used between requests
2701 * fixed a couple of typos
2702-* Re-added the ramdisk line I accidentally removed
2703+* Re-added the ramdisk line I accidentally removed
2704 * Added a primary_key to AuthToken, fixed some unbound variables, and now all unit tests pass
2705 * Missed the model include, and fixed a broken test after the merge
2706 * Some more refactoring and another unit test
2707-* Refactored the auth branch based on review feedback
2708+* Refactored the auth branch based on review feedback
2709 * Replaced the existing Rackspace Auth Mechanism with one that mirrors the implementation in the design document
2710 * Merged gundlach's branch
2711 * renamed ipchains to iptables
2712@@ -24153,15 +24196,15 @@ CHANGES
2713 * Moves keypairs out of ldap and into the common datastore
2714 * Fixes server error on get metadata when instances are started without keypairs
2715 * allows api servers to have a list of regions, allowing multi-cluster support if you have a shared image store and user database
2716-* Don't use something the shell will escape as a separator. | is now =
2717+* Don't use something the shell will escape as a separator. | is now =
2718 * Added modify project command to auth manager to allow changing of project manager and description
2719 * merged trunk
2720 * merged trunk
2721 * Refactored the auth branch based on review feedback
2722 * Whitespace fixes
2723-* Support querying version list, per the RS API spec. Fixes bug 613117
2724+* Support querying version list, per the RS API spec. Fixes bug 613117
2725 * Undo run_tests.py modification in the hopes of making this merge
2726-* Add a RateLimitingMiddleware to the Rackspace API, implementing the rate limits as defined by the current Cloud Servers spec. The Middleware can do rate counting in memory, or (for deployments that have more than one API Server) can offload to a rate limiting service
2727+* Add a RateLimitingMiddleware to the Rackspace API, implementing the rate limits as defined by the current Cloud Servers spec. The Middleware can do rate counting in memory, or (for deployments that have more than one API Server) can offload to a rate limiting service
2728 * Use assertRaises
2729 * A small fix to the install_venv program to allow us to run it on the tarmac box as part of the tarmac build
2730 * Removes second copy of ProcessExecutionError that creeped in during a bad merge
2731@@ -24174,7 +24217,7 @@ CHANGES
2732 * Adds timing fields to instances and volumes to track launch times and schedule times
2733 * updated docstring
2734 * add in a few comments
2735-* s/\t/ /g, and add some comments
2736+* s/\t/ /g, and add some comments
2737 * add in support for ajaxterm console access
2738 * add security and session timeout to ajaxterm
2739 * initial commit of ajaxterm
2740@@ -24185,7 +24228,7 @@ CHANGES
2741 * Better error message on the failure of a spawned process, and it's a ProcessExecutionException irrespective of how the process is run (twisted or not)
2742 * Added iptables host initial configuration
2743 * Added iptables host initial configuration
2744-* Proposing merge to get feedback on orm refactoring. I am very interested in feedback to all of these changes
2745+* Proposing merge to get feedback on orm refactoring. I am very interested in feedback to all of these changes
2746 * Support querying version list
2747 * Add support for middleware proxying to a ratelimiting.WSGIApp, for deployments that use more than one API Server and thus can't store ratelimiting counters in memory
2748 * Test the WSGIApp
2749@@ -24196,7 +24239,7 @@ CHANGES
2750 * More ORM object cleanup
2751 * Clean up use of objects coming out of the ORM
2752 * RateLimitingMiddleware
2753-* Add ratelimiting package into Nova. After Austin it'll be pulled out into PyPI
2754+* Add ratelimiting package into Nova. After Austin it'll be pulled out into PyPI
2755 * When destroying a VM using the XenAPI backend, if the VM is still running (the usual case) the destroy fails. It needs to be powered-off first
2756 * Leave out the network setting from the interfaces template. It does not get passed anymore
2757 * Network model has network_str attribute
2758@@ -24213,7 +24256,7 @@ CHANGES
2759 * Pull S3ImageService out of this mergeprop
2760 * Correctly pass ip_address to templates
2761 * Fix call to listNWFilters
2762-* (Untested) Make changes to security group rules propagate to the relevant compute nodes
2763+* Make changes to security group rules propagate to the relevant compute nodes
2764 * Filters all get defined when running an instance
2765 * added missing yield in detach_volume
2766 * multiple network controllers will not create duplicate indexes
2767@@ -24227,7 +24270,7 @@ CHANGES
2768 * set leased = 0 as well on disassociate update
2769 * speed up the query and make sure allocated is false
2770 * workaround for mysql select in update
2771-* Periodic callback for services and managers. Added code to automatically disassociate stale ip addresses
2772+* Periodic callback for services and managers. Added code to automatically disassociate stale ip addresses
2773 * fixed typo
2774 * flag for retries on volume commands
2775 * auto all and start all exceptions should be ignored
2776@@ -24405,7 +24448,7 @@ CHANGES
2777 * Bug #630640: Duplicated power state constants
2778 * Bug #630636: XenAPI VM destroy fails when the VM is still running
2779 * removed extra equals
2780-* Just a couple of UML-only fixes:  * Due to an issue with libvirt, we need to chown the disk image to root.  * Just point UML's console directly at a file, and don't bother with the pty. It was only used for debugging
2781+* Just a couple of UML-only fixes: * Due to an issue with libvirt, we need to chown the disk image to root. * Just point UML's console directly at a file, and don't bother with the pty. It was only used for debugging
2782 * removed extra file and updated sql note
2783 * merged fixed format instances from orm
2784 * fixed up format_instances
2785@@ -24431,7 +24474,7 @@ CHANGES
2786 * Move nova.endpoint.images to api.ec2 and delete nova.endpoint
2787 * Cloud tests pass
2788 * OMG got api_unittests to pass
2789-* send requests to the main API instead of to the EC2 subset -- so that it can parse out the '/services/' prefix. Also, oops, match on path_info instead of path like we're supposed to
2790+* send requests to the main API instead of to the EC2 subset -- so that it can parse out the '/services/' prefix. Also, oops, match on path_info instead of path like we're supposed to
2791 * Remove unused APIRequestContext.handler
2792 * Use port that boto expects
2793 * merged orm branch
2794@@ -24516,7 +24559,7 @@ CHANGES
2795 * fixed service mox test cases
2796 * Renamed test.py and moved a test as per merge proposal feedback
2797 * fixed volume unit tests
2798-* work endpoint/images.py into an S3ImageService. The translation isn't perfect, but it's a start
2799+* work endpoint/images.py into an S3ImageService. The translation isn't perfect, but it's a start
2800 * get to look like trunk
2801 * Set UML guests to use a file as their console. This halfway fixes get-console-output for them
2802 * network tests pass again
2803@@ -24529,7 +24572,7 @@ CHANGES
2804 * Use compute.instance_types for flavor data instead of a FlavorService
2805 * more data layer breakouts, lots of fixes to cloud.py
2806 * merged jesse
2807-* Initial support for Rackspace API /image requests. They will eventually be backed by Glance
2808+* Initial support for Rackspace API /image requests. They will eventually be backed by Glance
2809 * Fix a pep8 violation
2810 * improve the volume export - sleep & check export
2811 * missing context and move volume_update to before the export
2812@@ -24566,7 +24609,7 @@ CHANGES
2813 * moving network code and fixing run_instances
2814 * jesse's run_instances changes
2815 * fix daemons and move network code
2816-* Rework virt.xenapi's concurrency model. There were many places where we were inadvertently blocking the reactor thread. The reworking puts all calls to XenAPI on background threads, so that they won't block the reactor thread
2817+* Rework virt.xenapi's concurrency model. There were many places where we were inadvertently blocking the reactor thread. The reworking puts all calls to XenAPI on background threads, so that they won't block the reactor thread
2818 * merged trunk and fixed merge errors
2819 * Refactored network model access into data abstraction layer
2820 * Get the output formatting correct
2821@@ -24635,7 +24678,7 @@ CHANGES
2822 * In an effort to keep new and old API code separate, I've created a nova.api to put all new API code under. This means nova.endpoint only contains the old Tornado implementation. I also cleaned up a few pep8 and other style nits in the new API code
2823 * No longer installs a virtualenv automatically and adds new options to bypass the interactive prompt
2824 * Stylistic improvements
2825-* Add documentation to spawn, reboot, and destroy stating that those functions should return Deferreds. Update the fake implementations to do so (the libvirt ones already do, and making the xenapi ones do so is the subject of a current merge request)
2826+* Add documentation to spawn, reboot, and destroy stating that those functions should return Deferreds. Update the fake implementations to do so (the libvirt ones already do, and making the xenapi ones do so is the subject of a current merge request)
2827 * start with model code
2828 * clean up linux_net
2829 * merged refresh from sleepsonthefloor
2830@@ -24661,8 +24704,8 @@ CHANGES
2831 * typos
2832 * don't try to create and destroy lvs in fake mode
2833 * refactoring volume and some cleanup in model and compute
2834-* Add documentation to spawn, reboot, and destroy stating that those functions should return Deferreds. Update the fake implementations to do so (the libvirt ones already do, and making the xenapi ones do so is the subject of a current merge request)
2835-* Rework virt.xenapi's concurrency model. There were many places where we were inadvertently blocking the reactor thread. The reworking puts all calls to XenAPI on background threads, so that they won't block the reactor thread
2836+* Add documentation to spawn, reboot, and destroy stating that those functions should return Deferreds. Update the fake implementations to do so (the libvirt ones already do, and making the xenapi ones do so is the subject of a current merge request)
2837+* Rework virt.xenapi's concurrency model. There were many places where we were inadvertently blocking the reactor thread. The reworking puts all calls to XenAPI on background threads, so that they won't block the reactor thread
2838 * add refresh on model
2839 * merge in latedt from vish
2840 * Catches and logs exceptions for rpc calls and raises a RemoteError exception on the caller side
2841@@ -24696,7 +24739,7 @@ CHANGES
2842 * Support JSON and XML in Serializer
2843 * Added note regarding dependency upon XenAPI.py
2844 * Added documentation to the nova.virt interface
2845-* make rpc.call propogate exception info. Includes tests
2846+* make rpc.call propogate exception info. Includes tests
2847 * Undo the changes to cloud.py that somehow diverged from trunk
2848 * Mergeprop cleanup
2849 * Mergeprop cleanup
2850@@ -24721,7 +24764,7 @@ CHANGES
2851 * Prototype implementation of Servers controller
2852 * Working router that can target WSGI middleware or a standard controller+action
2853 * Added a xapi plugin that can pull images from nova-objectstore, and use that to get a disk, kernel, and ramdisk for the VM
2854-* Serializing in middleware after all... by tying to the router. maybe a good idea?
2855+* Serializing in middleware after all... by tying to the router. maybe a good idea?
2856 * Merged with trunk
2857 * Actually pass in hostname and create a proper model for data in network code
2858 * Improved roles functionality (listing & improved test coverage)
2859@@ -24749,9 +24792,9 @@ CHANGES
2860 * pylint fixes for nova/objectstore/handler.py
2861 * rename create_zip to zipfile so lazy match works
2862 * Quick fix on location of printouts when trying to install virtualenv
2863-* Changes the run_tests.sh and /tools/install_venv.py scripts to be more user-friendly and not depend on PIP while not in the virtual environment. Running run_tests.sh should not just work out of the box on all systems supporting easy_install..
2864-* 2 changes in doing PEP8 & Pylint cleaning: * adding pep8 and pylint to the PIP requirements files for Tools * light cleaning work (mostly formatting) on nova/endpoints/cloud.py
2865-* More changes to volume to fix concurrency issues. Also testing updates
2866+* Changes the run_tests.sh and /tools/install_venv.py scripts to be more user-friendly and not depend on PIP while not in the virtual environment. Running run_tests.sh should not just work out of the box on all systems supporting easy_install..
2867+* 2 changes in doing PEP8 & Pylint cleaning: * adding pep8 and pylint to the PIP requirements files for Tools * light cleaning work (mostly formatting) on nova/endpoints/cloud.py
2868+* More changes to volume to fix concurrency issues. Also testing updates
2869 * Merge
2870 * Merged nova-tests-apitest into pylint
2871 * Merged nova-virt-connection into nova-tests-apitest
2872@@ -24769,7 +24812,7 @@ CHANGES
2873 * Run correctly even if called while in tools/ directory, as 'python install_venv.py'
2874 * This branch builds off of Todd and Michael's API branches to rework the Rackspace API endpoint and WSGI layers
2875 * separated scheduler types into own modules
2876-* Fix up variable names instead of disabling pylint naming rule. Makes variables able to be a single letter in pylintrc
2877+* Fix up variable names instead of disabling pylint naming rule. Makes variables able to be a single letter in pylintrc
2878 * Disables warning about TODO in code comments in pylintrc
2879 * More pylint/pep8 cleanup, this time in bin/* files
2880 * pylint fixes for nova/server.py
2881@@ -24799,8 +24842,8 @@ CHANGES
2882 * pep8 and pylint cleanups
2883 * Some pylink and pep8 cleanups. Added a pylintrc file
2884 * fix copyrights for new files, etc
2885-* a few more commands were putting output on stderr. In general, exceptions on stderr output seems like a bad idea
2886-* Moved Scheduler classes into scheduler.py. Created a way to specify scheduler class that the SchedulerService uses..
2887+* a few more commands were putting output on stderr. In general, exceptions on stderr output seems like a bad idea
2888+* Moved Scheduler classes into scheduler.py. Created a way to specify scheduler class that the SchedulerService uses..
2889 * Make network its own worker! This separates the network logic from the api server, allowing us to have multiple network controllers. There a lot of stuff in networking that is ugly and should be modified with the datamodel changes. I've attempted not to mess with those things too much to keep the changeset small(ha!)
2890 * Fixed instance model associations to host (node) and added association to ip
2891 * Fixed write authorization for public images
2892@@ -24810,12 +24853,12 @@ CHANGES
2893 * Start breaking out scheduler classes..
2894 * WsgiStack class, eventletserver.serve. Trying to work toward a simple API that anyone can use to start an eventlet-based server composed of several WSGI apps
2895 * Use webob to simplify wsgi middleware
2896-* Made group membership check only search group instead of subtree. Roles in a group are removed when a user is removed from that group. Added test
2897+* Made group membership check only search group instead of subtree. Roles in a group are removed when a user is removed from that group. Added test
2898 * Fixes bug#614090 -- nova.virt.images._fetch_local_image being called with 4 args but only has 3
2899 * Fixed image modification authorization, API cleanup
2900 * fixed doc string
2901 * compute topic for a node is compute.node not compute:node!
2902-* almost there on random scheduler. not pushing to correct compute node topic, yet, apparently..
2903+* almost there on random scheduler. not pushing to correct compute node topic, yet, apparently..
2904 * First pass at making a file pass pep8 and pylint tests as an example
2905 * merged trunk
2906 * rename networkdata to vpn
2907@@ -24824,7 +24867,7 @@ CHANGES
2908 * merged from trunk
2909 * added bin/nova-listinstances, which is mostly just a duplication of euca-describe-instances but doesn't go through the API
2910 * Fixes various concurrency issues in volume worker
2911-* Changed volumes to use a pool instead of globbing filesystem for concurrency reasons. Fixed broken tests
2912+* Changed volumes to use a pool instead of globbing filesystem for concurrency reasons. Fixed broken tests
2913 * clean up nova-manage. If vpn data isn't set for user it skips it
2914 * method is called set_network_host
2915 * fixed circular reference and tests
2916@@ -24837,7 +24880,7 @@ CHANGES
2917 * use iteritems
2918 * reference to self.project instead of context.project + self.network_model instead of network_model
2919 * fixes in get public address and extra references to self.network
2920-* method should return network topic instead of network host
2921+* method should return network topic instead of network host
2922 * use deferreds in network
2923 * don't __ module methods
2924 * inline commands use returnValue
2925@@ -24860,15 +24903,15 @@ CHANGES
2926 * Implement VIF creation
2927 * Define __contains__ on BasicModel, so that we can use "x in datamodel"
2928 * Fixed instance model associations to host (node) and added association to ip
2929-* Added a xapi plugin that can pull images from nova-objectstore, and use that to get a disk, kernel, and ramdisk for the VM. The VM actually boots!
2930+* Added a xapi plugin that can pull images from nova-objectstore, and use that to get a disk, kernel, and ramdisk for the VM. The VM actually boots!
2931 * Added project as parameter to admin client x509 zip file download
2932-* Turn the private _image_url(path) into a public image_url(image). This will be used by virt.xenapi to instruct xapi as to which images to download
2933+* Turn the private _image_url(path) into a public image_url(image). This will be used by virt.xenapi to instruct xapi as to which images to download
2934 * Merged in configurable libvirt_uri, and fixes to raw disk images from the virtualbox branch
2935 * Fixed up some of the raw disk stuff that broke in the abstraction out of libvirt
2936 * Merged with raw disk image
2937 * Recognize 'magic' kernel value that means "don't use a kernel" - currently aki-00000000
2938 * Fix Tests
2939-* Fixes nova volumes. The async commands yield properly. Simplified the call to create volume in cloud. Added some notes
2940+* Fixes nova volumes. The async commands yield properly. Simplified the call to create volume in cloud. Added some notes
2941 * another try on fix boto
2942 * use user.access instead of user.id
2943 * Fixes access key passing in curl statement
2944@@ -24877,7 +24920,7 @@ CHANGES
2945 * Removed duplicate toXml method
2946 * Merged with trunk
2947 * Merged with trunk, added note about suspicious behaviour
2948-* Added exit code checking to process.py (twisted process utils). A bit of class refactoring to make it work & cleaner. Also added some more instructive messages to install_venv.py, because otherwise people that don't know what they're doing will install the wrong pip... i.e. I did :-)
2949+* Added exit code checking to process.py (twisted process utils). A bit of class refactoring to make it work & cleaner. Also added some more instructive messages to install_venv.py, because otherwise people that don't know what they're doing will install the wrong pip... i.e. I did :-)
2950 * Make nodaemon twistd processes log to stdout
2951 * Make nodaemon twistd processes log to stdout
2952 * use the right tag
2953@@ -24903,7 +24946,7 @@ CHANGES
2954 * Move the reading of API parameters above the call to _get_image, so that they have a chance to take effect
2955 * Move the reading of API parameters above the call to _get_image, so that they have a chance to take effect
2956 * Adds initial support for XenAPI (not yet finished)
2957-* More merges from trunk. Not everything came over the first time
2958+* More merges from trunk. Not everything came over the first time
2959 * Allow driver specification in AuthManager creation
2960 * pep8
2961 * Fixed pep8 issues in setup.py - thanks redbo
2962@@ -24928,7 +24971,7 @@ CHANGES
2963 * Makes ldap flags work again
2964 * bzr merge lp:nova/trunk
2965 * Tagged 0.9.0 and bumped the version to 0.9.1
2966-* Silence logs when associated models aren't found. Also document methods used ofr associating things. And get rid of some duplicated code
2967+* Silence logs when associated models aren't found. Also document methods used ofr associating things. And get rid of some duplicated code
2968 * Fix dnsmasq commands to pass in environment properly
2969
2970 0.9.0
2971@@ -24951,7 +24994,7 @@ CHANGES
2972 * Merged trunk
2973 * Wired up user:project auth calls
2974 * Bump version to 0.9.0
2975-* Makes the compute and volume daemon workers use a common base class called Service. Adds a NetworkService in preparation for splitting out networking code. General cleanup and standardizarion of naming
2976+* Makes the compute and volume daemon workers use a common base class called Service. Adds a NetworkService in preparation for splitting out networking code. General cleanup and standardizarion of naming
2977 * fixed path to keys directory
2978 * Fixes Bug lp:610611: deleted project vlans are deleted from the datastore before they are reused
2979 * Add a 'sdist' make target. It first generates a MANIFEST.in based on what's in bzr, then calls python setup.py sdist
2980@@ -24972,7 +25015,7 @@ CHANGES
2981 * A few minor fixes to the virtualenv installer that were breaking on ubuntu
2982 * Give SessionToken an is_expired method
2983 * Refactor of auth code
2984-* Fixes bug#610140. Thanks to Vish and Muharem for the patch
2985+* Fixes bug#610140. Thanks to Vish and Muharem for the patch
2986 * Share my updates to the Rackspace API
2987 * Fixes to the virtualenv installer
2988 * Ensure consistent use of filename for dhcp bridge flag file
2989@@ -25001,7 +25044,7 @@ CHANGES
2990 * Added missing import
2991 * Replace hardcoded example URL, username, and password with flags called xenapi_connection_url, xenapi_connection_username, xenapi_connection_password
2992 * Fix instance cleanup
2993-* Fix references to image_object. This caused an internal error when using euca-deregister
2994+* Fix references to image_object. This caused an internal error when using euca-deregister
2995 * removed unused assignment
2996 * More Cleanup of code
2997 * Fix references to get_argument, fixing internal error when calling euca-deregister
2998@@ -25011,11 +25054,11 @@ CHANGES
2999 * Merged lp:~ewanmellor/nova/lp609792
3000 * Merged lp:~ewanmellor/nova/lp609791
3001 * Replace hardcoded "nova" with FLAGS.control_exchange
3002-* Set durable=False on TopicPublisher, so that it matches the flag on TopicConsumer. This ensures that either redeclaration of the control_exchange will use the same flag, and avoid AMQPChannelException
3003+* Set durable=False on TopicPublisher, so that it matches the flag on TopicConsumer. This ensures that either redeclaration of the control_exchange will use the same flag, and avoid AMQPChannelException
3004 * Add an import so that nova-compute sees the images_path flag, so that it can be used on the command line
3005 * Return a 404 when attempting to access a bucket that does not exist
3006-* Removed creation of process pools. We don't use these any more now that we're using process.simple_execute
3007-* Fix assertion "Someone released me too many times: too many tokens!" when more than one process was running at the same time. This was caused by the override of SharedPool.__new__ not stopping ProcessPool.__init__ from being run whenever process.simple_execute is called
3008+* Removed creation of process pools. We don't use these any more now that we're using process.simple_execute
3009+* Fix assertion "Someone released me too many times: too many tokens!" when more than one process was running at the same time. This was caused by the override of SharedPool.__new__ not stopping ProcessPool.__init__ from being run whenever process.simple_execute is called
3010 * Always make sure to set a Date headers, since it's needed to calculate the S3 Auth header
3011 * Updated the README file
3012 * Updated sphinx layout to a two-dir layout like swift. Updated a doc string to get rid of a Sphinx warning
3013@@ -25033,7 +25076,7 @@ CHANGES
3014 * Fix syslogging of exceptions by stripping newlines from the exception info
3015 * Merged fix for bug 608505 so unit tests pass
3016 * Check exit codes when spawning processes by default
3017-* Nobody wants to take on this twisted cleanup. It works for now, but could be much nicer if twisted has a nice hook-point for exception mapping
3018+* Nobody wants to take on this twisted cleanup. It works for now, but could be much nicer if twisted has a nice hook-point for exception mapping
3019 * syslog changes
3020 * typo fixes and extra print statements removed
3021 * added todo for ABC
3022@@ -25044,7 +25087,7 @@ CHANGES
3023 * refactor daemons to use common base class in preparation for network refactor
3024 * reorder import statement and remove commented-out test case that is the same as api_unittest in objectstore_unittest
3025 * Fixes up Bucket to throw proper NotFound and NotEmpty exceptions in constructor and delete() method, and fixes up objectstore_unittest to properly use assertRaises() to check for proper exceptions and remove the assert_ calls
3026-* Fix bug 607501. Raise 403, not exception if Authorization header not passed. Also added missing call to request.finish() & Python exception-handling style tweak
3027+* Fix bug 607501. Raise 403, not exception if Authorization header not passed. Also added missing call to request.finish() & Python exception-handling style tweak
3028 * merge with twisted-volume
3029 * remove all of the unused saved return values from attach_to_twisted
3030 * fix for describe addresses showing everyone's public ips
3031@@ -25060,15 +25103,15 @@ CHANGES
3032 * Cleanup per suggestions
3033 * network unittest clean up
3034 * Test cleanup, make driver return dictionaries and construct objects in manager
3035-* Able to boot without kernel or ramdisk. libvirt.xml.template is now a Cheetah template
3036+* Able to boot without kernel or ramdisk. libvirt.xml.template is now a Cheetah template
3037 * Merged https://code.launchpad.net/~justin-fathomdb/nova/copy-error-handling
3038 * Merged bug fixes
3039-* Map exceptions to 404 / 403 codes, as was done before the move to twisted. However, I don't think this is the right way to do this in Twisted. For example, exceptions thrown after the render method returns will not be mapped
3040+* Map exceptions to 404 / 403 codes, as was done before the move to twisted. However, I don't think this is the right way to do this in Twisted. For example, exceptions thrown after the render method returns will not be mapped
3041 * Merged lp:~justin-fathomdb/nova/bug607501
3042 * Merged trunk. Fixed new references to UserManager
3043 * I put the call to request.finish() in the wrong place. :-(
3044 * More docstrings, don't autocreate projects
3045-* Raise 401, not exception if Authorization header not passed. Also minor fixes & Python exception-handling style tweak
3046+* Raise 401, not exception if Authorization header not passed. Also minor fixes & Python exception-handling style tweak
3047 * LdapDriver cleanup: docstrings and parameter ordering
3048 * Ask curl to set exit code if resource was not found
3049 * Fixes to dhcp lease code to use a flagfile
3050@@ -25081,7 +25124,7 @@ CHANGES
3051 * Replace tornado objectstore with twisted web
3052 * merged in trunk and fixed import merge errors
3053 * First commit of XenAPI-specific code (i.e. connections to the open-source community project Xen Cloud Platform, or the open-source commercial product Citrix XenServer)
3054-* Remove the tight coupling between nova.compute.monitor and libvirt. The libvirt-specific code was placed in nova.virt.libvirt_conn by the last changeset. This greatly simplifies the monitor code, and puts the libvirt-specific XML record parsing in a libvirt-specific place
3055+* Remove the tight coupling between nova.compute.monitor and libvirt. The libvirt-specific code was placed in nova.virt.libvirt_conn by the last changeset. This greatly simplifies the monitor code, and puts the libvirt-specific XML record parsing in a libvirt-specific place
3056 * In preparation for XenAPI support, refactor the interface between nova.compute and the hypervisor (i.e. libvirt)
3057 * Fixed references to nova.utils that were broken by a change of import statement in the remove-vendor merge
3058 * Remove s3_internal_port setting. Objectstore should be able to handle the beatings now. As such, nginx is no longer needed, so it's removed from the dependencies and the configuration files are removed
3059@@ -25106,7 +25149,7 @@ CHANGES
3060 * _redis_name wasn't picking up override_type correctly, and _redis_key wasn't using it
3061 * Quick fix to variable names for consistency in documentation..
3062 * Adds a fix to the idempotency of the test_too_many_addresses test case by adding a simple property to the BaseNetwork class and calculating the number of available IPs by asking the network class to tell the test how many static and preallocated IP addresses are in use before entering the loop to "blow up" the address allocation..
3063-* Adds a flag to redirect STDERR when running run_tests.py. Defaults to a truncate-on-write logfile named run_tests.err.log. Adds ignore rule for generated errlog file
3064+* Adds a flag to redirect STDERR when running run_tests.py. Defaults to a truncate-on-write logfile named run_tests.err.log. Adds ignore rule for generated errlog file
3065 * no more print in storage unittest
3066 * reorder imports spacing
3067 * Fixes to dhcp lease code to use a flagfile
3068@@ -25358,7 +25401,7 @@ CHANGES
3069 * make a "Running" topic instead of having it flow under "Configuration"
3070 * Make nginx config be in a code block
3071 * More doc updates: nginx & pycurl
3072-* Add a README, because GitHub loves them. Update the getting started docs
3073+* Add a README, because GitHub loves them. Update the getting started docs
3074 * update spacing
3075 * Commit what I have almost working before diverging
3076 * first go at moving from tornado to twisted
3077@@ -25377,7 +25420,7 @@ CHANGES
3078 * make a "Running" topic instead of having it flow under "Configuration"
3079 * Make nginx config be in a code block
3080 * More doc updates: nginx & pycurl
3081-* Add a README, because GitHub loves them. Update the getting started docs
3082+* Add a README, because GitHub loves them. Update the getting started docs
3083 * whitespace fixes for nova/utils.py
3084 * Add project methods to nova-manage
3085 * Fix novarc to use project when creating access key
3086diff --git a/PKG-INFO b/PKG-INFO
3087index a03bf00..a0c739c 100644
3088--- a/PKG-INFO
3089+++ b/PKG-INFO
3090@@ -1,6 +1,6 @@
3091 Metadata-Version: 1.1
3092 Name: nova
3093-Version: 13.1.2
3094+Version: 13.1.3
3095 Summary: Cloud computing fabric controller
3096 Home-page: http://docs.openstack.org/developer/nova/
3097 Author: OpenStack
3098diff --git a/debian/changelog b/debian/changelog
3099index 80618b2..f7bf234 100644
3100--- a/debian/changelog
3101+++ b/debian/changelog
3102@@ -1,3 +1,9 @@
3103+nova (2:13.1.3-0ubuntu1) xenial; urgency=medium
3104+
3105+ * New upstream point release for OpenStack Mitaka
3106+
3107+ -- Saverio Proto <saverio.proto@switch.ch> Wed, 01 Mar 2017 09:52:51 +0000
3108+
3109 nova (2:13.1.2-0ubuntu2) xenial; urgency=medium
3110
3111 [ dann frazier ]
3112diff --git a/devstack/tempest-dsvm-cells-rc b/devstack/tempest-dsvm-cells-rc
3113index 2eef823..e51cc45 100644
3114--- a/devstack/tempest-dsvm-cells-rc
3115+++ b/devstack/tempest-dsvm-cells-rc
3116@@ -86,6 +86,9 @@ r="$r|(?:tempest\.thirdparty\.boto\.test_ec2_instance_run\.InstanceRunTest\.test
3117 r="$r|(?:tempest\.api\.compute\.servers\.test_server_actions\.ServerActionsTestJSON\.test_lock_unlock_server)"
3118 # scheduler hints apparently don't work in devstack cells
3119 r="$r|(?:tempest\.scenario\.test_server_multinode\.TestServerMultinode\.test_schedule_to_all_nodes)"
3120+# test_stamp_pattern uses security groups which aren't supported in cells v1
3121+# tempest.scenario.test_stamp_pattern.TestStampPattern.test_stamp_pattern
3122+r="$r|(?:.*id\-10fd234a\-515c\-41e5\-b092\-8323060598c5.*)"
3123 r="$r).*$"
3124
3125 export DEVSTACK_GATE_TEMPEST_REGEX="$r"
3126diff --git a/doc/source/development.environment.rst b/doc/source/development.environment.rst
3127index ce5d044..b618b1a 100644
3128--- a/doc/source/development.environment.rst
3129+++ b/doc/source/development.environment.rst
3130@@ -147,6 +147,10 @@ See `Running Python Unit Tests`_.
3131
3132 .. _`Running Python Unit Tests`: http://docs.openstack.org/infra/manual/python.html#running-python-unit-tests
3133
3134+Note that some unit and functional tests use a database. See the file
3135+``tools/test-setup.sh`` on how the databases are set up in the
3136+OpenStack CI environment and replicate it in your test environment.
3137+
3138 Using a remote debugger
3139 =======================
3140
3141diff --git a/nova.egg-info/PKG-INFO b/nova.egg-info/PKG-INFO
3142index a03bf00..a0c739c 100644
3143--- a/nova.egg-info/PKG-INFO
3144+++ b/nova.egg-info/PKG-INFO
3145@@ -1,6 +1,6 @@
3146 Metadata-Version: 1.1
3147 Name: nova
3148-Version: 13.1.2
3149+Version: 13.1.3
3150 Summary: Cloud computing fabric controller
3151 Home-page: http://docs.openstack.org/developer/nova/
3152 Author: OpenStack
3153diff --git a/nova.egg-info/SOURCES.txt b/nova.egg-info/SOURCES.txt
3154index b892f6b..50acc25 100644
3155--- a/nova.egg-info/SOURCES.txt
3156+++ b/nova.egg-info/SOURCES.txt
3157@@ -2590,6 +2590,7 @@ releasenotes/notes/bp-rbd-instance-snapshots-130e860b726ddc16.yaml
3158 releasenotes/notes/bp-split-network-plane-for-live-migration-40bc127734173759.yaml
3159 releasenotes/notes/bp-virt-driver-cpu-thread-pinning-1aaeeb6648f8e009.yaml
3160 releasenotes/notes/bug-1559026-47c3fa3468d66b07.yaml
3161+releasenotes/notes/bug-1662699-06203e7262e02aa6.yaml
3162 releasenotes/notes/cinder-backend-report-discard-1def1c28140def9b.yaml
3163 releasenotes/notes/compute_upgrade_levels_auto-97acebc7b45b76df.yaml
3164 releasenotes/notes/conductor_rpcapi_v2_drop-9893c27bb32d9786.yaml
3165@@ -2677,6 +2678,7 @@ tools/nova-manage.bash_completion
3166 tools/pretty_tox.sh
3167 tools/regression_tester.py
3168 tools/reserve-migrations.py
3169+tools/test-setup.sh
3170 tools/with_venv.sh
3171 tools/db/schema_diff.py
3172 tools/xenserver/cleanup_sm_locks.py
3173diff --git a/nova.egg-info/pbr.json b/nova.egg-info/pbr.json
3174index 7f38f04..6d6b01a 100644
3175--- a/nova.egg-info/pbr.json
3176+++ b/nova.egg-info/pbr.json
3177@@ -1 +1 @@
3178-{"git_version": "63f3d99", "is_release": true}
3179\ No newline at end of file
3180+{"git_version": "2e05c82", "is_release": true}
3181\ No newline at end of file
3182diff --git a/nova.egg-info/requires.txt b/nova.egg-info/requires.txt
3183index 07fa5ff..4bea35a 100644
3184--- a/nova.egg-info/requires.txt
3185+++ b/nova.egg-info/requires.txt
3186@@ -6,7 +6,6 @@ eventlet!=0.18.3,>=0.18.2
3187 Jinja2>=2.8
3188 keystonemiddleware!=4.1.0,>=4.0.0
3189 lxml>=2.3
3190-Routes!=2.0,!=2.1,!=2.3.0,>=1.12.3
3191 cryptography!=1.3.0,>=1.0
3192 pycrypto>=2.6
3193 WebOb>=1.2.3
3194@@ -55,3 +54,6 @@ castellan>=0.3.1
3195
3196 [:(python_version!='2.7')]
3197 Routes!=2.0,!=2.3.0,>=1.12.3
3198+
3199+[:(python_version=='2.7')]
3200+Routes!=2.0,!=2.1,!=2.3.0,>=1.12.3
3201diff --git a/nova/api/openstack/compute/legacy_v2/contrib/volumes.py b/nova/api/openstack/compute/legacy_v2/contrib/volumes.py
3202index 6b0e996..eee9804 100644
3203--- a/nova/api/openstack/compute/legacy_v2/contrib/volumes.py
3204+++ b/nova/api/openstack/compute/legacy_v2/contrib/volumes.py
3205@@ -124,6 +124,8 @@ class VolumeController(wsgi.Controller):
3206
3207 try:
3208 self.volume_api.delete(context, id)
3209+ except exception.InvalidInput as e:
3210+ raise exc.HTTPBadRequest(explanation=e.format_message())
3211 except exception.NotFound as e:
3212 raise exc.HTTPNotFound(explanation=e.format_message())
3213 return webob.Response(status_int=202)
3214@@ -323,6 +325,8 @@ class VolumeAttachmentController(wsgi.Controller):
3215 raise exc.HTTPNotFound(explanation=e.format_message())
3216 except exception.InstanceIsLocked as e:
3217 raise exc.HTTPConflict(explanation=e.format_message())
3218+ except exception.DevicePathInUse as e:
3219+ raise exc.HTTPConflict(explanation=e.format_message())
3220 except exception.InstanceInvalidState as state_error:
3221 common.raise_http_conflict_for_instance_invalid_state(state_error,
3222 'attach_volume', server_id)
3223@@ -365,8 +369,19 @@ class VolumeAttachmentController(wsgi.Controller):
3224 except KeyError:
3225 msg = _("volumeId must be specified.")
3226 raise exc.HTTPBadRequest(explanation=msg)
3227+
3228 self._validate_volume_id(new_volume_id)
3229- new_volume = self.volume_api.get(context, new_volume_id)
3230+ try:
3231+ new_volume = self.volume_api.get(context, new_volume_id)
3232+ except exception.VolumeNotFound as e:
3233+ # NOTE: This BadRequest is different from the above NotFound even
3234+ # though the same VolumeNotFound exception. This is intentional
3235+ # because new_volume_id is specified in a request body and if a
3236+ # nonexistent resource in the body (not URI) the code should be
3237+ # 400 Bad Request as API-WG guideline. On the other hand,
3238+ # old_volume_id is specified with URI. So it is valid to return
3239+ # NotFound response if that is not existent.
3240+ raise exc.HTTPBadRequest(explanation=e.format_message())
3241
3242 instance = common.get_instance(self.compute_api, context, server_id)
3243
3244diff --git a/nova/api/openstack/compute/schemas/block_device_mapping.py b/nova/api/openstack/compute/schemas/block_device_mapping.py
3245index 6c32199..1fe13aa 100644
3246--- a/nova/api/openstack/compute/schemas/block_device_mapping.py
3247+++ b/nova/api/openstack/compute/schemas/block_device_mapping.py
3248@@ -55,8 +55,10 @@ block_device_mapping_new_item = {
3249 'type': 'string', 'maxLength': 255,
3250 },
3251 # Defined as integer in nova/block_device.py:from_api()
3252+ # NOTE(mriedem): boot_index=None is also accepted for backward
3253+ # compatibility with the legacy v2 API.
3254 'boot_index': {
3255- 'type': ['integer', 'string'],
3256+ 'type': ['integer', 'string', 'null'],
3257 'pattern': '^-?[0-9]+$',
3258 },
3259 }
3260@@ -68,6 +70,6 @@ block_device_mapping['properties'].update(block_device_mapping_new_item)
3261 server_create = {
3262 'block_device_mapping_v2': {
3263 'type': 'array',
3264- 'items': [block_device_mapping]
3265+ 'items': block_device_mapping
3266 }
3267 }
3268diff --git a/nova/api/openstack/compute/schemas/block_device_mapping_v1.py b/nova/api/openstack/compute/schemas/block_device_mapping_v1.py
3269index 5528e3d..91ca3a2 100644
3270--- a/nova/api/openstack/compute/schemas/block_device_mapping_v1.py
3271+++ b/nova/api/openstack/compute/schemas/block_device_mapping_v1.py
3272@@ -44,6 +44,6 @@ legacy_block_device_mapping = {
3273 server_create = {
3274 'block_device_mapping': {
3275 'type': 'array',
3276- 'items': [legacy_block_device_mapping]
3277+ 'items': legacy_block_device_mapping
3278 }
3279 }
3280diff --git a/nova/api/openstack/compute/volumes.py b/nova/api/openstack/compute/volumes.py
3281index 7dc2caa..27f0bcd 100644
3282--- a/nova/api/openstack/compute/volumes.py
3283+++ b/nova/api/openstack/compute/volumes.py
3284@@ -114,7 +114,7 @@ class VolumeController(wsgi.Controller):
3285 return {'volume': _translate_volume_detail_view(context, vol)}
3286
3287 @wsgi.response(202)
3288- @extensions.expected_errors(404)
3289+ @extensions.expected_errors((400, 404))
3290 def delete(self, req, id):
3291 """Delete a volume."""
3292 context = req.environ['nova.context']
3293@@ -122,6 +122,8 @@ class VolumeController(wsgi.Controller):
3294
3295 try:
3296 self.volume_api.delete(context, id)
3297+ except exception.InvalidInput as e:
3298+ raise exc.HTTPBadRequest(explanation=e.format_message())
3299 except exception.VolumeNotFound as e:
3300 raise exc.HTTPNotFound(explanation=e.format_message())
3301
3302@@ -320,6 +322,8 @@ class VolumeAttachmentController(wsgi.Controller):
3303 raise exc.HTTPNotFound(explanation=e.format_message())
3304 except exception.InstanceIsLocked as e:
3305 raise exc.HTTPConflict(explanation=e.format_message())
3306+ except exception.DevicePathInUse as e:
3307+ raise exc.HTTPConflict(explanation=e.format_message())
3308 except exception.InstanceInvalidState as state_error:
3309 common.raise_http_conflict_for_instance_invalid_state(state_error,
3310 'attach_volume', server_id)
3311@@ -356,11 +360,21 @@ class VolumeAttachmentController(wsgi.Controller):
3312 old_volume_id = id
3313 try:
3314 old_volume = self.volume_api.get(context, old_volume_id)
3315+ except exception.VolumeNotFound as e:
3316+ raise exc.HTTPNotFound(explanation=e.format_message())
3317
3318- new_volume_id = body['volumeAttachment']['volumeId']
3319+ new_volume_id = body['volumeAttachment']['volumeId']
3320+ try:
3321 new_volume = self.volume_api.get(context, new_volume_id)
3322 except exception.VolumeNotFound as e:
3323- raise exc.HTTPNotFound(explanation=e.format_message())
3324+ # NOTE: This BadRequest is different from the above NotFound even
3325+ # though the same VolumeNotFound exception. This is intentional
3326+ # because new_volume_id is specified in a request body and if a
3327+ # nonexistent resource in the body (not URI) the code should be
3328+ # 400 Bad Request as API-WG guideline. On the other hand,
3329+ # old_volume_id is specified with URI. So it is valid to return
3330+ # NotFound response if that is not existent.
3331+ raise exc.HTTPBadRequest(explanation=e.format_message())
3332
3333 instance = common.get_instance(self.compute_api, context, server_id)
3334
3335diff --git a/nova/block_device.py b/nova/block_device.py
3336index b40aa5c..8e6d034 100644
3337--- a/nova/block_device.py
3338+++ b/nova/block_device.py
3339@@ -197,7 +197,13 @@ class BlockDeviceDict(dict):
3340 api_dict[source_type + '_id'] = device_uuid
3341 if source_type == 'image' and destination_type == 'local':
3342 try:
3343- boot_index = int(api_dict.get('boot_index', -1))
3344+ # NOTE(mriedem): boot_index can be None so we need to
3345+ # account for that to avoid a TypeError.
3346+ boot_index = api_dict.get('boot_index', -1)
3347+ if boot_index is None:
3348+ # boot_index=None is equivalent to -1.
3349+ boot_index = -1
3350+ boot_index = int(boot_index)
3351 except ValueError:
3352 raise exception.InvalidBDMFormat(
3353 details=_("Boot index is invalid."))
3354diff --git a/nova/conductor/manager.py b/nova/conductor/manager.py
3355index 8dbfb48..7461b9d 100644
3356--- a/nova/conductor/manager.py
3357+++ b/nova/conductor/manager.py
3358@@ -20,6 +20,7 @@ from oslo_config import cfg
3359 from oslo_log import log as logging
3360 import oslo_messaging as messaging
3361 from oslo_utils import excutils
3362+from oslo_utils import versionutils
3363 import six
3364
3365 from nova.compute import rpcapi as compute_rpcapi
3366@@ -95,10 +96,21 @@ class ConductorManager(manager.Manager):
3367 # NOTE(danms): The RPC layer will convert to primitives for us,
3368 # but in this case, we need to honor the version the client is
3369 # asking for, so we do it before returning here.
3370- return (result.obj_to_primitive(
3371- target_version=object_versions[objname],
3372- version_manifest=object_versions)
3373- if isinstance(result, nova_object.NovaObject) else result)
3374+ # NOTE(hanlind): Do not convert older than requested objects,
3375+ # see bug #1596119.
3376+ if isinstance(result, nova_object.NovaObject):
3377+ target_version = object_versions[objname]
3378+ requested_version = versionutils.convert_version_to_tuple(
3379+ target_version)
3380+ actual_version = versionutils.convert_version_to_tuple(
3381+ result.VERSION)
3382+ do_backport = requested_version < actual_version
3383+ other_major_version = requested_version[0] != actual_version[0]
3384+ if do_backport or other_major_version:
3385+ result = result.obj_to_primitive(
3386+ target_version=target_version,
3387+ version_manifest=object_versions)
3388+ return result
3389
3390 def object_action(self, context, objinst, objmethod, args, kwargs):
3391 """Perform an action on an object."""
3392diff --git a/nova/db/sqlalchemy/api.py b/nova/db/sqlalchemy/api.py
3393index 30bbb09..7f983d2 100644
3394--- a/nova/db/sqlalchemy/api.py
3395+++ b/nova/db/sqlalchemy/api.py
3396@@ -512,6 +512,7 @@ def service_get_minimum_version(context, binary):
3397 min_version = context.session.query(
3398 func.min(models.Service.version)).\
3399 filter(models.Service.binary == binary).\
3400+ filter(models.Service.deleted == 0).\
3401 filter(models.Service.forced_down == false()).\
3402 scalar()
3403 return min_version
3404diff --git a/nova/locale/cs/LC_MESSAGES/nova-log-error.po b/nova/locale/cs/LC_MESSAGES/nova-log-error.po
3405index 6e47bc6..74c31ff 100644
3406--- a/nova/locale/cs/LC_MESSAGES/nova-log-error.po
3407+++ b/nova/locale/cs/LC_MESSAGES/nova-log-error.po
3408@@ -8,9 +8,9 @@
3409 # Zbyněk Schwarz <zbynek.schwarz@gmail.com>, 2015. #zanata
3410 msgid ""
3411 msgstr ""
3412-"Project-Id-Version: nova 13.0.1.dev12\n"
3413+"Project-Id-Version: nova 13.1.3.dev12\n"
3414 "Report-Msgid-Bugs-To: https://bugs.launchpad.net/openstack-i18n/\n"
3415-"POT-Creation-Date: 2016-04-19 04:50+0000\n"
3416+"POT-Creation-Date: 2016-10-18 10:31+0000\n"
3417 "MIME-Version: 1.0\n"
3418 "Content-Type: text/plain; charset=UTF-8\n"
3419 "Content-Transfer-Encoding: 8bit\n"
3420@@ -933,9 +933,6 @@ msgstr "Nastavení štítku názvu zásoby selhalo: %s"
3421 msgid "Pre live migration failed at %s"
3422 msgstr "Příprava přesunu za provozu selhala v %s"
3423
3424-msgid "Read/Write data failed"
3425-msgstr "Zápis/Čtení dat selhalo"
3426-
3427 #, python-format
3428 msgid "Requested VM Generation %s is not supported on this OS."
3429 msgstr "Požadované vytvoření VM %s není v tomto OS podporováno."
3430@@ -997,9 +994,6 @@ msgstr "Volání %(method)s vrátilo chybu: %(e)s."
3431 msgid "The call to %(method)s returned an error: %(e)s. args=%(args)r"
3432 msgstr "Volání %(method)s vrátilo chybu: %(e)s. argumenty=%(args)r"
3433
3434-msgid "Transfer data failed"
3435-msgstr "Přenos dat selhal"
3436-
3437 #, python-format
3438 msgid "Unable to access floating IP %s"
3439 msgstr "Nelze získat přístup k plovoucím IP %s"
3440@@ -1047,10 +1041,6 @@ msgid "Unable to find SR from VDI"
3441 msgstr "Nelze najít SR z VDI"
3442
3443 #, python-format
3444-msgid "Unable to find a service record to update for %(binary)s on %(host)s"
3445-msgstr "Nelze najít záznam služby k aktualizaci pro %(binary)s na %(host)s"
3446-
3447-#, python-format
3448 msgid "Unable to find address %r"
3449 msgstr "Nelze najít adresu %r"
3450
3451diff --git a/nova/locale/cs/LC_MESSAGES/nova.po b/nova/locale/cs/LC_MESSAGES/nova.po
3452index b3ba044..4cb6309 100644
3453--- a/nova/locale/cs/LC_MESSAGES/nova.po
3454+++ b/nova/locale/cs/LC_MESSAGES/nova.po
3455@@ -12,9 +12,9 @@
3456 # Zbyněk Schwarz <zbynek.schwarz@gmail.com>, 2016. #zanata
3457 msgid ""
3458 msgstr ""
3459-"Project-Id-Version: nova 13.1.2.dev11\n"
3460+"Project-Id-Version: nova 13.1.3.dev12\n"
3461 "Report-Msgid-Bugs-To: https://bugs.launchpad.net/openstack-i18n/\n"
3462-"POT-Creation-Date: 2016-09-07 20:56+0000\n"
3463+"POT-Creation-Date: 2016-10-18 10:31+0000\n"
3464 "MIME-Version: 1.0\n"
3465 "Content-Type: text/plain; charset=UTF-8\n"
3466 "Content-Transfer-Encoding: 8bit\n"
3467@@ -1612,14 +1612,6 @@ msgstr ""
3468 "Volných %(type)s %(free).02f %(unit)s < požadovaných %(requested)d %(unit)s"
3469
3470 #, python-format
3471-msgid "Glance image %(image_id)s is in unknown state - %(state)s"
3472-msgstr "Obraz Glance %(image_id)s je v nezámém stavu - %(state)s"
3473-
3474-#, python-format
3475-msgid "Glance image %s is in killed state"
3476-msgstr "Obraz Glance %s je ve stavu ukončení"
3477-
3478-#, python-format
3479 msgid "Group not valid. Reason: %(reason)s"
3480 msgstr "Skupina není platná. Důvod: %(reason)s"
3481
3482diff --git a/nova/locale/de/LC_MESSAGES/nova-log-error.po b/nova/locale/de/LC_MESSAGES/nova-log-error.po
3483index a2bf4da..6a9962d 100644
3484--- a/nova/locale/de/LC_MESSAGES/nova-log-error.po
3485+++ b/nova/locale/de/LC_MESSAGES/nova-log-error.po
3486@@ -10,9 +10,9 @@
3487 # Reik Keutterling <spielkind@gmail.com>, 2015. #zanata
3488 msgid ""
3489 msgstr ""
3490-"Project-Id-Version: nova 13.0.1.dev12\n"
3491+"Project-Id-Version: nova 13.1.3.dev12\n"
3492 "Report-Msgid-Bugs-To: https://bugs.launchpad.net/openstack-i18n/\n"
3493-"POT-Creation-Date: 2016-04-19 04:50+0000\n"
3494+"POT-Creation-Date: 2016-10-18 10:31+0000\n"
3495 "MIME-Version: 1.0\n"
3496 "Content-Type: text/plain; charset=UTF-8\n"
3497 "Content-Transfer-Encoding: 8bit\n"
3498@@ -890,9 +890,6 @@ msgstr "Pool-set_name_label Fehler: %s"
3499 msgid "Pre live migration failed at %s"
3500 msgstr "Vor-Live-Migration fehlgeschlagen an %s"
3501
3502-msgid "Read/Write data failed"
3503-msgstr "Lesen/Schreiben von Daten fehlgeschlagen"
3504-
3505 #, python-format
3506 msgid "Requested VM Generation %s, but provided VHD instead of VHDX."
3507 msgstr "Angefragte VM Generation %s, aber zur Verfügung steht VHD statt VHDX."
3508@@ -950,9 +947,6 @@ msgstr "Der Aufruf zu %(method)s gab einen Fehler zurück: %(e)s."
3509 msgid "The call to %(method)s returned an error: %(e)s. args=%(args)r"
3510 msgstr "Der Aufruf zu %(method)s gab einen Fehler zurück: %(e)s. args=%(args)r"
3511
3512-msgid "Transfer data failed"
3513-msgstr "Datenübertragung fehlgeschlagen"
3514-
3515 #, python-format
3516 msgid "Unable to access floating IP %s"
3517 msgstr "Zugriff nicht möglich auf Floating-IP %s"
3518diff --git a/nova/locale/de/LC_MESSAGES/nova.po b/nova/locale/de/LC_MESSAGES/nova.po
3519index b69da48..81d94ed 100644
3520--- a/nova/locale/de/LC_MESSAGES/nova.po
3521+++ b/nova/locale/de/LC_MESSAGES/nova.po
3522@@ -15,9 +15,9 @@
3523 # Monika Wolf <vcomas3@de.ibm.com>, 2016. #zanata
3524 msgid ""
3525 msgstr ""
3526-"Project-Id-Version: nova 13.1.2.dev11\n"
3527+"Project-Id-Version: nova 13.1.3.dev12\n"
3528 "Report-Msgid-Bugs-To: https://bugs.launchpad.net/openstack-i18n/\n"
3529-"POT-Creation-Date: 2016-09-07 20:56+0000\n"
3530+"POT-Creation-Date: 2016-10-18 10:31+0000\n"
3531 "MIME-Version: 1.0\n"
3532 "Content-Type: text/plain; charset=UTF-8\n"
3533 "Content-Transfer-Encoding: 8bit\n"
3534@@ -1793,14 +1793,6 @@ msgstr ""
3535 "Frei %(type)s %(free).02f %(unit)s < angefordert %(requested)d %(unit)s"
3536
3537 #, python-format
3538-msgid "Glance image %(image_id)s is in unknown state - %(state)s"
3539-msgstr "Glance-Abbild '%(image_id)s' ist in unbekanntem Status - %(state)s"
3540-
3541-#, python-format
3542-msgid "Glance image %s is in killed state"
3543-msgstr "Glance-Abbild '%s' ist im Status 'killed'"
3544-
3545-#, python-format
3546 msgid "Group not valid. Reason: %(reason)s"
3547 msgstr "Gruppe nicht gültig. Grund: %(reason)s"
3548
3549diff --git a/nova/locale/es/LC_MESSAGES/nova-log-error.po b/nova/locale/es/LC_MESSAGES/nova-log-error.po
3550index 5b7f637..e435a46 100644
3551--- a/nova/locale/es/LC_MESSAGES/nova-log-error.po
3552+++ b/nova/locale/es/LC_MESSAGES/nova-log-error.po
3553@@ -14,9 +14,9 @@
3554 # Eugènia Torrella <tester03@es.ibm.com>, 2016. #zanata
3555 msgid ""
3556 msgstr ""
3557-"Project-Id-Version: nova 13.0.1.dev83\n"
3558+"Project-Id-Version: nova 13.1.3.dev12\n"
3559 "Report-Msgid-Bugs-To: https://bugs.launchpad.net/openstack-i18n/\n"
3560-"POT-Creation-Date: 2016-06-11 00:11+0000\n"
3561+"POT-Creation-Date: 2016-10-18 10:31+0000\n"
3562 "MIME-Version: 1.0\n"
3563 "Content-Type: text/plain; charset=UTF-8\n"
3564 "Content-Transfer-Encoding: 8bit\n"
3565@@ -867,9 +867,6 @@ msgstr "Fallo al establecer set_name_label en conjunto: %s"
3566 msgid "Pre live migration failed at %s"
3567 msgstr "Previo a migración en vivo falló en %s"
3568
3569-msgid "Read/Write data failed"
3570-msgstr "Fallo en la Lectura/Escritura de datos"
3571-
3572 #, python-format
3573 msgid "Requested VM Generation %s, but provided VHD instead of VHDX."
3574 msgstr ""
3575@@ -929,9 +926,6 @@ msgstr "La llamada a %(method)s ha devuelto un error: %(e)s."
3576 msgid "The call to %(method)s returned an error: %(e)s. args=%(args)r"
3577 msgstr "La llamada a %(method)s ha devuelto un error: %(e)s. args=%(args)r"
3578
3579-msgid "Transfer data failed"
3580-msgstr "Ha fallado la transferencia de datos"
3581-
3582 #, python-format
3583 msgid "Unable to access floating IP %s"
3584 msgstr "Incapaz de acceder a la Ip flotante %s"
3585diff --git a/nova/locale/es/LC_MESSAGES/nova.po b/nova/locale/es/LC_MESSAGES/nova.po
3586index 9d3ad6b..90e0c3d 100644
3587--- a/nova/locale/es/LC_MESSAGES/nova.po
3588+++ b/nova/locale/es/LC_MESSAGES/nova.po
3589@@ -16,9 +16,9 @@
3590 # Eugènia Torrella <tester03@es.ibm.com>, 2016. #zanata
3591 msgid ""
3592 msgstr ""
3593-"Project-Id-Version: nova 13.1.2.dev11\n"
3594+"Project-Id-Version: nova 13.1.3.dev12\n"
3595 "Report-Msgid-Bugs-To: https://bugs.launchpad.net/openstack-i18n/\n"
3596-"POT-Creation-Date: 2016-09-07 20:56+0000\n"
3597+"POT-Creation-Date: 2016-10-18 10:31+0000\n"
3598 "MIME-Version: 1.0\n"
3599 "Content-Type: text/plain; charset=UTF-8\n"
3600 "Content-Transfer-Encoding: 8bit\n"
3601@@ -1805,14 +1805,6 @@ msgstr ""
3602 "%(type)s libres %(free).02f %(unit)s < solicitados %(requested)d %(unit)s"
3603
3604 #, python-format
3605-msgid "Glance image %(image_id)s is in unknown state - %(state)s"
3606-msgstr "La imagen Glance %(image_id)s está en estado desconocido - %(state)s"
3607-
3608-#, python-format
3609-msgid "Glance image %s is in killed state"
3610-msgstr "La imagen Glance %s está en estado terminado"
3611-
3612-#, python-format
3613 msgid "Group not valid. Reason: %(reason)s"
3614 msgstr "Grupo no válido. Motivo: %(reason)s"
3615
3616diff --git a/nova/locale/fr/LC_MESSAGES/nova-log-error.po b/nova/locale/fr/LC_MESSAGES/nova-log-error.po
3617index 568db4a..96168c0 100644
3618--- a/nova/locale/fr/LC_MESSAGES/nova-log-error.po
3619+++ b/nova/locale/fr/LC_MESSAGES/nova-log-error.po
3620@@ -14,9 +14,9 @@
3621 # Sylvie Chesneau <sissicdf@fr.ibm.com>, 2016. #zanata
3622 msgid ""
3623 msgstr ""
3624-"Project-Id-Version: nova 13.0.1.dev12\n"
3625+"Project-Id-Version: nova 13.1.3.dev12\n"
3626 "Report-Msgid-Bugs-To: https://bugs.launchpad.net/openstack-i18n/\n"
3627-"POT-Creation-Date: 2016-04-19 04:50+0000\n"
3628+"POT-Creation-Date: 2016-10-18 10:31+0000\n"
3629 "MIME-Version: 1.0\n"
3630 "Content-Type: text/plain; charset=UTF-8\n"
3631 "Content-Transfer-Encoding: 8bit\n"
3632@@ -910,9 +910,6 @@ msgstr "Pool-set_name_label a échoué : %s"
3633 msgid "Pre live migration failed at %s"
3634 msgstr "Pré migration en directe a échoué a %s"
3635
3636-msgid "Read/Write data failed"
3637-msgstr "Echec de Lecture/Ecriture des données"
3638-
3639 #, python-format
3640 msgid "Requested VM Generation %s is not supported on this OS."
3641 msgstr ""
3642@@ -975,9 +972,6 @@ msgstr "L'appel à %(method)s a renvoyé une erreur : %(e)s."
3643 msgid "The call to %(method)s returned an error: %(e)s. args=%(args)r"
3644 msgstr "L'appel à %(method)s a renvoyé une erreur : %(e)s. args=%(args)r"
3645
3646-msgid "Transfer data failed"
3647-msgstr "Le transfert de donnée a échoué"
3648-
3649 #, python-format
3650 msgid "Unable to access floating IP %s"
3651 msgstr "Incapable d'accéder à l'IP flottante %s"
3652diff --git a/nova/locale/fr/LC_MESSAGES/nova.po b/nova/locale/fr/LC_MESSAGES/nova.po
3653index 2836581..d509f79 100644
3654--- a/nova/locale/fr/LC_MESSAGES/nova.po
3655+++ b/nova/locale/fr/LC_MESSAGES/nova.po
3656@@ -25,9 +25,9 @@
3657 # Sylvie Chesneau <sissicdf@fr.ibm.com>, 2016. #zanata
3658 msgid ""
3659 msgstr ""
3660-"Project-Id-Version: nova 13.1.2.dev11\n"
3661+"Project-Id-Version: nova 13.1.3.dev12\n"
3662 "Report-Msgid-Bugs-To: https://bugs.launchpad.net/openstack-i18n/\n"
3663-"POT-Creation-Date: 2016-09-07 20:56+0000\n"
3664+"POT-Creation-Date: 2016-10-18 10:31+0000\n"
3665 "MIME-Version: 1.0\n"
3666 "Content-Type: text/plain; charset=UTF-8\n"
3667 "Content-Transfer-Encoding: 8bit\n"
3668@@ -1805,14 +1805,6 @@ msgstr ""
3669 "%(unit)s"
3670
3671 #, python-format
3672-msgid "Glance image %(image_id)s is in unknown state - %(state)s"
3673-msgstr "Image Glance %(image_id)s dans un état inconnu - %(state)s"
3674-
3675-#, python-format
3676-msgid "Glance image %s is in killed state"
3677-msgstr "Image Glance %s à l'état supprimé"
3678-
3679-#, python-format
3680 msgid "Group not valid. Reason: %(reason)s"
3681 msgstr "Groupe non valide. Cause : %(reason)s"
3682
3683diff --git a/nova/locale/it/LC_MESSAGES/nova.po b/nova/locale/it/LC_MESSAGES/nova.po
3684index faea907..3f14c7c 100644
3685--- a/nova/locale/it/LC_MESSAGES/nova.po
3686+++ b/nova/locale/it/LC_MESSAGES/nova.po
3687@@ -11,9 +11,9 @@
3688 # Remo Mattei <remo@rm.ht>, 2016. #zanata
3689 msgid ""
3690 msgstr ""
3691-"Project-Id-Version: nova 13.1.2.dev11\n"
3692+"Project-Id-Version: nova 13.1.3.dev12\n"
3693 "Report-Msgid-Bugs-To: https://bugs.launchpad.net/openstack-i18n/\n"
3694-"POT-Creation-Date: 2016-09-07 20:56+0000\n"
3695+"POT-Creation-Date: 2016-10-18 10:31+0000\n"
3696 "MIME-Version: 1.0\n"
3697 "Content-Type: text/plain; charset=UTF-8\n"
3698 "Content-Transfer-Encoding: 8bit\n"
3699@@ -1782,14 +1782,6 @@ msgstr ""
3700 "Libero %(type)s %(free).02f %(unit)s < richiesto %(requested)d %(unit)s"
3701
3702 #, python-format
3703-msgid "Glance image %(image_id)s is in unknown state - %(state)s"
3704-msgstr "Lo stato dell'immagine glance %(image_id)s è unknown - %(state)s"
3705-
3706-#, python-format
3707-msgid "Glance image %s is in killed state"
3708-msgstr "Lo stato dell'immagine glance %s è killed"
3709-
3710-#, python-format
3711 msgid "Group not valid. Reason: %(reason)s"
3712 msgstr "Gruppo non valido. Motivo: %(reason)s"
3713
3714diff --git a/nova/locale/ja/LC_MESSAGES/nova.po b/nova/locale/ja/LC_MESSAGES/nova.po
3715index c3c4e79..8fa312e 100644
3716--- a/nova/locale/ja/LC_MESSAGES/nova.po
3717+++ b/nova/locale/ja/LC_MESSAGES/nova.po
3718@@ -18,9 +18,9 @@
3719 # 笹原 昌美 <ebb0de1@jp.ibm.com>, 2016. #zanata
3720 msgid ""
3721 msgstr ""
3722-"Project-Id-Version: nova 13.1.2.dev11\n"
3723+"Project-Id-Version: nova 13.1.3.dev12\n"
3724 "Report-Msgid-Bugs-To: https://bugs.launchpad.net/openstack-i18n/\n"
3725-"POT-Creation-Date: 2016-09-07 20:56+0000\n"
3726+"POT-Creation-Date: 2016-10-18 10:31+0000\n"
3727 "MIME-Version: 1.0\n"
3728 "Content-Type: text/plain; charset=UTF-8\n"
3729 "Content-Transfer-Encoding: 8bit\n"
3730@@ -1764,14 +1764,6 @@ msgstr ""
3731 "ないです"
3732
3733 #, python-format
3734-msgid "Glance image %(image_id)s is in unknown state - %(state)s"
3735-msgstr "Glance イメージ %(image_id)s は不明な状態 %(state)s です。"
3736-
3737-#, fuzzy, python-format
3738-msgid "Glance image %s is in killed state"
3739-msgstr "Glance イメージ %s は強制終了状態です"
3740-
3741-#, python-format
3742 msgid "Group not valid. Reason: %(reason)s"
3743 msgstr "グループが無効です。理由: %(reason)s"
3744
3745diff --git a/nova/locale/ko_KR/LC_MESSAGES/nova-log-error.po b/nova/locale/ko_KR/LC_MESSAGES/nova-log-error.po
3746index 9b43e4d..cc00ba0 100644
3747--- a/nova/locale/ko_KR/LC_MESSAGES/nova-log-error.po
3748+++ b/nova/locale/ko_KR/LC_MESSAGES/nova-log-error.po
3749@@ -4,18 +4,18 @@
3750 #
3751 # Translators:
3752 # jaekwon.park <jaekwon.park@rockplace.co.kr>, 2014
3753-# OpenStack Infra <zanata@openstack.org>, 2015. #zanata
3754-# SeYeon Lee <sy_lee@kr.ibm.com>, 2016. #zanata
3755+# Jongwon Lee <tothebinaryworld@gmail.com>, 2016. #zanata
3756+# Sungjin Kang <gang.sungjin@gmail.com>, 2016. #zanata
3757 msgid ""
3758 msgstr ""
3759-"Project-Id-Version: nova 13.0.1.dev12\n"
3760+"Project-Id-Version: nova 13.1.3.dev12\n"
3761 "Report-Msgid-Bugs-To: https://bugs.launchpad.net/openstack-i18n/\n"
3762-"POT-Creation-Date: 2016-04-19 04:50+0000\n"
3763+"POT-Creation-Date: 2016-10-18 10:31+0000\n"
3764 "MIME-Version: 1.0\n"
3765 "Content-Type: text/plain; charset=UTF-8\n"
3766 "Content-Transfer-Encoding: 8bit\n"
3767-"PO-Revision-Date: 2016-03-22 09:56+0000\n"
3768-"Last-Translator: SeYeon Lee <sy_lee@kr.ibm.com>\n"
3769+"PO-Revision-Date: 2016-10-22 06:07+0000\n"
3770+"Last-Translator: Jongwon Lee <tothebinaryworld@gmail.com>\n"
3771 "Language: ko-KR\n"
3772 "Plural-Forms: nplurals=1; plural=0;\n"
3773 "Generated-By: Babel 2.0\n"
3774@@ -927,6 +927,10 @@ msgstr "%(uuid)s 인스턴스의 %(event)s 이벤트에서 Neutron이 실패를
3775 msgid "Neutron error creating port on network %s"
3776 msgstr "%s 네트워크에서 포트를 생성하는 중 Neutron 오류 발생"
3777
3778+msgid "No APIs were started. Check the enabled_apis config option."
3779+msgstr ""
3780+"어떤 API도 시작 되지 않았습니다. nabled_apis 구성 옵션을 확인해 보세요."
3781+
3782 #, python-format
3783 msgid "No compute node record for host %s"
3784 msgstr "%s 호스트의 컴퓨트 노드 레코드가 없음"
3785@@ -981,9 +985,6 @@ msgstr "Pool-set_name_label 실패: %s"
3786 msgid "Pre live migration failed at %s"
3787 msgstr "사전 라이브 마이그레이션이 %s에서 실패함"
3788
3789-msgid "Read/Write data failed"
3790-msgstr "데이터 읽기/쓰기 실패"
3791-
3792 #, python-format
3793 msgid "Requested VM Generation %s is not supported on this OS."
3794 msgstr "요청된 VM 생성 %s은(는) 이 OS에서 지원되지 않습니다."
3795@@ -1046,9 +1047,6 @@ msgstr "%(method)s에 대한 호출이 오류를 리턴함: %(e)s."
3796 msgid "The call to %(method)s returned an error: %(e)s. args=%(args)r"
3797 msgstr "%(method)s 호출이 오류를 리턴했음: %(e)s. args=%(args)r"
3798
3799-msgid "Transfer data failed"
3800-msgstr "데이터 전송 실패"
3801-
3802 #, python-format
3803 msgid "Unable to access floating IP %s"
3804 msgstr "Floating IP %s에 액세스할 수 없음"
3805@@ -1065,6 +1063,14 @@ msgid "Unable to attach volume to instance %s"
3806 msgstr "%s 인스턴스에 볼륨을 첨부할 수 없음"
3807
3808 #, python-format
3809+msgid ""
3810+"Unable to call for a driver detach of volume %(vol_id)s due to the instance "
3811+"being registered to the remote host %(inst_host)s."
3812+msgstr ""
3813+"원격 호스트 %(inst_host)s에 등록되는 인스턴스 때문에 볼륨 %(vol_id)s에 대한 "
3814+"장치 분리가 호출 될 수 없습니다."
3815+
3816+#, python-format
3817 msgid "Unable to clear device ID for port '%s'"
3818 msgstr "'%s' 포트의 디바이스 ID를 지울 수 없음"
3819
3820@@ -1095,10 +1101,6 @@ msgid "Unable to find SR from VDI"
3821 msgstr "VDI에서 SR을 찾을 수 없음"
3822
3823 #, python-format
3824-msgid "Unable to find a service record to update for %(binary)s on %(host)s"
3825-msgstr "%(host)s에서 %(binary)s의 업데이트를 위한 서비스 레코드를 찾을 수 없음"
3826-
3827-#, python-format
3828 msgid "Unable to find address %r"
3829 msgstr "%r 주소를 찾을 수 없음"
3830
3831diff --git a/nova/locale/ko_KR/LC_MESSAGES/nova-log-warning.po b/nova/locale/ko_KR/LC_MESSAGES/nova-log-warning.po
3832index e840ba5..64d6a60 100644
3833--- a/nova/locale/ko_KR/LC_MESSAGES/nova-log-warning.po
3834+++ b/nova/locale/ko_KR/LC_MESSAGES/nova-log-warning.po
3835@@ -3,17 +3,19 @@
3836 # This file is distributed under the same license as the nova project.
3837 #
3838 # Translators:
3839+# Ian Y. Choi <ianyrchoi@gmail.com>, 2016. #zanata
3840+# Jongwon Lee <tothebinaryworld@gmail.com>, 2016. #zanata
3841 # Sungjin Kang <gang.sungjin@gmail.com>, 2016. #zanata
3842 msgid ""
3843 msgstr ""
3844-"Project-Id-Version: nova 13.0.1.dev12\n"
3845+"Project-Id-Version: nova 13.1.3.dev12\n"
3846 "Report-Msgid-Bugs-To: https://bugs.launchpad.net/openstack-i18n/\n"
3847-"POT-Creation-Date: 2016-04-19 04:49+0000\n"
3848+"POT-Creation-Date: 2016-10-18 10:31+0000\n"
3849 "MIME-Version: 1.0\n"
3850 "Content-Type: text/plain; charset=UTF-8\n"
3851 "Content-Transfer-Encoding: 8bit\n"
3852-"PO-Revision-Date: 2016-04-08 05:42+0000\n"
3853-"Last-Translator: SeYeon Lee <sy_lee@kr.ibm.com>\n"
3854+"PO-Revision-Date: 2016-10-25 11:38+0000\n"
3855+"Last-Translator: Ian Y. Choi <ianyrchoi@gmail.com>\n"
3856 "Language: ko-KR\n"
3857 "Plural-Forms: nplurals=1; plural=0;\n"
3858 "Generated-By: Babel 2.0\n"
3859@@ -75,6 +77,12 @@ msgstr "%s이(가) 이미 마운트되었음"
3860 msgid "%s swap image was used by instance but no back files existing!"
3861 msgstr "인스턴스에서 %s 스왑 이미지가 사용되었지만 지원 파일이 없습니다!"
3862
3863+#, python-format
3864+msgid "%s. ``enabled_apis`` includes bad values. Fix to remove this warning."
3865+msgstr ""
3866+"%s. ``enabled_apis``가 옳지 않은 값을 포함하고 있습니다. 이 경고가 발생하"
3867+"지 않도록 수정하세요."
3868+
3869 msgid ""
3870 "Adding the VIR_MIGRATE_NON_SHARED_INC flag to the block_migration_flag "
3871 "config option, otherwise all block-migrations will be live-migrations "
3872@@ -454,6 +462,10 @@ msgid "Failed to abort migration %s"
3873 msgstr "%s 마이그레이션을 중단하는 데 실패"
3874
3875 #, python-format
3876+msgid "Failed to archive %(table)s: %(error)s"
3877+msgstr "저장하는데 실패함 %(table)s: %(error)s"
3878+
3879+#, python-format
3880 msgid "Failed to close augeas %s"
3881 msgstr "Augeas %s을(를) 닫지 못했음"
3882
3883@@ -523,6 +535,14 @@ msgstr "%(ext_name)s:%(exc)s 확장을 로드하는 데 실패"
3884 msgid "Failed to power off instance"
3885 msgstr "인스턴스 전원 끄기 실패"
3886
3887+#, python-format
3888+msgid ""
3889+"Failed to remove deploy parameters from node %(node)s when unprovisioning "
3890+"the instance %(instance)s: %(reason)s"
3891+msgstr ""
3892+"인스턴스 %(instance)s 해제 시 노드 %(node)s 로부터의 디플로이 매개변수 삭제"
3893+"에 실패함: %(reason)s"
3894+
3895 msgid "Failed to resume instance"
3896 msgstr "인스턴스를 재개하지 못했음"
3897
3898@@ -620,6 +640,14 @@ msgstr ""
3899 "호스트 %(hostname)s에 예상 데이터베이스보다 디스크 공간이 많음(%(physical)s "
3900 "GB > %(database)s GB)"
3901
3902+#, python-format
3903+msgid ""
3904+"Host '%(host)s' has a metadata key '%(key)s' that is not present in the "
3905+"image metadata."
3906+msgstr ""
3907+" 호스트 '%(host)s'가 이미지 메타데이터에 존재하지 않은 메타데이터 키 "
3908+"'%(key)s'를 갖고 있습니다."
3909+
3910 msgid ""
3911 "Host field should not be set on the instance until resources have been "
3912 "claimed."
3913@@ -671,6 +699,10 @@ msgstr ""
3914 "%(err)s"
3915
3916 #, python-format
3917+msgid "Ignoring EndpointNotFound for volume %(volume_id)s: %(exc)s"
3918+msgstr "볼륨 %(volume_id)s에 대한 EndpointNotFound 오류를 무시함: %(exc)s"
3919+
3920+#, python-format
3921 msgid "Ignoring Volume Error on vol %(vol_id)s during delete %(exc)s"
3922 msgstr "%(exc)s 삭제 중에 %(vol_id)s 볼륨에서 발생한 볼륨 오류 무시"
3923
3924@@ -720,6 +752,14 @@ msgid "Ignoring the invalid elements of the option %(name)s: %(options)s"
3925 msgstr "%(name)s: %(options)s 옵션의 올바르지 않은 요소 무시"
3926
3927 #, python-format
3928+msgid "Ignoring unknown cinder exception for volume %(volume_id)s: %(exc)s"
3929+msgstr "볼륨 %(volume_id)s에 대한 알려지지 않은 cinder 예외를 무시함: %(exc)s"
3930+
3931+#, python-format
3932+msgid "Ignoring unknown exception for volume %(volume_id)s: %(exc)s"
3933+msgstr "볼륨 %(volume_id)s에 대한 알려지지 않은 예외를 무시함: %(exc)s"
3934+
3935+#, python-format
3936 msgid "Ignoring unknown libvirt live migration flag '%(flag)s'"
3937 msgstr "알 수 없는 libvirt 라이브 마이그레이션 플래그 '%(flag)s' 무시"
3938
3939@@ -1764,6 +1804,14 @@ msgstr "도메인 id: %(uuid)s에서 vcpu 수를 가져올 수 없습니다. 예
3940 msgid "cpu_arch not defined for node '%s'"
3941 msgstr "'%s' 노드의 cpu_arch가 정의되지 않음"
3942
3943+#, python-format
3944+msgid ""
3945+"cryptsetup status %(dev_name) exited abnormally (status %(exit_code)s): "
3946+"%(err)s"
3947+msgstr ""
3948+"cryptsetup 상태가 비정상적으로 종료 되었습니다 %(dev_name) exited abnormally "
3949+"((status %(exit_code)s)): %(err)s"
3950+
3951 msgid "datastore_regex is ignored when PBM is enabled"
3952 msgstr "PBM을 사용하면 datastore_regex가 무시됨"
3953
3954diff --git a/nova/locale/ko_KR/LC_MESSAGES/nova.po b/nova/locale/ko_KR/LC_MESSAGES/nova.po
3955index db9f2fc..5177540 100644
3956--- a/nova/locale/ko_KR/LC_MESSAGES/nova.po
3957+++ b/nova/locale/ko_KR/LC_MESSAGES/nova.po
3958@@ -8,17 +8,18 @@
3959 # Sungjin Kang <potopro@gmail.com>, 2013
3960 # Sungjin Kang <potopro@gmail.com>, 2013
3961 # Sungjin Kang <gang.sungjin@gmail.com>, 2015. #zanata
3962+# Jongwon Lee <tothebinaryworld@gmail.com>, 2016. #zanata
3963 # Sungjin Kang <gang.sungjin@gmail.com>, 2016. #zanata
3964 msgid ""
3965 msgstr ""
3966-"Project-Id-Version: nova 13.1.2.dev11\n"
3967+"Project-Id-Version: nova 13.1.3.dev12\n"
3968 "Report-Msgid-Bugs-To: https://bugs.launchpad.net/openstack-i18n/\n"
3969-"POT-Creation-Date: 2016-09-07 20:56+0000\n"
3970+"POT-Creation-Date: 2016-10-18 10:31+0000\n"
3971 "MIME-Version: 1.0\n"
3972 "Content-Type: text/plain; charset=UTF-8\n"
3973 "Content-Transfer-Encoding: 8bit\n"
3974-"PO-Revision-Date: 2016-04-26 12:10+0000\n"
3975-"Last-Translator: Sungjin Kang <gang.sungjin@gmail.com>\n"
3976+"PO-Revision-Date: 2016-10-22 06:02+0000\n"
3977+"Last-Translator: Jongwon Lee <tothebinaryworld@gmail.com>\n"
3978 "Language: ko-KR\n"
3979 "Plural-Forms: nplurals=1; plural=0;\n"
3980 "Generated-By: Babel 2.0\n"
3981@@ -651,6 +652,14 @@ msgstr ""
3982 "요합니다."
3983
3984 #, python-format
3985+msgid ""
3986+"Cannot block migrate instance %(uuid)s with mapped volumes. Selective block "
3987+"device migration is not supported with tunnelled block migrations."
3988+msgstr ""
3989+"볼륨에 매핑 되는 인스턴스 %(uuid)s 마이그레이션을 차단할 수 없습니다. 선택적 "
3990+"블록 장치 마이그레이션은 터널링 된 블록 마이그레이션과 지원 되지 않습니다."
3991+
3992+#, python-format
3993 msgid "Cannot call %(method)s on orphaned %(objtype)s object"
3994 msgstr "Orphaned %(objtype)s 오브젝트에서 %(method)s 메소드를 호출할 수 없음"
3995
3996@@ -1687,14 +1696,6 @@ msgid "Free %(type)s %(free).02f %(unit)s < requested %(requested)d %(unit)s"
3997 msgstr "여유 %(type)s %(free).02f %(unit)s < 요청된 %(requested)d %(unit)s"
3998
3999 #, python-format
4000-msgid "Glance image %(image_id)s is in unknown state - %(state)s"
4001-msgstr "Glance 이미지 %(image_id)s이(가) 알 수 없는 상태에 있음 - %(state)s"
4002-
4003-#, python-format
4004-msgid "Glance image %s is in killed state"
4005-msgstr "Glance 이미지 %s이(가) 강제 종료 상태에 있음"
4006-
4007-#, python-format
4008 msgid "Group not valid. Reason: %(reason)s"
4009 msgstr "그룹이 올바르지 않습니다. 이유: %(reason)s"
4010
4011@@ -2249,6 +2250,10 @@ msgstr "올바르지 않은 이미지 href %(image_href)s."
4012 msgid "Invalid image metadata"
4013 msgstr "올바르지 않은 이미지 메타데이터"
4014
4015+#, python-format
4016+msgid "Invalid image metadata. Error: %s"
4017+msgstr "유효하지 않은 이미지 메타데이터. 오류: %s"
4018+
4019 msgid "Invalid imageRef provided."
4020 msgstr "올바르지 않은 imageRef가 제공되었습니다. "
4021
4022@@ -2355,6 +2360,9 @@ msgstr "올바르지 않은 요청 본문"
4023 msgid "Invalid request body: %s"
4024 msgstr "올바르지 않은 요청 본문: %s"
4025
4026+msgid "Invalid rescue_image_ref provided."
4027+msgstr "유효하지 않은 escue_image_ref 가 제공 됨."
4028+
4029 #, python-format
4030 msgid "Invalid reservation expiration %(expire)s."
4031 msgstr "올바르지 않은 예약 만기 %(expire)s."
4032@@ -3200,6 +3208,10 @@ msgstr ""
4033 "모든 %(unit_string)s의 %(uri)s에는 %(value)s %(verb)s 요청만 작성할 수 있습니"
4034 "다."
4035
4036+#, python-format
4037+msgid "Only %d SCSI controllers are allowed to be created on this instance."
4038+msgstr "%d SCSI 컨트롤러만 이 인스턴스에서의 생성이 허용 됩니다."
4039+
4040 msgid "Only 'updated_since', 'project_id' and 'deleted' are understood."
4041 msgstr "'updated_since', 'project_id', 'deleted'만 이해됩니다."
4042
4043@@ -4063,6 +4075,9 @@ msgstr ""
4044 "네트워크 범위가 %(num_networks)s에 맞추기에는 충분히 크지 않습니다. 네트워크 "
4045 "크기는 %(network_size)s입니다."
4046
4047+msgid "The networks quota is disabled"
4048+msgstr "네트워크 할당이 비활성화 되어 있습니다."
4049+
4050 #, python-format
4051 msgid "The number of defined ports: %(ports)d is over the limit: %(quota)d"
4052 msgstr "정의된 포트 수 %(ports)d이(가) 한계를 초과함: %(quota)d"
4053@@ -4605,6 +4620,10 @@ msgid "Unknown argument: port"
4054 msgstr "알 수 없는 인수: 포트"
4055
4056 #, python-format
4057+msgid "Unknown auth type: %s"
4058+msgstr "알려지지 않은 인증 유형: %s"
4059+
4060+#, python-format
4061 msgid "Unknown chain: %r"
4062 msgstr "알 수 없는 체인: %r"
4063
4064diff --git a/nova/locale/pt_BR/LC_MESSAGES/nova-log-error.po b/nova/locale/pt_BR/LC_MESSAGES/nova-log-error.po
4065index 22792de..7db7b73 100644
4066--- a/nova/locale/pt_BR/LC_MESSAGES/nova-log-error.po
4067+++ b/nova/locale/pt_BR/LC_MESSAGES/nova-log-error.po
4068@@ -7,9 +7,9 @@
4069 # Carlos Marques <marquesc@br.ibm.com>, 2016. #zanata
4070 msgid ""
4071 msgstr ""
4072-"Project-Id-Version: nova 13.0.1.dev12\n"
4073+"Project-Id-Version: nova 13.1.3.dev12\n"
4074 "Report-Msgid-Bugs-To: https://bugs.launchpad.net/openstack-i18n/\n"
4075-"POT-Creation-Date: 2016-04-19 04:50+0000\n"
4076+"POT-Creation-Date: 2016-10-18 10:31+0000\n"
4077 "MIME-Version: 1.0\n"
4078 "Content-Type: text/plain; charset=UTF-8\n"
4079 "Content-Transfer-Encoding: 8bit\n"
4080@@ -1004,9 +1004,6 @@ msgstr "Pool-set_name_label falhou: %s"
4081 msgid "Pre live migration failed at %s"
4082 msgstr "A pré-migração em tempo real falhou em %s"
4083
4084-msgid "Read/Write data failed"
4085-msgstr "A Leitura/Gravação de dados falhou"
4086-
4087 #, python-format
4088 msgid "Requested VM Generation %s is not supported on this OS."
4089 msgstr "O VM Generation solicitado %s não é suportado neste S.O."
4090@@ -1072,9 +1069,6 @@ msgstr "A chamada para %(method)s retornou um erro: %(e)s."
4091 msgid "The call to %(method)s returned an error: %(e)s. args=%(args)r"
4092 msgstr "A chamada para %(method)s retornou um erro: %(e)s. args=%(args)r"
4093
4094-msgid "Transfer data failed"
4095-msgstr "A transferência de dados falhou"
4096-
4097 #, python-format
4098 msgid "Unable to access floating IP %s"
4099 msgstr "Não é possível acessar o IP flutuante %s"
4100@@ -1123,12 +1117,6 @@ msgid "Unable to find SR from VDI"
4101 msgstr "Não é possível localizar SR a partir do VDI"
4102
4103 #, python-format
4104-msgid "Unable to find a service record to update for %(binary)s on %(host)s"
4105-msgstr ""
4106-"Não é possível localizar um registro de serviço para atualizar %(binary)s no "
4107-"%(host)s"
4108-
4109-#, python-format
4110 msgid "Unable to find address %r"
4111 msgstr "Não foi possível localizar o endereço %r"
4112
4113diff --git a/nova/locale/pt_BR/LC_MESSAGES/nova.po b/nova/locale/pt_BR/LC_MESSAGES/nova.po
4114index 4a41084..cc9da68 100644
4115--- a/nova/locale/pt_BR/LC_MESSAGES/nova.po
4116+++ b/nova/locale/pt_BR/LC_MESSAGES/nova.po
4117@@ -18,9 +18,9 @@
4118 # Carlos Marques <marquesc@br.ibm.com>, 2016. #zanata
4119 msgid ""
4120 msgstr ""
4121-"Project-Id-Version: nova 13.1.2.dev11\n"
4122+"Project-Id-Version: nova 13.1.3.dev12\n"
4123 "Report-Msgid-Bugs-To: https://bugs.launchpad.net/openstack-i18n/\n"
4124-"POT-Creation-Date: 2016-09-07 20:56+0000\n"
4125+"POT-Creation-Date: 2016-10-18 10:31+0000\n"
4126 "MIME-Version: 1.0\n"
4127 "Content-Type: text/plain; charset=UTF-8\n"
4128 "Content-Transfer-Encoding: 8bit\n"
4129@@ -1770,15 +1770,6 @@ msgstr ""
4130 "%(type)s %(free).02f %(unit)s livres < %(requested)d %(unit)s solicitadas"
4131
4132 #, python-format
4133-msgid "Glance image %(image_id)s is in unknown state - %(state)s"
4134-msgstr ""
4135-"A imagem de visão geral %(image_id)s está em estado desconhecido - %(state)s"
4136-
4137-#, python-format
4138-msgid "Glance image %s is in killed state"
4139-msgstr "A imagem de visão geral %s está em estado eliminado"
4140-
4141-#, python-format
4142 msgid "Group not valid. Reason: %(reason)s"
4143 msgstr "O grupo não é válido. Motivo: %(reason)s"
4144
4145diff --git a/nova/locale/ru/LC_MESSAGES/nova.po b/nova/locale/ru/LC_MESSAGES/nova.po
4146index 26c5979..3784e80 100644
4147--- a/nova/locale/ru/LC_MESSAGES/nova.po
4148+++ b/nova/locale/ru/LC_MESSAGES/nova.po
4149@@ -17,9 +17,9 @@
4150 # Lucas Palm <lapalm@us.ibm.com>, 2016. #zanata
4151 msgid ""
4152 msgstr ""
4153-"Project-Id-Version: nova 13.1.2.dev11\n"
4154+"Project-Id-Version: nova 13.1.3.dev12\n"
4155 "Report-Msgid-Bugs-To: https://bugs.launchpad.net/openstack-i18n/\n"
4156-"POT-Creation-Date: 2016-09-07 20:56+0000\n"
4157+"POT-Creation-Date: 2016-10-18 10:31+0000\n"
4158 "MIME-Version: 1.0\n"
4159 "Content-Type: text/plain; charset=UTF-8\n"
4160 "Content-Transfer-Encoding: 8bit\n"
4161@@ -1768,15 +1768,6 @@ msgstr ""
4162 "%(unit)s"
4163
4164 #, python-format
4165-msgid "Glance image %(image_id)s is in unknown state - %(state)s"
4166-msgstr ""
4167-"Образ Glance %(image_id)s находится в неизвестном состоянии - %(state)s"
4168-
4169-#, python-format
4170-msgid "Glance image %s is in killed state"
4171-msgstr "Образ Glance %s находится в удаленном состоянии"
4172-
4173-#, python-format
4174 msgid "Group not valid. Reason: %(reason)s"
4175 msgstr "Неверная группа. Причина: %(reason)s"
4176
4177diff --git a/nova/locale/tr_TR/LC_MESSAGES/nova-log-error.po b/nova/locale/tr_TR/LC_MESSAGES/nova-log-error.po
4178index 28cdb8d..660a73b 100644
4179--- a/nova/locale/tr_TR/LC_MESSAGES/nova-log-error.po
4180+++ b/nova/locale/tr_TR/LC_MESSAGES/nova-log-error.po
4181@@ -5,11 +5,12 @@
4182 # Translators:
4183 # OpenStack Infra <zanata@openstack.org>, 2015. #zanata
4184 # Andreas Jaeger <jaegerandi@gmail.com>, 2016. #zanata
4185+# Mücahit Büyükyılmaz <mucahit@deltanoc.com>, 2016. #zanata
4186 msgid ""
4187 msgstr ""
4188-"Project-Id-Version: nova 13.0.1.dev12\n"
4189+"Project-Id-Version: nova 13.1.3.dev12\n"
4190 "Report-Msgid-Bugs-To: https://bugs.launchpad.net/openstack-i18n/\n"
4191-"POT-Creation-Date: 2016-04-19 04:50+0000\n"
4192+"POT-Creation-Date: 2016-10-18 10:31+0000\n"
4193 "MIME-Version: 1.0\n"
4194 "Content-Type: text/plain; charset=UTF-8\n"
4195 "Content-Transfer-Encoding: 8bit\n"
4196@@ -823,9 +824,6 @@ msgstr "Havuz-set_name_label başarısız: %s"
4197 msgid "Pre live migration failed at %s"
4198 msgstr "Canlı öncesi göç %s de başarısız"
4199
4200-msgid "Read/Write data failed"
4201-msgstr "Veri okuma/yazma başarısız"
4202-
4203 #, python-format
4204 msgid "Requested VM Generation %s, but provided VHD instead of VHDX."
4205 msgstr "VM Oluşturma %s istendi, ama VHDX yerine VHD sağlandı."
4206@@ -880,9 +878,6 @@ msgstr "%(method)s çağrısı hata döndürdü: %(e)s."
4207 msgid "The call to %(method)s returned an error: %(e)s. args=%(args)r"
4208 msgstr "%(method)s çağrısı bir hata döndürdü: %(e)s. args=%(args)r"
4209
4210-msgid "Transfer data failed"
4211-msgstr "Veri aktarımı başarısız"
4212-
4213 #, python-format
4214 msgid "Unable to access floating IP %s"
4215 msgstr "%s değişken IP'sine erişilemiyor"
4216diff --git a/nova/locale/tr_TR/LC_MESSAGES/nova.po b/nova/locale/tr_TR/LC_MESSAGES/nova.po
4217index f0abdcd..9400e5d 100644
4218--- a/nova/locale/tr_TR/LC_MESSAGES/nova.po
4219+++ b/nova/locale/tr_TR/LC_MESSAGES/nova.po
4220@@ -10,9 +10,9 @@
4221 # Mücahit Büyükyılmaz <mucahit@deltanoc.com>, 2016. #zanata
4222 msgid ""
4223 msgstr ""
4224-"Project-Id-Version: nova 13.0.1.dev83\n"
4225+"Project-Id-Version: nova 13.1.3.dev12\n"
4226 "Report-Msgid-Bugs-To: https://bugs.launchpad.net/openstack-i18n/\n"
4227-"POT-Creation-Date: 2016-06-11 00:10+0000\n"
4228+"POT-Creation-Date: 2016-10-18 10:31+0000\n"
4229 "MIME-Version: 1.0\n"
4230 "Content-Type: text/plain; charset=UTF-8\n"
4231 "Content-Transfer-Encoding: 8bit\n"
4232@@ -1375,14 +1375,6 @@ msgid "Free %(type)s %(free).02f %(unit)s < requested %(requested)d %(unit)s"
4233 msgstr "Boş %(type)s %(free).02f %(unit)s < istenen %(requested)d %(unit)s"
4234
4235 #, python-format
4236-msgid "Glance image %(image_id)s is in unknown state - %(state)s"
4237-msgstr "Glance imajı %(image_id)s bilinmeyen durumda - %(state)s"
4238-
4239-#, python-format
4240-msgid "Glance image %s is in killed state"
4241-msgstr "Glance imajı %s öldürülmüş durumda"
4242-
4243-#, python-format
4244 msgid "Group not valid. Reason: %(reason)s"
4245 msgstr "Grup geçerli değil. Sebep: %(reason)s"
4246
4247diff --git a/nova/locale/zh_CN/LC_MESSAGES/nova-log-error.po b/nova/locale/zh_CN/LC_MESSAGES/nova-log-error.po
4248index 186e953..f758d20 100644
4249--- a/nova/locale/zh_CN/LC_MESSAGES/nova-log-error.po
4250+++ b/nova/locale/zh_CN/LC_MESSAGES/nova-log-error.po
4251@@ -12,9 +12,9 @@
4252 # maoshuai <fwsakura@163.com>, 2016. #zanata
4253 msgid ""
4254 msgstr ""
4255-"Project-Id-Version: nova 13.1.1.dev3\n"
4256+"Project-Id-Version: nova 13.1.3.dev12\n"
4257 "Report-Msgid-Bugs-To: https://bugs.launchpad.net/openstack-i18n/\n"
4258-"POT-Creation-Date: 2016-07-19 22:58+0000\n"
4259+"POT-Creation-Date: 2016-10-18 10:31+0000\n"
4260 "MIME-Version: 1.0\n"
4261 "Content-Type: text/plain; charset=UTF-8\n"
4262 "Content-Transfer-Encoding: 8bit\n"
4263@@ -858,9 +858,6 @@ msgstr "Pool-set_name_label 失败:%s"
4264 msgid "Pre live migration failed at %s"
4265 msgstr "预热迁移失败 %s"
4266
4267-msgid "Read/Write data failed"
4268-msgstr "读/写数据失败"
4269-
4270 #, python-format
4271 msgid "Requested VM Generation %s is not supported on this OS."
4272 msgstr "这个系统不支持请求VM Generation %s。"
4273@@ -920,9 +917,6 @@ msgstr "对 %(method)s 的调用返回错误:%(e)s。"
4274 msgid "The call to %(method)s returned an error: %(e)s. args=%(args)r"
4275 msgstr "对 %(method)s 的调用返回了错误:%(e)s。args=%(args)r"
4276
4277-msgid "Transfer data failed"
4278-msgstr "传输数据失败"
4279-
4280 #, python-format
4281 msgid "Unable to access floating IP %s"
4282 msgstr "无法访问浮动IP %s"
4283diff --git a/nova/locale/zh_CN/LC_MESSAGES/nova.po b/nova/locale/zh_CN/LC_MESSAGES/nova.po
4284index 1a460aa..4518292 100644
4285--- a/nova/locale/zh_CN/LC_MESSAGES/nova.po
4286+++ b/nova/locale/zh_CN/LC_MESSAGES/nova.po
4287@@ -34,9 +34,9 @@
4288 # maoshuai <fwsakura@163.com>, 2016. #zanata
4289 msgid ""
4290 msgstr ""
4291-"Project-Id-Version: nova 13.1.2.dev11\n"
4292+"Project-Id-Version: nova 13.1.3.dev12\n"
4293 "Report-Msgid-Bugs-To: https://bugs.launchpad.net/openstack-i18n/\n"
4294-"POT-Creation-Date: 2016-09-07 20:56+0000\n"
4295+"POT-Creation-Date: 2016-10-18 10:31+0000\n"
4296 "MIME-Version: 1.0\n"
4297 "Content-Type: text/plain; charset=UTF-8\n"
4298 "Content-Transfer-Encoding: 8bit\n"
4299@@ -1628,14 +1628,6 @@ msgid "Free %(type)s %(free).02f %(unit)s < requested %(requested)d %(unit)s"
4300 msgstr "剩余的 %(type)s %(free).02f %(unit)s 小于请求的 %(requested)d %(unit)s"
4301
4302 #, python-format
4303-msgid "Glance image %(image_id)s is in unknown state - %(state)s"
4304-msgstr "Glance 映像 %(image_id)s 处于未知状态 - %(state)s"
4305-
4306-#, python-format
4307-msgid "Glance image %s is in killed state"
4308-msgstr "Glance 映像 %s 为已终止状态"
4309-
4310-#, python-format
4311 msgid "Group not valid. Reason: %(reason)s"
4312 msgstr "组无效。原因:%(reason)s"
4313
4314diff --git a/nova/locale/zh_TW/LC_MESSAGES/nova.po b/nova/locale/zh_TW/LC_MESSAGES/nova.po
4315index 1009b09..5b3a7b8 100644
4316--- a/nova/locale/zh_TW/LC_MESSAGES/nova.po
4317+++ b/nova/locale/zh_TW/LC_MESSAGES/nova.po
4318@@ -10,9 +10,9 @@
4319 # Jennifer <cristxu@tw.ibm.com>, 2016. #zanata
4320 msgid ""
4321 msgstr ""
4322-"Project-Id-Version: nova 13.1.2.dev11\n"
4323+"Project-Id-Version: nova 13.1.3.dev12\n"
4324 "Report-Msgid-Bugs-To: https://bugs.launchpad.net/openstack-i18n/\n"
4325-"POT-Creation-Date: 2016-09-07 20:56+0000\n"
4326+"POT-Creation-Date: 2016-10-18 10:31+0000\n"
4327 "MIME-Version: 1.0\n"
4328 "Content-Type: text/plain; charset=UTF-8\n"
4329 "Content-Transfer-Encoding: 8bit\n"
4330@@ -1609,14 +1609,6 @@ msgid "Free %(type)s %(free).02f %(unit)s < requested %(requested)d %(unit)s"
4331 msgstr "可用 %(type)s %(free).02f %(unit)s 小於所要求的 %(requested)d %(unit)s"
4332
4333 #, python-format
4334-msgid "Glance image %(image_id)s is in unknown state - %(state)s"
4335-msgstr "Glance 映像檔 %(image_id)s 處於不明狀態 - %(state)s"
4336-
4337-#, python-format
4338-msgid "Glance image %s is in killed state"
4339-msgstr "Glance 映像檔 %s 處於已結束狀態"
4340-
4341-#, python-format
4342 msgid "Group not valid. Reason: %(reason)s"
4343 msgstr "群組無效。原因:%(reason)s"
4344
4345diff --git a/nova/objects/pci_device.py b/nova/objects/pci_device.py
4346index a0b05e7..28e61af 100644
4347--- a/nova/objects/pci_device.py
4348+++ b/nova/objects/pci_device.py
4349@@ -118,7 +118,7 @@ class PciDevice(base.NovaPersistentObject, base.NovaObject):
4350 def should_migrate_data():
4351 # NOTE(ndipanov): Only migrate parent_addr if all services are up to at
4352 # least version 4 - this should only ever be called from save()
4353- services = ('conductor', 'api')
4354+ services = ('conductor', 'osapi_compute')
4355 min_parent_addr_version = 4
4356
4357 min_deployed = min(objects.Service.get_minimum_version(
4358diff --git a/nova/pci/utils.py b/nova/pci/utils.py
4359index e10a303..b28568f 100644
4360--- a/nova/pci/utils.py
4361+++ b/nova/pci/utils.py
4362@@ -82,7 +82,7 @@ def get_function_by_ifname(ifname):
4363 if os.path.isdir(dev_path):
4364 try:
4365 # sriov_totalvfs contains the maximum possible VFs for this PF
4366- with open(dev_path + _SRIOV_TOTALVFS) as fd:
4367+ with open(os.path.join(dev_path, _SRIOV_TOTALVFS)) as fd:
4368 sriov_totalvfs = int(fd.read())
4369 return (os.readlink(dev_path).strip("./"),
4370 sriov_totalvfs > 0)
4371diff --git a/nova/tests/unit/api/openstack/compute/test_block_device_mapping.py b/nova/tests/unit/api/openstack/compute/test_block_device_mapping.py
4372index c342236..40ac9a9 100644
4373--- a/nova/tests/unit/api/openstack/compute/test_block_device_mapping.py
4374+++ b/nova/tests/unit/api/openstack/compute/test_block_device_mapping.py
4375@@ -150,6 +150,66 @@ class BlockDeviceMappingTestV21(test.TestCase):
4376 params = {block_device_mapping.ATTRIBUTE_NAME: self.bdm}
4377 self._test_create(params, no_image=True)
4378
4379+ def test_create_instance_with_invalid_bdm_in_2nd_dict(self):
4380+ bdm_1st = {"source_type": "image", "delete_on_termination": True,
4381+ "boot_index": 0,
4382+ "uuid": "2ff3a1d3-ed70-4c3f-94ac-941461153bc0",
4383+ "destination_type": "local"}
4384+ bdm_2nd = {"source_type": "volume",
4385+ "uuid": "99d92140-3d0c-4ea5-a49c-f94c38c607f0",
4386+ "destination_type": "invalid"}
4387+ bdm = [bdm_1st, bdm_2nd]
4388+
4389+ params = {block_device_mapping.ATTRIBUTE_NAME: bdm,
4390+ 'imageRef': '2ff3a1d3-ed70-4c3f-94ac-941461153bc0'}
4391+ self.assertRaises(exception.ValidationError,
4392+ self._test_create, params)
4393+
4394+ def test_create_instance_with_boot_index_none_ok(self):
4395+ """Tests creating a server with two block devices. One is the boot
4396+ device and the other is a non-bootable device.
4397+ """
4398+ # From the docs:
4399+ # To disable a device from booting, set the boot index to a negative
4400+ # value or use the default boot index value, which is None. The
4401+ # simplest usage is, set the boot index of the boot device to 0 and use
4402+ # the default boot index value, None, for any other devices.
4403+ bdms = [
4404+ # This is the bootable device that would create a 20GB cinder
4405+ # volume from the given image.
4406+ {
4407+ 'source_type': 'image',
4408+ 'destination_type': 'volume',
4409+ 'boot_index': 0,
4410+ 'uuid': '155d900f-4e14-4e4c-a73d-069cbf4541e6',
4411+ 'volume_size': 20
4412+ },
4413+ # This is the non-bootable 10GB ext4 ephemeral block device.
4414+ {
4415+ 'source_type': 'blank',
4416+ 'destination_type': 'local',
4417+ 'boot_index': None,
4418+ # If 'guest_format' is 'swap' then a swap device is created.
4419+ 'guest_format': 'ext4'
4420+ }
4421+ ]
4422+ params = {block_device_mapping.ATTRIBUTE_NAME: bdms}
4423+ self._test_create(params, no_image=True)
4424+
4425+ def test_create_instance_with_boot_index_none_image_local_fails(self):
4426+ """Tests creating a server with a local image-based block device which
4427+ has a boot_index of None which is invalid.
4428+ """
4429+ bdms = [{
4430+ 'source_type': 'image',
4431+ 'destination_type': 'local',
4432+ 'boot_index': None,
4433+ 'uuid': '155d900f-4e14-4e4c-a73d-069cbf4541e6'
4434+ }]
4435+ params = {block_device_mapping.ATTRIBUTE_NAME: bdms}
4436+ self.assertRaises(exc.HTTPBadRequest, self._test_create,
4437+ params, no_image=True)
4438+
4439 def test_create_instance_with_device_name_not_string(self):
4440 self.bdm[0]['device_name'] = 123
4441 old_create = compute_api.API.create
4442@@ -385,3 +445,8 @@ class BlockDeviceMappingTestV2(BlockDeviceMappingTestV21):
4443 # Add a check whether the destination type is invalid
4444 # in V2.1 API only. So this test is skipped in V2.0 API
4445 pass
4446+
4447+ def test_create_instance_with_invalid_bdm_in_2nd_dict(self):
4448+ # Add a check whether the destination type is invalid
4449+ # in V2.1 API only. So this test is skipped in V2.0 API
4450+ pass
4451diff --git a/nova/tests/unit/api/openstack/compute/test_block_device_mapping_v1.py b/nova/tests/unit/api/openstack/compute/test_block_device_mapping_v1.py
4452index d851e8b..d771d92 100644
4453--- a/nova/tests/unit/api/openstack/compute/test_block_device_mapping_v1.py
4454+++ b/nova/tests/unit/api/openstack/compute/test_block_device_mapping_v1.py
4455@@ -277,7 +277,7 @@ class BlockDeviceMappingTestV21(test.TestCase):
4456 {'device_name': 'foo2', 'volume_id': fakes.FAKE_UUID,
4457 'delete_on_termination': True},
4458 {'device_name': 'foo3', 'volume_id': fakes.FAKE_UUID,
4459- 'delete_on_termination': 'invalid'},
4460+ 'delete_on_termination': 'False'},
4461 {'device_name': 'foo4', 'volume_id': fakes.FAKE_UUID,
4462 'delete_on_termination': False},
4463 {'device_name': 'foo5', 'volume_id': fakes.FAKE_UUID,
4464@@ -307,6 +307,16 @@ class BlockDeviceMappingTestV21(test.TestCase):
4465 self.stubs.Set(compute_api.API, '_validate_bdm', _validate_bdm)
4466 self._test_create(params)
4467
4468+ def test_create_instance_with_bdm_delete_on_termination_invalid_2nd(self):
4469+ bdm = [{'device_name': 'foo1', 'volume_id': fakes.FAKE_UUID,
4470+ 'delete_on_termination': 'True'},
4471+ {'device_name': 'foo2', 'volume_id': fakes.FAKE_UUID,
4472+ 'delete_on_termination': 'invalid'}]
4473+
4474+ params = {'block_device_mapping': bdm}
4475+ self.assertRaises(self.validation_error,
4476+ self._test_create, params)
4477+
4478 def test_create_instance_decide_format_legacy(self):
4479 ext_info = extension_info.LoadedExtensionInfo()
4480 CONF.set_override('extensions_blacklist',
4481diff --git a/nova/tests/unit/api/openstack/compute/test_volumes.py b/nova/tests/unit/api/openstack/compute/test_volumes.py
4482index 42745aa..ba47c8f 100644
4483--- a/nova/tests/unit/api/openstack/compute/test_volumes.py
4484+++ b/nova/tests/unit/api/openstack/compute/test_volumes.py
4485@@ -650,6 +650,26 @@ class VolumeAttachTestsV21(test.NoDBTestCase):
4486 self.assertRaises(self.validation_error, self.attachments.create,
4487 req, FAKE_UUID, body=body)
4488
4489+ @mock.patch.object(compute_api.API, 'attach_volume',
4490+ side_effect=exception.DevicePathInUse(path='/dev/sda'))
4491+ def test_attach_volume_device_in_use(self, mock_attach):
4492+
4493+ body = {
4494+ 'volumeAttachment': {
4495+ 'device': '/dev/sda',
4496+ 'volumeId': FAKE_UUID_A,
4497+ }
4498+ }
4499+
4500+ req = fakes.HTTPRequest.blank('/v2/servers/id/os-volume_attachments')
4501+ req.method = 'POST'
4502+ req.body = jsonutils.dump_as_bytes({})
4503+ req.headers['content-type'] = 'application/json'
4504+ req.environ['nova.context'] = self.context
4505+
4506+ self.assertRaises(webob.exc.HTTPConflict, self.attachments.create,
4507+ req, FAKE_UUID, body=body)
4508+
4509 def test_attach_volume_without_volumeId(self):
4510 self.stubs.Set(compute_api.API,
4511 'attach_volume',
4512@@ -721,9 +741,17 @@ class VolumeAttachTestsV21(test.NoDBTestCase):
4513 status_int = result.status_int
4514 self.assertEqual(202, status_int)
4515
4516- def test_swap_volume_no_attachment(self):
4517+ def test_swap_volume_with_nonexistent_uri(self):
4518 self.assertRaises(exc.HTTPNotFound, self._test_swap,
4519- self.attachments, FAKE_UUID_C)
4520+ self.attachments, uuid=FAKE_UUID_C)
4521+
4522+ @mock.patch.object(cinder.API, 'get')
4523+ def test_swap_volume_with_nonexistent_dest_in_body(self, mock_update):
4524+ mock_update.side_effect = [
4525+ None, exception.VolumeNotFound(volume_id=FAKE_UUID_C)]
4526+ body = {'volumeAttachment': {'volumeId': FAKE_UUID_C}}
4527+ self.assertRaises(exc.HTTPBadRequest, self._test_swap,
4528+ self.attachments, body=body)
4529
4530 def test_swap_volume_without_volumeId(self):
4531 body = {'volumeAttachment': {'device': '/dev/fake'}}
4532@@ -828,6 +856,14 @@ class BadRequestVolumeTestCaseV21(CommonBadRequestTestCase,
4533 controller_cls = volumes_v21.VolumeController
4534 bad_request = exception.ValidationError
4535
4536+ @mock.patch.object(cinder.API, 'delete',
4537+ side_effect=exception.InvalidInput(reason='vol attach'))
4538+ def test_delete_invalid_status_volume(self, mock_delete):
4539+ req = fakes.HTTPRequest.blank('/v2.1/os-volumes')
4540+ req.method = 'DELETE'
4541+ self.assertRaises(webob.exc.HTTPBadRequest,
4542+ self.controller.delete, req, FAKE_UUID)
4543+
4544
4545 class BadRequestVolumeTestCaseV2(BadRequestVolumeTestCaseV21):
4546 controller_cls = volumes.VolumeController
4547diff --git a/nova/tests/unit/conductor/test_conductor.py b/nova/tests/unit/conductor/test_conductor.py
4548index b89e82f..ed14e1d 100644
4549--- a/nova/tests/unit/conductor/test_conductor.py
4550+++ b/nova/tests/unit/conductor/test_conductor.py
4551@@ -22,6 +22,7 @@ import mock
4552 from mox3 import mox
4553 import oslo_messaging as messaging
4554 from oslo_utils import timeutils
4555+from oslo_versionedobjects import exception as ovo_exc
4556 import six
4557
4558 from nova.compute import flavors
4559@@ -182,6 +183,55 @@ class ConductorTestCase(_BaseTestCase, test.TestCase):
4560 m.return_value.obj_to_primitive.assert_called_once_with(
4561 target_version='1.2', version_manifest=versions)
4562
4563+ def test_object_class_action_versions_old_object(self):
4564+ # Make sure we return older than requested objects unmodified,
4565+ # see bug #1596119.
4566+ @obj_base.NovaObjectRegistry.register
4567+ class TestObject(obj_base.NovaObject):
4568+ VERSION = '1.10'
4569+
4570+ @classmethod
4571+ def foo(cls, context):
4572+ return cls()
4573+
4574+ versions = {
4575+ 'TestObject': '1.10',
4576+ 'OtherObj': '1.0',
4577+ }
4578+ with mock.patch.object(self.conductor_manager,
4579+ '_object_dispatch') as m:
4580+ m.return_value = TestObject()
4581+ m.return_value.VERSION = '1.9'
4582+ m.return_value.obj_to_primitive = mock.MagicMock()
4583+ obj = self.conductor.object_class_action_versions(
4584+ self.context, TestObject.obj_name(), 'foo', versions,
4585+ tuple(), {})
4586+ self.assertFalse(m.return_value.obj_to_primitive.called)
4587+ self.assertEqual('1.9', obj.VERSION)
4588+
4589+ def test_object_class_action_versions_major_version_diff(self):
4590+ @obj_base.NovaObjectRegistry.register
4591+ class TestObject(obj_base.NovaObject):
4592+ VERSION = '2.10'
4593+
4594+ @classmethod
4595+ def foo(cls, context):
4596+ return cls()
4597+
4598+ versions = {
4599+ 'TestObject': '2.10',
4600+ 'OtherObj': '1.0',
4601+ }
4602+ with mock.patch.object(self.conductor_manager,
4603+ '_object_dispatch') as m:
4604+ m.return_value = TestObject()
4605+ m.return_value.VERSION = '1.9'
4606+ self.assertRaises(
4607+ ovo_exc.InvalidTargetVersion,
4608+ self.conductor.object_class_action_versions,
4609+ self.context, TestObject.obj_name(), 'foo', versions,
4610+ tuple(), {})
4611+
4612 def test_reset(self):
4613 with mock.patch.object(objects.Service, 'clear_min_version_cache'
4614 ) as mock_clear_cache:
4615diff --git a/nova/tests/unit/db/test_db_api.py b/nova/tests/unit/db/test_db_api.py
4616index cb50fc9..9e0eda9 100644
4617--- a/nova/tests/unit/db/test_db_api.py
4618+++ b/nova/tests/unit/db/test_db_api.py
4619@@ -3427,6 +3427,10 @@ class ServiceTestCase(test.TestCase, ModelsObjectComparatorMixin):
4620 self._create_service({'version': 3,
4621 'host': 'host2',
4622 'binary': 'compute'})
4623+ self._create_service({'version': 0,
4624+ 'host': 'host0',
4625+ 'binary': 'compute',
4626+ 'deleted': 1})
4627 self.assertEqual(2, db.service_get_minimum_version(self.ctxt,
4628 'compute'))
4629
4630diff --git a/nova/tests/unit/objects/test_pci_device.py b/nova/tests/unit/objects/test_pci_device.py
4631index 4fbe343..8fa906f 100644
4632--- a/nova/tests/unit/objects/test_pci_device.py
4633+++ b/nova/tests/unit/objects/test_pci_device.py
4634@@ -307,6 +307,16 @@ class _TestPciDeviceObject(object):
4635 self.assertIn("other",
4636 update_mock.call_args[0][3]['extra_info'])
4637
4638+ @mock.patch('nova.objects.Service.get_minimum_version')
4639+ @mock.patch('nova.context.get_admin_context')
4640+ def test_should_migrate_checks_correct_services(self, mock_gc, mock_gmv):
4641+ mock_gmv.return_value = 100
4642+ self.assertTrue(objects.PciDevice.should_migrate_data())
4643+ mock_gmv.assert_has_calls([
4644+ mock.call(mock_gc.return_value, 'nova-conductor'),
4645+ mock.call(mock_gc.return_value, 'nova-osapi_compute'),
4646+ ])
4647+
4648 def test_update_numa_node(self):
4649 self.pci_device = pci_device.PciDevice.create(None, dev_dict)
4650 self.assertEqual(0, self.pci_device.numa_node)
4651diff --git a/nova/tests/unit/pci/test_utils.py b/nova/tests/unit/pci/test_utils.py
4652index 109f47e..bd1acba 100644
4653--- a/nova/tests/unit/pci/test_utils.py
4654+++ b/nova/tests/unit/pci/test_utils.py
4655@@ -82,12 +82,16 @@ class GetFunctionByIfnameTestCase(test.NoDBTestCase):
4656 @mock.patch('os.path.isdir', return_value=True)
4657 @mock.patch.object(os, 'readlink')
4658 def test_physical_function(self, mock_readlink, *args):
4659+ ifname = 'eth0'
4660+ totalvf_path = "/sys/class/net/%s/device/%s" % (ifname,
4661+ utils._SRIOV_TOTALVFS)
4662 mock_readlink.return_value = '../../../0000:00:00.1'
4663 with mock.patch.object(
4664- builtins, 'open', mock.mock_open(read_data='4')):
4665+ builtins, 'open', mock.mock_open(read_data='4')) as mock_open:
4666 address, physical_function = utils.get_function_by_ifname('eth0')
4667 self.assertEqual(address, '0000:00:00.1')
4668 self.assertTrue(physical_function)
4669+ mock_open.assert_called_once_with(totalvf_path)
4670
4671 @mock.patch('os.path.isdir', return_value=False)
4672 def test_exception(self, *args):
4673diff --git a/nova/tests/unit/virt/libvirt/test_driver.py b/nova/tests/unit/virt/libvirt/test_driver.py
4674index 0599997..6276f11 100644
4675--- a/nova/tests/unit/virt/libvirt/test_driver.py
4676+++ b/nova/tests/unit/virt/libvirt/test_driver.py
4677@@ -6428,6 +6428,26 @@ class LibvirtConnTestCase(test.NoDBTestCase):
4678 drvr.check_can_live_migrate_destination_cleanup(self.context,
4679 dest_check_data)
4680
4681+ @mock.patch('os.path.exists', return_value=True)
4682+ @mock.patch('os.utime')
4683+ def test_check_shared_storage_test_file_exists(self, mock_utime,
4684+ mock_path_exists):
4685+ tmpfile_path = os.path.join(CONF.instances_path, 'tmp123')
4686+ drvr = libvirt_driver.LibvirtDriver(fake.FakeVirtAPI(), False)
4687+ self.assertTrue(drvr._check_shared_storage_test_file('tmp123'))
4688+ mock_utime.assert_called_once_with(CONF.instances_path, None)
4689+ mock_path_exists.assert_called_once_with(tmpfile_path)
4690+
4691+ @mock.patch('os.path.exists', return_value=False)
4692+ @mock.patch('os.utime')
4693+ def test_check_shared_storage_test_file_does_not_exist(self, mock_utime,
4694+ mock_path_exists):
4695+ tmpfile_path = os.path.join(CONF.instances_path, 'tmp123')
4696+ drvr = libvirt_driver.LibvirtDriver(fake.FakeVirtAPI(), False)
4697+ self.assertFalse(drvr._check_shared_storage_test_file('tmp123'))
4698+ mock_utime.assert_called_once_with(CONF.instances_path, None)
4699+ mock_path_exists.assert_called_once_with(tmpfile_path)
4700+
4701 def _mock_can_live_migrate_source(self, block_migration=False,
4702 is_shared_block_storage=False,
4703 is_shared_instance_path=False,
4704diff --git a/nova/virt/libvirt/driver.py b/nova/virt/libvirt/driver.py
4705index 8c1e27a..78f9c7c 100644
4706--- a/nova/virt/libvirt/driver.py
4707+++ b/nova/virt/libvirt/driver.py
4708@@ -5749,6 +5749,14 @@ class LibvirtDriver(driver.ComputeDriver):
4709
4710 Cannot confirm tmpfile return False.
4711 """
4712+ # NOTE(tpatzig): if instances_path is a shared volume that is
4713+ # under heavy IO (many instances on many compute nodes),
4714+ # then checking the existence of the testfile fails,
4715+ # just because it takes longer until the client refreshes and new
4716+ # content gets visible.
4717+ # os.utime (like touch) on the directory forces the client to refresh.
4718+ os.utime(CONF.instances_path, None)
4719+
4720 tmp_file = os.path.join(CONF.instances_path, filename)
4721 if not os.path.exists(tmp_file):
4722 return False
4723diff --git a/nova/volume/encryptors/cryptsetup.py b/nova/volume/encryptors/cryptsetup.py
4724index 603bc26..bff35a1 100644
4725--- a/nova/volume/encryptors/cryptsetup.py
4726+++ b/nova/volume/encryptors/cryptsetup.py
4727@@ -82,7 +82,7 @@ class CryptsetupEncryptor(base.VolumeEncryptor):
4728 # normal disk or multipath device), exit_code will be 1. In the
4729 # case, we will omit the warning message.
4730 if e.exit_code != 1:
4731- LOG.warning(_LW('cryptsetup status %(dev_name) exited '
4732+ LOG.warning(_LW('cryptsetup status %(dev_name)s exited '
4733 'abnormally (status %(exit_code)s): %(err)s'),
4734 {"dev_name": dev_name, "exit_code": e.exit_code,
4735 "err": e.stderr})
4736diff --git a/releasenotes/notes/bug-1662699-06203e7262e02aa6.yaml b/releasenotes/notes/bug-1662699-06203e7262e02aa6.yaml
4737new file mode 100644
4738index 0000000..94a5ab8
4739--- /dev/null
4740+++ b/releasenotes/notes/bug-1662699-06203e7262e02aa6.yaml
4741@@ -0,0 +1,10 @@
4742+---
4743+fixes:
4744+ - |
4745+ Fixes `bug 1662699`_ which was a regression in the v2.1 API from the
4746+ ``block_device_mapping_v2.boot_index`` validation that was performed in the
4747+ legacy v2 API. With this fix, requests to create a server with
4748+ ``boot_index=None`` will be treated as if ``boot_index`` was not specified,
4749+ which defaults to meaning a non-bootable block device.
4750+
4751+ .. _bug 1662699: https://bugs.launchpad.net/nova/+bug/1662699
4752diff --git a/tools/test-setup.sh b/tools/test-setup.sh
4753new file mode 100755
4754index 0000000..00c765e
4755--- /dev/null
4756+++ b/tools/test-setup.sh
4757@@ -0,0 +1,54 @@
4758+#!/bin/bash -xe
4759+
4760+# This script will be run by OpenStack CI before unit tests are run,
4761+# it sets up the test system as needed.
4762+# Developers should setup their test systems in a similar way.
4763+
4764+# This setup needs to be run as a user that can run sudo.
4765+
4766+# The root password for the MySQL database; pass it in via
4767+# MYSQL_ROOT_PW.
4768+DB_ROOT_PW=${MYSQL_ROOT_PW:-insecure_slave}
4769+
4770+# This user and its password are used by the tests, if you change it,
4771+# your tests might fail.
4772+DB_USER=openstack_citest
4773+DB_PW=openstack_citest
4774+
4775+sudo -H mysqladmin -u root password $DB_ROOT_PW
4776+
4777+# It's best practice to remove anonymous users from the database. If
4778+# an anonymous user exists, then it matches first for connections and
4779+# other connections from that host will not work.
4780+sudo -H mysql -u root -p$DB_ROOT_PW -h localhost -e "
4781+ DELETE FROM mysql.user WHERE User='';
4782+ FLUSH PRIVILEGES;
4783+ GRANT ALL PRIVILEGES ON *.*
4784+ TO '$DB_USER'@'%' identified by '$DB_PW' WITH GRANT OPTION;"
4785+
4786+# Now create our database.
4787+mysql -u $DB_USER -p$DB_PW -h 127.0.0.1 -e "
4788+ SET default_storage_engine=MYISAM;
4789+ DROP DATABASE IF EXISTS openstack_citest;
4790+ CREATE DATABASE openstack_citest CHARACTER SET utf8;"
4791+
4792+# Same for PostgreSQL
4793+
4794+# Setup user
4795+root_roles=$(sudo -H -u postgres psql -t -c "
4796+ SELECT 'HERE' from pg_roles where rolname='$DB_USER'")
4797+if [[ ${root_roles} == *HERE ]];then
4798+ sudo -H -u postgres psql -c "ALTER ROLE $DB_USER WITH SUPERUSER LOGIN PASSWORD '$DB_PW'"
4799+else
4800+ sudo -H -u postgres psql -c "CREATE ROLE $DB_USER WITH SUPERUSER LOGIN PASSWORD '$DB_PW'"
4801+fi
4802+
4803+# Store password for tests
4804+cat << EOF > $HOME/.pgpass
4805+*:*:*:$DB_USER:$DB_PW
4806+EOF
4807+chmod 0600 $HOME/.pgpass
4808+
4809+# Now create our database
4810+psql -h 127.0.0.1 -U $DB_USER -d template1 -c "DROP DATABASE IF EXISTS openstack_citest"
4811+createdb -h 127.0.0.1 -U $DB_USER -l C -T template0 -E utf8 openstack_citest
4812diff --git a/tox.ini b/tox.ini
4813index 41417ff..e890311 100644
4814--- a/tox.ini
4815+++ b/tox.ini
4816@@ -41,6 +41,9 @@ commands =
4817 ostestr --blacklist_file tests-py3.txt
4818
4819 [testenv:functional]
4820+# TODO(melwitt): This can be removed when functional tests can be run
4821+# with python 3.x
4822+basepython = python2.7
4823 usedevelop = True
4824 setenv = VIRTUAL_ENV={envdir}
4825 OS_TEST_PATH=./nova/tests/functional
4826@@ -74,10 +77,6 @@ commands =
4827 coverage html --include='nova/*' --omit='nova/openstack/common/*' -d covhtml -i
4828
4829 [testenv:venv]
4830-# NOTE(jaegerandi): This target does not use constraints because
4831-# upstream infra does not yet support it. Once that's fixed, we can
4832-# drop the install_command.
4833-install_command = pip install -U --force-reinstall {opts} {packages}
4834 commands = {posargs}
4835
4836 [testenv:docs]

Subscribers

People subscribed via source and target branches