summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* | | | | | Merge "Sync w/ latest openstack common log.py."Jenkins2012-08-041-11/+0
|\ \ \ \ \ \
| * | | | | | Sync w/ latest openstack common log.py.Dan Prince2012-08-011-11/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Includes the following updates for openstack-common's log.py: Remove code to clear basicConfig root log handlers Removes some old Nova specific code to clear out the log handlers from Nova's logging basicConfig. This code is arguably Nova specific and doesn't really belong in openstack-common's generic logging configuration. Additionally, This code was actually removing the root logger used by some command line tools and binaries and hiding log messages that should have otherwise gone to the console. Fixes LP Bug #1029577. Change-Id: Ic6a6862e5bc357846bf3202186c7e24622d3bb87
* | | | | | | Merge "Audit log messages in nova/compute/api.py"Jenkins2012-08-041-9/+12
|\ \ \ \ \ \ \ | |_|/ / / / / |/| | | | | |
| * | | | | | Audit log messages in nova/compute/api.pyMichael Still2012-08-041-9/+12
| | |/ / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | To include instance whereever possible. Change-Id: Ic3b86eed17ebee90766af9e2c3c74f33c7a09432
* | | | | | Merge "fix unmounting of LXC containers"Jenkins2012-08-047-26/+146
|\ \ \ \ \ \ | |_|_|_|/ / |/| | | | |
| * | | | | fix unmounting of LXC containersPádraig Brady2012-08-027-26/+146
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There were two issues here. 1. There was a global object stored for all instances, thus the last mounted instance was always unmounted. 2. Even if there was only a single LXC instance in use, the global object would be lost on restart of Nova. Therefore we reset the internal state for the mount object, by passing in the mount point to destroy_container(), and querying the device in use for that mount point. Fixes bug: 971621 Change-Id: I5442442f00d93f5e8b82f492d62918419db5cd3b
* | | | | | Merge "Partially revert "Remove unused scheduler functions""Jenkins2012-08-041-0/+16
|\ \ \ \ \ \
| * | | | | | Partially revert "Remove unused scheduler functions"Russell Bryant2012-07-311-0/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This partially reverts commit 2aaa3d2860eed7574c5df64a8ceeb8a6adf23460. The problem pointed out by this bug is that these changes introduce a non-backwards compatibile change to the schedulre rpc API. There are a couple of acceptable ways to deal with this: 1) Leave most of the code and only remove the client side. This means that a message sent from an earlier version will still work. This is the ideal situation for almost *all* changes to rpc APIs. We have to make a habit of this to eventually be able to support rolling upgrades. 2) Leave the manager methods, but simply have them raise an exception. This is a bit better than removing the method because the error can be made more explicit and obvious. Otherwise, the operator will get "no such method" rpc exceptions, which will seem a bit more bizzare. An example of when this option makes sense is commit cac332c39645286a11c009094a86f62d02752183. This patch refactored the live migration code is such a significant way that making it backwards compatibile seemed rather difficult to do. The old rpc methods stuck around but just raise an exception. The potential failure is just that live migration would fail, but the exception makes it obvious that an upgrade must be completed for live migration to work. The current patch implements #2 in the case of get_service_capabilities, since it hasn't been used since pre-essex. Approach #2 is taken for get_host_list() as well. It was used until fairly recently, but was broken, including being broken in Essex. The fix that went into Essex for this makes it no longer use RPC. Fix bug 1029262. Change-Id: I74c7d2a3e88b3a4f114e7da62c56f0481ee64a64
* | | | | | | Merge "Fix broken pep8 exclude processing."Jenkins2012-08-042-1/+53
|\ \ \ \ \ \ \
| * | | | | | | Fix broken pep8 exclude processing.Monty Taylor2012-08-032-1/+53
| | |_|_|_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | First of all, our pep8 exclude was excluding openstack, to trap for not doing pep8 checks on openstack/common, which comes from elsewhere. But, pep8 strips filenames down to basename when doing exclude checks on them, which makes no sense. To fix this, grab the two functions from pep8, fix them, and monkeypatch them from within hacking.py. Patch has been submitted upstream as: https://github.com/jcrocholl/pep8/pull/111 Also, changed the exclude to catch just openstack/common. Change-Id: If0b18ae828e74203f84a8b6f8b4ba0100b3bbc59
* | | | | | | Merge "Remove unused variables"Jenkins2012-08-042-6/+1
|\ \ \ \ \ \ \ | |_|_|_|/ / / |/| | | | | |
| * | | | | | Remove unused variablesYun Mao2012-08-032-6/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Change-Id: I137c9522257e8b5fcb13c1e9fe6cb4e0c442e33c
* | | | | | | Merge "Rename _self to self according to Python convention"Jenkins2012-08-031-1/+1
|\ \ \ \ \ \ \
| * | | | | | | Rename _self to self according to Python conventionYun Mao2012-08-031-1/+1
| |/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If self is never used, it should probably be defined as a classmethod or a staticmethod, instead of _self. Use "self" for now to stick to python convention, and leave proper refactor to other patches. Change-Id: I71de42ffd3e83c57772b6490c52f24bcd9d1f1ea
* / / / / / / import missing module timeYun Mao2012-08-031-0/+1
|/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | time is used in line 2450 but is never imported Change-Id: I8b5690c5562768050416d0921cbae7dd0af769c9
* / / / / / Handle InstanceNotFound in libvirt list_instances.Dan Prince2012-08-032-3/+27
|/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Updates the libvirt driver so that InstanceNotFound is handled within the list_instances function. This can occur if an instance is deleted while the list_instances function is processing. Fixes LP Bug #1032741. Change-Id: I97c9533f8b37957e71237c610ac360fbf9f57b9a
* | | | | Merge "Fix regression with nova-manage floating list"Jenkins2012-08-031-1/+1
|\ \ \ \ \
| * | | | | Fix regression with nova-manage floating listRay Sun2012-08-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes bug #1032177 If a floating IP is not associated with an instance, nova-manage fails with: local variable 'instance_uuid' referenced before assignment This is a regression introduced by commit fc82c6d. Simply rename the local variable to instance_uuid. Change-Id: Ia6df23c945f0815c65bcfd2f49e8ba3225d03d7f
* | | | | | Merge "Simple refactor of some db api tests."Jenkins2012-08-021-14/+15
|\ \ \ \ \ \
| * | | | | | Simple refactor of some db api tests.Alex Meade2012-08-021-14/+15
| | |_|/ / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A few tests were using context.elevated instead of just passing the correct project id to the instance_create function. Change-Id: Ib54d079cbad823abd85dcca9e5cd813887169fb0
* | | | | | Merge "Check instance lock in compute/api"Jenkins2012-08-027-15/+82
|\ \ \ \ \ \
| * | | | | | Check instance lock in compute/apiDan Smith2012-08-027-15/+82
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This adds a check for the instance lock in compute/api.py, which: 1. Helps avoid the need to call into the manager just to be stopped by the lock there 2. Returns a failure to the user right away when an operation cannot be completed due to the lock 3. Avoids the potential for task_state to get into an unhappy state because a user unknowingly attempts an action whilst an instance is locked 4. Avoids the manager from having to re-do the lock check by stuffing a flag into RequestContext when the check has already been done by api.py Various tests needed to be fixed up in order to pass fake instances with the locked attribute. We could make the decorator ignore instances without it, but I think it's more explicit to push that requirement into the tests. This fixes bug 872541 Change-Id: I1127e31d86a061a93a64ee1eb4a4d900d8bf49b5
* | | | | | | Merge "Update usage of 'ip' to handle more return codes"Jenkins2012-08-021-7/+10
|\ \ \ \ \ \ \ | |_|_|/ / / / |/| | | | | |
| * | | | | | Update usage of 'ip' to handle more return codesChuck Short2012-08-021-7/+10
| |/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make sure that ip raises an exception.ProcessExecutionError unless 'ip' exits with a 0, 2, or 254. 0 = command executed correctly 2/254 = command has already been executed. Change-Id: I55dd63ca7fc22bc133ab5fe722df4141c332a819 Signed-off-by: Chuck Short <chuck.short@canonical.com>
* | / / / / Remove unused importsJoe Gordon2012-08-0214-29/+0
| |/ / / / |/| | | | | | | | | | | | | | Change-Id: I9e307cd5bab2542f43948c96767811a769814341
* | | | | Use function registration for policy checksKevin L. Mitchell2012-08-022-47/+107
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The original policy framework allowed new policy checks to be created through inheritance. This is somewhat clunky and unnecessary in Python. This change refactors policy.py to allow new policy checks to be registered using an @register() decorator. One consequence is that HttpBrain is deprecated. Care has been taken to ensure backwards compatibility; deprecation warnings will be emitted for uses of HttpBrain or the inheritance- based checks. (Pull-up from openstack-common, with deprecation of HttpBrain.) Change-Id: Ia9a6039a82fe4ebfa9b18e5eb93c21fffee90f09
* | | | Merge "Deprecate root_helper in favor of rootwrap_config"Jenkins2012-08-023-4/+18
|\ \ \ \
| * | | | Deprecate root_helper in favor of rootwrap_configThierry Carrez2012-08-013-4/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Mark the root_helper option deprecated and introduce usage of the rootwrap_config option instead. The root_helper option will still fully be supported in Folsom, but will be removed in Grizzly. Transition notes: you should replace: root_helper=sudo nova-rootwrap /etc/nova/rootwrap.conf by: rootwrap_config=/etc/nova/rootwrap.conf Implements bp deprecate-root-helper Change-Id: I8dfc94e9b91f7ffc82d393b345f09409da347e78
* | | | | Merge "Clarify TooManyInstances exception message."Jenkins2012-08-024-27/+46
|\ \ \ \ \
| * | | | | Clarify TooManyInstances exception message.Eoghan Glynn2012-08-014-27/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes LP 1031737. Previously the message indicated the number of instances requested and an incorrect indication of the headroom, in the case where ram or cores was the resource gone over-quota (as opposed to the number of raw instances). Change-Id: I9f7f3203f0e644ba533940a87e496bfd09da0460
* | | | | | Fix a comment typo in db apiShane Wang2012-08-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix the comment for instance_type_get_by_flavor_id(). Change-Id: I6160c6d8e7a0160c01362f9a34550740600f8bc9 Signed-off-by: Shane Wang <shane.wang@intel.com>
* | | | | | Merge "Pass a full instance to rotate_backups()."Jenkins2012-08-021-9/+9
|\ \ \ \ \ \
| * | | | | | Pass a full instance to rotate_backups().Russell Bryant2012-08-011-9/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch renames rotate_backups() to _rotate_backups(), as this method has never been used over rpc since it was first introduced in 75a87df739effe840e6cb39c976002e99b49c796. The name change makes it more clear that it's a private method. The change also makes it so this method takes an instance dict instead of just the instance_uuid as an argument. This is mainly for consistency with the rest of this file, where things are moving toward passing the full instance dict around instead to avoid any potential need for db access. In passing, this also fixes up some uses of instance_uuid in snapshot_instance() where instance_uuid is most likely None. Part of blueprint no-db-messaging. Change-Id: I275f71384e77eb038aa1140bbfde108b91cd2f83
* | | | | | | Merge "Remove agent_update from the compute manager."Jenkins2012-08-025-60/+0
|\| | | | | |
| * | | | | | Remove agent_update from the compute manager.Russell Bryant2012-08-015-60/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It appears that this method of the compute method has never been used since it was added in fa0b64b500f3a196044459ba4bf8ed0dea214e92, so just remove it. It was also added to the virt driver API, but the only use is internally to the xenapi driver, so leave it as an internal thing to that driver only. Part of blueprint no-db-messaging. Change-Id: Idb2c823421e714fa364affbbb80d28175b9b5b4e
* | | | | | | Merge "Move tests.test_compute_utils into tests.compute."Jenkins2012-08-021-0/+0
|\| | | | | |
| * | | | | | Move tests.test_compute_utils into tests.compute.Russell Bryant2012-08-011-0/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Move the test_compute_utils module into nova.tests.compute to be with other compute related unit tests. Change-Id: I0956a18279caa15504448ddca7ffe7f4113f1f65
* | | | | | | Audit log messages in nova/compute/manager.pyMichael Still2012-08-021-8/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | To include instance whereever possible. This resolves bug 977978. Change-Id: Ic113489c464458f9b1859a21942b1bbe203698bd
* | | | | | | XenAPI: Add script to destroy cached images.Rick Harris2012-08-012-12/+161
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Operations will want the ability to clear out cached images when disk-space becomes an issue. This script allows ops to clear out all cached images or just cached images that aren't in current use. Change-Id: If87bd10ef3f893c416d2f0615358ba65aef17a2d
* | | | | | | Merge "Don't pass kernel args to Xen HVM instances"Jenkins2012-08-012-1/+10
|\ \ \ \ \ \ \
| * | | | | | | Don't pass kernel args to Xen HVM instancesJim Fehlig2012-08-012-1/+10
| | |_|_|_|/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The refactoring in commit c0f67877 missed setting guest.os_root for Xen PV instances only. If set for Xen HVM instances, the xen tools will invoke qemu-dm with '-append root=/dev/xxx'. qemu-dm promptly failes with '-append only allowed with -kernel option'. Change-Id: Iba8054b728e28463fb221d44417b1ddba323f596
* | | | | | | Merge "Fix typo in db test."Jenkins2012-08-011-2/+2
|\ \ \ \ \ \ \
| * | | | | | | Fix typo in db test.Alex Meade2012-08-011-2/+2
| |/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | test_instance_get_all_by_filters was doing an assertTrue on two values when an assertEquals was intended. Change-Id: I335f873a27d1777309d6fb850d7f259b87ebcb0d
* | | | | | | Merge "Avoid using logging in signal handler"Jenkins2012-08-011-16/+35
|\ \ \ \ \ \ \
| * | | | | | | Avoid using logging in signal handlerJohannes Erdfelt2012-08-011-16/+35
| |/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes bug 1029727 In some cases, logging can grab locks and thusly attempt to reschedule, which will fail in signal handlers. This patch simplifies the signal handlers for multi-process support to only reset the signal handlers and then raise an exception. This will move all logging and other cleanup out of the signal handler and into safer places. Change-Id: I0878adf6ef5c54e577ab2ea39e2ff9845e0e9191
* | | | | | | Merge "Fix issue with filtering where a value is unicode."Jenkins2012-08-012-1/+10
|\ \ \ \ \ \ \
| * | | | | | | Fix issue with filtering where a value is unicode.Alex Meade2012-08-012-1/+10
| |/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes an issue where if an attribute, such as name, for an instance contains unicode and doing a list of instances filtering by that attribute causes a 500 error. fixes bug 1031846 Change-Id: I2e9e9a36194dad1326b0d7257308576f8553ef06
* | | | | | | Merge "Fix traceback when using s3."Jenkins2012-08-012-3/+3
|\ \ \ \ \ \ \
| * | | | | | | Fix traceback when using s3.Chuck Short2012-08-012-3/+3
| |/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix a regression that causes tracebacks in s3 Traceback (most recent call last): File "/opt/stack/nova/nova/image/s3.py", line 294, in delayed_create _update_image_state(context, image_uuid, 'downloading') File "/opt/stack/nova/nova/image/s3.py", line 286, in _update_image_state headers) TypeError: update() takes at most 5 arguments (6 given) This is due to 6e4539f397bfc5dbf9ec88ddc3968621815d576b Fixes LP: #1031867 Change-Id: I6cf786999c623c0ca780a173dcba49354207e9c3 Signed-off-by: Chuck Short <chuck.short@canonical.com>
* | | | | | | Merge "Fix failed iscsi tgt delete errors with new tgtadm"Jenkins2012-08-012-6/+15
|\ \ \ \ \ \ \