nova/nova
Matt Riedemann a9650b3cbf Block deleting compute services with in-progress migrations
This builds on I0bd63b655ad3d3d39af8d15c781ce0a45efc8e3a
which made DELETE /os-services/{service_id} fail with a 409
response if the host has instances on it. This change checks
for in-progress migrations involving the nodes on the host,
either as the source or destination nodes, and returns a 409
error response if any are found.

Failling to do this can lead to orphaned resource providers
in placement and also failing to properly confirm or revert
a pending resize or cold migration.

A release note is included for the (justified) behavior
change in the API. A new microversion should not be required
for this since admins should not have to opt out of broken
behavior.

Conflicts:
      nova/tests/functional/integrated_helpers.py

NOTE(mriedem): The conflict is due to change
Iec61f56c05e06924def814a3a6e09ceb91a15894 which is not in Train.

NOTE(mriedem): services.py had to be updated to add the LOG
variable since change I8403a841f21a624a546ae5f26bb9ba19318ece6a
is not in Train.

Change-Id: I70e06c607045a1c0842f13069e51fef438012a9c
Closes-Bug: #1852610
(cherry picked from commit 92fed02610)
2019-11-15 09:16:16 -05:00
..
api Block deleting compute services with in-progress migrations 2019-11-15 09:16:16 -05:00
cmd Nova object changes for forbidden aggregates request filter 2019-09-09 20:16:32 +00:00
compute Nova compute: add in log exception to help debug failures 2019-11-02 20:53:31 +00:00
conductor Handle get_host_availability_zone error during reschedule 2019-10-02 13:45:58 -04:00
conf Merge "libvirt: Enable driver configuring PMEM namespaces" 2019-09-21 03:40:33 +00:00
console Merge "objects: Remove ConsoleAuthToken.to_dict" 2019-09-06 18:51:31 +00:00
db Remove redundant call to get/create default security group 2019-10-25 17:40:05 +00:00
hacking Add a hacking rule for useless assertions 2019-08-21 14:42:53 +09:00
image [Trivial]Removed unused helper _extract_query_params 2019-08-29 10:12:52 +08:00
ipv6
keymgr
locale Imported Translations from Zanata 2019-11-03 06:51:45 +00:00
network Remove upgrade specific info from user facing exception text 2019-09-24 10:44:46 +02:00
notifications Update api-ref location 2019-07-22 19:17:28 +02:00
objects Fix listing deleted servers with a marker 2019-10-23 14:50:06 -04:00
pci hacking: Resolve W605 (invalid escape sequence) 2019-06-24 14:24:06 -05:00
policies Add server sub-resource topology API 2019-08-30 10:04:56 +08:00
privsep libvirt: Support VM creation with vpmems and vpmems cleanup 2019-09-13 08:50:35 +00:00
scheduler Add support for translating CPU policy extra specs, image meta 2019-09-18 00:21:10 +01:00
servicegroup [Trivial fix]Remove unnecessary slash 2019-05-06 16:23:59 +08:00
tests Block deleting compute services with in-progress migrations 2019-11-15 09:16:16 -05:00
virt libvirt: Ignore volume exceptions during post_live_migration 2019-10-25 11:32:52 +01:00
vnc xvp: Remove use of '_LI' marker 2019-06-19 10:04:45 +01:00
volume Fix exception translation when creating volume 2019-10-11 08:41:18 +00:00
__init__.py Eventlet monkey patching should be as early as possible 2019-03-22 09:27:16 +00:00
availability_zones.py Always pass HostAPI to get_availability_zones 2019-04-26 15:30:48 -04:00
baserpc.py
block_device.py hacking: Resolve W605 (invalid escape sequence) 2019-06-24 14:24:06 -05:00
cache_utils.py
config.py Rename 'nova.common.config' module to 'nova.middleware' 2019-08-16 00:53:03 +01:00
context.py Merge "Move default policy target" 2019-07-27 00:32:20 +00:00
crypto.py
debugger.py
exception.py libvirt: Support VM creation with vpmems and vpmems cleanup 2019-09-13 08:50:35 +00:00
exception_wrapper.py
filters.py filters: Stop handling cells v1 2019-06-12 16:09:46 +01:00
hooks.py
i18n.py
loadables.py
manager.py
middleware.py Rename 'nova.common.config' module to 'nova.middleware' 2019-08-16 00:53:03 +01:00
monkey_patch.py Bump to hacking 1.1.0 2019-04-12 16:23:49 +01:00
policy.py Move default policy target 2019-06-03 16:44:50 +01:00
profiler.py
quota.py Log quota legacy method warning only if counting from placement 2019-06-17 21:31:53 +00:00
rpc.py Remove unnecessary wrapper 2019-05-29 17:14:13 +01:00
safe_utils.py
service.py Remove nova-consoleauth 2019-07-05 15:04:47 +00:00
service_auth.py
test.py Tests: autospecs all the mock.patch usages 2019-08-19 09:43:10 -05:00
utils.py Allow strict_proxies for sdk Connection 2019-08-23 14:14:40 -05:00
version.py
weights.py Per aggregate scheduling weight 2019-01-21 11:48:44 +08:00
wsgi.py