We are tickled pink to announce the release of: nova 21.0.0: Cloud computing fabric controller This release is part of the ussuri release series. The source is available from: https://opendev.org/openstack/nova Download the package from: https://tarballs.openstack.org/nova/ Please report issues through: https://bugs.launchpad.net/nova/+bugs For more details, please see below. 21.0.0 ^^^^^^ Upgrade Notes * Nova policies implemented the "scope_type" and new defaults provided by keystone. Old defaults are deprecated and still work if rules are not overridden in the policy file. If you don't override any policies at all, then you don't need to do anything different until the W release when old deprecated rules are removed and tokens need to be scoped to work with new defaults and scope of policies. For migration to new policies you can refer to this document (https://docs.openstack.org/nova/latest/configuration/policy- concepts.html#migration-plan). If you are overwriting the policy rules (all or some of them) in the policy file with new default values or any new value that requires scoped tokens, then non-scoped tokens will not work. Also if you generate the policy file with 'oslopolicy-sample-generator' json format or any other tool, you will get rules defaulted in the new format, which examines the token scope. Unless you turn on "oslo_policy.enforce_scope", scope-checking rules will fail. Thus, be sure to enable "oslo_policy.enforce_scope" and educate (https://docs.openstack.org/nova/latest/configuration/policy- concepts.html) end users on how to request scoped tokens from Keystone, or use a pre-existing sample config file from the Train release until you are ready to migrate to scoped policies. Another way is to generate the policy file in yaml format as described here (https://docs.openstack.org/oslo.policy/latest/cli/index.html #oslopolicy-policy-generator) and update the policy.yaml location in "oslo_policy.policy_file". For more background about the possible problem, check this bug (https://bugs.launchpad.net/nova/+bug/1875418). A upgrade check has been added to the "nova-status upgrade check" command for this. Changes in nova 20.0.0.0rc1..21.0.0 ----------------------------------- dd3cc59ccf Add nova-status upgrade check and reno for policy new defaults f284b264b9 use more distinct link references in release notes db0ea2387a zuul: Switch to the Zuulv3 grenade job ccd9676224 Imported Translations from Zanata 33aa12acc1 Update TOX_CONSTRAINTS_FILE for stable/ussuri e121a5900b Update .gitreview for stable/ussuri 53092942fd FUP: Amend ussuri prelude to add docs for policy concepts af21183082 Add docs and releasenotes for BP policy-defaults-refresh 66e67a0f4a Ussuri 21.0.0 prelude section 8466f13ce6 Revert "Temporarily skip TestNovaMigrationsMySQL" 30fcb2ddfd docs: Add stable device rescue docs d2e0afc1f7 Allocate mdevs when resizing or reverting resize 9669c69da5 Add new default roles in remaining servers policies 15a4651e90 Introduce scope_types in remaining servers Policies 95c74a26d4 Add test coverage of existing remaining servers policies 76d3457bd9 Add new default roles in servers attributes policies 75f531d748 Introduce scope_types in servers attributes Policies 3e06135bec images: Make JSON the default output format of calls to qemu-img info 125c60b1f3 Fix follow up comments on policy work e69acacf45 fup: Fix [workarounds]/rbd_volume_local_attach config docs c7bfc323bc Fix server actions to be system and project scoped a2d25f42c0 Use oslo policy flag to disable default change warning instead of all fd6537e328 Add test coverage of existing server attributes policies c3fcc31d5f Add new default roles in servers policies b42eddd3e9 Introduce scope_types in servers Policies f0c81898e9 Add missing white spaces between words in log messages b00f70a281 Add test coverage of existing server policies 2a4a716209 Fix servers policy for admin_or_owner c375b541a5 Pass the actual target in flavor access policy 1476367e09 Pass the actual target in quota class policy b32860b773 Add new default roles in quota class policies 9665abcee8 Update compute rpc version alias for ussuri 9b3bc4817e Add new default roles in server group policies 20e1143a01 Pass the actual target in flavor extra specs policy 6773ee53f1 Add new default roles in flavor extra specs policies 129f965d11 Introduce scope_types in flavor extra spec policy f7d094c806 Add test coverage of existing flavor extra spec policies b5376e95ba Add new default roles in quota sets policies b042c43fba Introduce scope_types in quota set Policies d0c970d6c6 Add test coverage of existing quota sets policies c8d6767cf8 fix scsi disk unit number of the attaching volume when cdrom bus is scsi fd92f836f3 Use placement stable version for functional job b737320ee7 doc: mark the max microversion for ussuri 2e299a6e72 doc: Fix term mismatch warnings in glossary d0137a94a6 Pass the actual target in server external events policy 82303e0561 Pass the actual target in server group policy 3fc5c250e0 Introduce scope_types in quota class Policies 205f9cb1ce Add test coverage of existing quota class policies 7b196d03bd Add new default roles in server external events policies 69fd11dd1d Pass the target in os-services APIs policy a8a8d06b54 Add new default roles in os-evacuate policies 580eedbe2d Pass allocations to virt drivers when resizing 9ca505700a [Trivial] FUP: addressed comments in support non-admin filter instances 7d204a267a Pass the actual target in keypairs policy 66bfb27b1d Add new default roles in keypairs policies f4dcce2743 Introduce scope_types in keypairs d58bd50807 Add test coverage of existing keypairs policies cd470539ed Add new default roles in shelve server policies 9b8da0db15 Introduce scope_types in shelve server 276775bcb2 Add test coverage of existing shelve policies a18dbb5670 libvirt: Change UEFI check to handle AArch64 better 9dcc0941f1 Functional test with pGPUs 5b5cbc64f9 Support different vGPU types per pGPU addd6cadda libvirt: Calculate disk_over_committed for raw instances b2d48d440a fup: Add missing docstrings from get_rescue_device|bus diskinfo funcs 316fef22c6 Temporarily skip TestNovaMigrationsMySQL 9b15f347d5 api: Allow custom traits 7970deddd7 fup: Remove the use of the term `unstable rescue` INFO logs f1d82a1b06 fup: Combine SUPPORTED_DEVICE_BUS and SUPPORTED_STORAGE_BUSES b3e9a1d555 libvirt: Break up get_disk_mapping within blockinfo 361ee2c693 libvirt: Support boot from volume stable device instance rescue 581b2694a5 compute: Extract _get_bdm_image_metadata into nova.utils 24106290e6 api: Introduce microverion 2.87 allowing boot from volume rescue 5b6f44efff compute: Report COMPUTE_RESCUE_BFV and check during rescue 035315b05b libvirt: Add support for stable device rescue d6e47ee0c3 virt: Provide block_device_info during rescue 9996873d8b Pass the actual target in os-aggregates policy 92ddc0ca98 Add new default roles in os-aggregates policies 59fb0c52cc Pass the actual target in os-console-auth-tokens policy 3009bc8559 Add new default roles in os-console-auth-tokens policies 2a11f9598f Add new default roles in tenant tenant usage policies efc945152d FUP: add missing test for PUT volume attachments API 941559042f Reset the cell cache for database access in Service 189e818c26 Add new default roles in server password policies 4e30693727 Follow-up for flavor-extra-spec-validators series 63e30e022d docs: Add documentation for flavor extra specs d8e9daafe8 api: Add microversion for extra spec validation c87b75e008 Drop concept of '?validation' parameter 1b606da3f1 api: Add support for new cyborg extra specs 58784943f7 api: Add framework for extra spec validation 98fbff8b4c Convert delete_on_termination from string to boolean fcf5863662 Separate update and swap volume policies 26a02a7a98 Introduce scope_types in server topology 4987e46b4c Provide the parent pGPU when creating a new vGPU 4cc619acd7 Add new default roles in server topology policies 8d2ad62dc1 Add test coverage of existing server topology policies e755431017 fup: Add removal TODOs for disable_native_luksv1 and rbd_volume_local_attach 4bd5af66b5 Support live migration with vpmem 990a26ef1f partial support for live migration with specific resources 88e399c98b Correct server topology policy check_str e4e97e23c1 Correct server shelve policy check_str e8c47191b6 Add new default roles in server tags policies b216cffd15 Introduce scope_types in server tags policy d72fb451dd Add test coverage of existing server tags policies 9f5948bef8 Fix server tags policy to be admin_or_owner 7c7a25aa1e workarounds: Add option to locally attach RBD volumes on compute hosts dbb58e964a workarounds: Add option to disable native LUKSv1 decryption by QEMU f1c519eb19 Fix new context comparison workaround in base tests class 5b0d41a8e1 Disable the policy warning temporary e4dbf1564a Pass the actual target in os-flavor-manage policy 35979b3ce0 Add new default roles in os-flavor_manage policies c1b78934b5 Introduce scope_types in os-flavor-manage 6d9dbddeb4 Pass the actual target in server migration policy bc9a97bb2a Add new default roles in server migration policies 02d4adae71 Introduce scope_types in server migration d4ebedf8fe Add test coverage of existing server migrations policies d52b1278bf Add test coverage of existing flavor_manage policies acb8bb2436 Introduce scope_types in simple tenant usage 299832cb89 Add new default roles in suspend server policies a9fa083dac Introduce scope_types in suspend server e01c63a909 Add test coverage of existing suspend server policies 11dc801494 Fix resume server policy to be admin_or_owner bf7d56c748 Add test coverage of existing simple tenant usage policies c7f1759ef0 Introduce scope_types in server password policy e5b80e2dd3 Add test coverage of existing server password policies 59d5b0bcc5 Add new default roles in server metadata policies 7d429a985c Introduce scope_types in server metadata e2a2fd0e37 Add test coverage of existing server metadata policies e097dbdbb8 Fix server metadata policy to be admin_or_owner 00d68257bc Fix server password policy to be admin_or_owner 0a0885dac9 Add new default roles in security group policies 1e907602e3 Allow versioned discovery unauthenticated 49a9f45644 Repro bug 1845530: versioned discovery is authed a85e6e07cf Stabilize functional tests 0a795a3b64 Add release notes for Cyborg-Nova integration. e18cd136dc Introduce scope_types in server group policy f03267e50c Add test coverage of existing server group policies 85fca8e94c Introduce scope_types in server external events d1084c5f86 Pass the actual target in limits policy 8685b6da3e Add new default roles in limits policies f691c84f31 Introduce scope_types in limits policy 8c73a7698b Add test coverage of existing server external events policies 5112e1687f Introduce scope_types in security groups policy f365955f9b Add test coverage of existing security groups policies 0917bea7ca Correct security groups policy check_str 10c0a44cff Pass the actual target in server diagnostics policy bc9fe199a7 Add test coverage of existing limits policies 1a39ed9005 Support for nova-manage placement heal_allocations --cell 733d4133df Allow PUT volume attachments API to modify delete_on_termination 0639f96cdb Fix assertEqual param order in Accelerator tests f69951fd25 Add new default roles in server diagnostics policies c26fc5da04 Introduce scope_types in server diagnostics 12b0284b6c Add test coverage of existing server diagnostics policies 1c45a2f435 Add new default roles in remote console policies c15ffc2ee2 Combine the limits policies in single place bd9bea5690 libvirt: Remove QEMU_VERSION_REQ_SHARED dce9bc03c4 images: Remove Libvirt specific configurable use from qemu_img_info b1b0f1be18 libvirt: Always provide the size in bytes when calling virDomainBlockResize 236483285d Add new default roles in rescue server policies aefea9218e Introduce scope_types in rescue server policy e3ccd91c3c Add test coverage of existing rescue policies ade96c0a1e Introduce scope_types in remote consoles policy fb1dd345a9 Add test coverage of existing remote console policies b4e700e592 Pass the actual target in unlock override policy c71cbae6e0 Pass the actual target in migrate server policy 0605980b4e Add new default roles in migrate server policies 6c6d7e3dc2 Introduce scope_types in migrate server df216de6d9 Add info about affinity requests to the troubleshooting doc fa367c13eb Add new default roles in lock server policies a4f0887e8d Pass the actual target in migrations policy 2608e00ce0 Add new default roles in migrations policies ad554bb951 Add new default roles in pause server policies 98c2c311ad Introduce scope_types in pause server policy e03f8a115d Add test coverage of existing pause server policies ba52a32a13 Add test coverage of existing lock server policies ca49e46c4f Add cyborg tempest job. 89dbd08976 Block unsupported instance operations with accelerators. c433b1df42 Bump compute rpcapi version and reduce Cyborg calls. cd0b96176a Fix unpause server policy to be admin_or_owner a567cf79ec Introduce scope_types in list migrations bdac1682b9 Add test coverage of existing migrations policies 9d98d8b1a4 Add test coverage of existing migrate server policies 4d37ffc111 Correct limits policy check_str 1d5fff5b51 Pass the actual target in os-hypervisors policy 258e38bd71 Introduce scope_types in os-hypervisors 1a41597b0c Add test coverage of existing hypervisors policies 4af5f17205 Pass the actual target in os-agents policy 1fbaff1770 Add new default roles in os-hypervisors policies 183aff3225 Add new default roles in os-agents policies 472a9d4503 Fix unlock server policy to be admin_or_owner 66df3a8fef Pass the actual target in os-instance-usage-audit-log policy dd2b748e58 Add new default roles in os-instance-usage-audit-log policies 35ec5a0bd1 FUP for Add a placement audit command 59156bdf01 Add instance actions v284 samples test f832b9e305 Add new default roles in os-ips policies aceb919124 Introduce scope_types in os-ips c3a3d30677 Add test coverage of existing ips policies 58701be615 Fix os-ips policy to be admin_or_owner f002274c6a Enable and use COMPUTE_ACCELERATORS trait. 8337bee4b5 Expose instance action event details out of the API 5d4f82a15c Add default cpu model for AArch64 9f773b7773 Introduce scope_types in os-instance-usage-audit-log fda60b873f Add test coverage of existing instance usage log policies fafbc182f9 libvirt: Use virDomainBlockCopy to swap volumes when using -blockdev 612c36034b [Community goal] Update contributor documentation 536d42d807 Enable start/stop of instances with accelerators. b5527c07fb Enable hard/soft reboot with accelerators. a20aca7f5e Delete ARQs for an instance when the instance is deleted. d1c4f13d7c Add transform_image_metadata request filter 03750fa649 libvirt: Use domain capabilities to get supported device models 4ba00c803b tests: work around malformed serial XML ee05cd8b9e func tests: move _run_periodics() into base class 409cac37c9 [Trivial] fixing some nits in instance actions policy tests 90032a7e01 libvirt: Remove VIR_DOMAIN_BLOCK_REBASE_RELATIVE flag check faeb39e02d Compose accelerator PCI devices into domain XML in libvirt driver. 1ff60fa52d Pass accelerator requests to each virt driver from compute manager. cc630b4eb6 Create and bind Cyborg ARQs. 0c52730f6a Add Cyborg device profile groups to request spec. c071741d56 ksa auth conf and client for Cyborg access 1e16b3184d nova-live-migration: Only stop n-cpu and q-agt during evacuation testing a81d27beba Store instance action event exc_val fault details a9346e6033 Make serialize_args handle exception messages safely d10ed8e75b libvirt: Fix unit test error block info on non x86 architecture 0e34ed9733 Add config option for neutron client retries b097959c1c nova-live-migration: Ensure subnode is fenced during evacuation testing c498544215 Add new default roles in os-instance-actions policies 51abb44ee7 Add new default roles in os-flavor-access policies 24113ba015 Merge qos related renos for Ussuri 993d02573f Add service version check for evacuate with qos 91c354a723 Add service version check for live migrate with qos a4c3260f56 Enable unshelve with qos ports 94c7e7ad43 Support unshelve with qos ports a2f30f9d7c Bump python-subunit minimum to 1.4.0 741c0f60bd Introduce scope_types in os-flavor-access 3393d99820 Add test coverage of existing flavor_access policies 0476cc8e6a Switching new default roles in os-volumes-attachments policies db93b704ce bug-fix: Reject live migration with vpmem 1c0479db09 Refine and introduce correct parameters for test_get_guest_config_numa_host_instance_topo_cpu_pinning eefe3ec2ee Ensures that COMPUTE_RESOURCE_SEMAPHORE usage is fair 02d79c5921 Follow-ups for host_status:unknown-only policy rule 1dfb72e048 Fix intermittently failing regression case e23c3c2c8d nova-live-migration: Wait for n-cpu services to come up after configuring Ceph a486ee6272 libvirt: Use oslo.utils >= 4.1.0 to fetch format-specific image data 961df12393 libvirt: Correctly resize encrypted LUKSv1 volumes 7f12c785bc virt: Pass request context to extend_volume 28f3e0070a images: Allow the output format of qemu-img info to be controlled 03d6eb500f images: Move qemu-img info calls into privsep 4018d6fb71 Non-Admin user can filter their instances by more filters 24b6fb1591 Cleanup test for system reader and reader_or_owner rules 65f4fc2fd3 vif: Remove dead code 2092c3e714 Run sdk functional tests on nova changes d98d728285 Deprecate the vmwareapi driver 1ed9f9dac5 Use fair locks in resource tracker 8defe34e28 trivial: Use 'from foo import bar' 6c3e8bc48e libvirt: don't log error if guest gone during interface detach 88485d1f69 [Trivial] Fix code comment of admin password tests 1ad2f558c5 nit: Fix NOTE error of fatal=False 7145100ee4 Lowercase ironic driver hash ring and ignore case in cache 01948df1a0 Add new default roles in os-atttach-inerfaces policies f2a438aa9c trivial: Rename directory for os-keypairs samples f31efe0a0e Fix os-keypairs pagination links f0887e9964 Introduce scope_types in os-instance-action policy 2e70a1717f Validate id as integer for os-aggregates ac68939cc5 Introduce scope_types in os-aggregates policy c80cc8926b Introduce scope_types in os-volumes-attachments policy a7d3e3a020 Add test coverage of existing os-volumes-attachments policies 763d220504 Fix os-volumes-attachments policy to be admin_or_owner 8dada6d0f6 Catch exception when use invalid architecture of image 4a1afcd3ce Introduce scope_types in os-create-backup b6692ee48a Add test coverage of existing create_backup policies 30bcb43ca5 Fix os-create-backup policy to be admin_or_owner 5b97df7237 Introduce scope_types in os-console-output b0d5357b29 Add test coverage of existing console_output policies 3a93aa8905 Introduce scope_types in os-deferred_delete 608e063c63 Add a tests to check when legacy access is removed 9bcdd05f0d Add new default roles in os-admin-password policies f794f9d6d0 Introduce scope_types in os-admin-password 2f11a5a0a9 Add test coverage of existing os-instance-actions policies 3903b91676 Correct the actual target in os-instance-actions policy abd67b9e54 Add new default roles in os-create-backup policies cae41d68cf Add new default roles in os-console-output policies 83063ef468 Add new default roles in os-deferred_delete policies 036af931c9 Fix os-console-output policy to be admin_or_owner f2d088b04e Stop using PlacementDirect 6cfc912ea5 Introduce scope_types in os-attach-interfaces 76c23785b1 Add test coverage of existing attach_interfaces policies 8e2d0333d9 Introduce scope_types in os-console-auth-tokens 91973ec26c Remove oslo_db.sqlalchemy.compat reference 649236bbb1 libvirt: Remove native LUKS compat code ca3e14319b hyper-v: update support matrix cbffac7df1 functional: Avoid race and fix use of self.api within test_bug_1831771 8eeb8663b2 Add test coverage of existing deferred_delete policies f83c591e30 Fix os-os-deferred-delete policy to be admin_or_owner 55e16ea11f Remove old policy enforcement in attach_interfaces c5bf8b230f Introduce scope_types in os-agents policy b055b5094e Add test coverage of existing os-console-auth-tokens policies 4892607740 Pass the actual target in os-availability-zone policy b6a310000e Ensure we pass a target in admin actions 6dd73d191a Fix two test cases that use side effects in comprehensions fd1f464781 Add new default roles in Admin Action API policies 7a5cc9b7b3 Pass the actual target in os-assisted_volume_snapshots policy b017c22a84 Add new default roles in os-assisted_volume_snapshots policies 3b729c448e Introduce scope_types in os-assisted_volume_snapshots policy 3fd641d9ac Add test coverage of existing os-assisted_volume_snapshots policies 728f2b215e Fix os-attach-interfaces policy to be admin_or_owner 0068bee2d7 Add test coverage of existing os-agents policies c6365f1b55 Define Cyborg ARQ binding notification event. 320429efb5 Fix H702 pep8 error with latest hacking 0cfe9c81e3 libvirt: Provide the backing file format when creating qcow2 disks b3e14931d6 Unplug VIFs as part of cleanup of networks a5506b7d4c Name Enums f3731b3e15 Remove unnecessary parentheses 10434bd229 Functional test for UnexpectedDeletingTaskStateError f35930eef8 Avoid allocation leak when deleting instance stuck in BUILD b68033ecc9 Fix hypervisors paginted collection_name. 80775adb5f Enforce os-traits/SUPPORTED_STORAGE_BUSES sync 6336162585 libvirt: Report storage bus traits 298054e640 trivial: Update '_get_foo_traits' docstrings dcac6825c5 Follow-up: Add delete_on_termination to volume-attach API 9ae4d9274e libvirt: Check the guest support UEFI 42f42a396c Avoid PlacementFixture silently swallowing kwargs 9009d56d21 trivial: Use recognized extra specs in tests fe7655abe2 Use tempest-full-py3 as base job fa5e1b556f docs: Improve documentation on writing custom scheduler filters 6a4cb24d39 conf: Deprecate '[scheduler] driver' a0a88d7c0c trivial: Remove FakeScheduler 7e0d2547c1 nova-net: Remove unused parameters 998475f5bd nova-net: Remove unused nova-network objects 25b7cf2301 nova-net: Remove unnecessary exception handling, mocks 5fc3b81fdf Remove 'nova.image.api' module cab02bae3b Introduce scope_types in os-evacuate b8a0afafe1 Add test coverage of existing evacuate policies 963fd8c0f9 Reject boot request for unsupported images bc29084012 Absolutely-non-inheritable image properties 69ee625a66 Add JSON schema and test for network_data.json bfb8dcded6 Support large network queries towards neutron fb82254cab Add new default roles in os-availability-zone policies b89ec3ab84 Introduce scope_types in os-availability-zone 125b4ae743 Add test coverage of existing availability-zone policies b8c2de86ed Correct os-availability-zone policy check_str 2078ef850c Monkey patch original current_thread _active 08bdcdb5b6 Allow TLS ciphers/protocols to be configurable for console proxies db39391fe0 Skip to run all integration jobs for policy-only changes. 560987f920 set default value to 0 instead of '' e65d4a131a Clean up allocation if unshelve fails due to neutron e620a7b195 Add test coverage of existing os-aggregates policies c33ebdafbd Reproduce bug 1862633 e7feb1a9c4 Add test coverage of existing admin_password policies 001f3a7bfe Fix instance.hidden migration and querying 641d53196c Remove universal wheel configuration c8918e0c0e trivial: Remove 'run_once' helper 291d45065a trivial: Merge unnecessary 'NovaProxyRequestHandlerBase' separation afebcdc950 libvirt: Rename _is_storage_shared_with to _is_path_shared_with aec3ca0765 Don't error out on floating IPs without associated ports d1a933bfa7 Deprecate base rules in favor of new rules 082dc59b89 trivial: Bump minimum version of websockify 14fed95f61 trivial: Fetch 'Service' objects once when building AZs 5cea9ed9ad trivial: Remove unused 'cache_utils' APIs 57b08f817a remove DISTINCT ON SQL instruction that does nothing on MySQL 9f65599892 Minor improvements to cell commands 3e79cb7577 Avoid calling neutron for N networks eef658bf53 Handle neutron without the fip-port-details extension 01c334cbdd Add retry to cinder API calls related to volume detach 9804bf9767 Handle unset 'connection_info' 64cdb82b99 Enable live migration with qos ports 52a03b195e Use common server create function for qos func tests 56f29b3e4a Remove extra instance.save() calls related to qos SRIOV ports 4bdecee385 docs: Fix the monkeypatching of blockdiag 5c048345a5 tests: Validate huge pages c29f382f69 Recalculate 'RequestSpec.numa_topology' on resize c03716be1f Add a placement audit command 4921e822e7 Use COMPUTE_SAME_HOST_COLD_MIGRATE trait during migrate 65825ebfbd Make RBD imagebackend flatten method idempotent 3177371568 Avoid fetching metadata when no subnets found 28627d6595 zuul: Add Fedora based jobs to the experimental queue de512f2c02 libvirt: Add a default VirtIO-RNG device to guests dafbe3503a Remove remaining Python 2.7-only dependencies 0b1a33ec9c nova-net: Update API reference guide 4eafc9d5b1 Func test for failed and aborted live migration 765e4e52bf functional: Stop setting Flavor.id bce30de28a Remove unused code 5b36d8c054 functional: Add '_create_server' helper 6f1e43f831 Make removal of host from aggregate consistent 662226a6a9 Clarify fitting hugepages log message 1efd5ec232 Add ironic hypervisor doc f0bc7874a8 Fix typos for update_available_resource reference fadeedcdea nova-net: Remove layer of indirection in 'nova.network' bf7ea80c4d nova-net: Remove unnecessary 'neutronv2' prefixes ab0ea35372 nova-net: Remove unused exceptions a436266a41 functional: Add '_delete_server' to 'InstanceHelperMixin' b572dbe904 functional: Add unified '_(build|create)_flavor' helper functions 458d37fceb functional: Add unified '_build_server' helper function f5f73b4c4e nova-net: Kill it c2ba0ef21e Add NovaEphemeralObject class for non-persistent objects 4b8560563a pre-commit: Use Python 3 to run checks 8e5adb231f nova-net: Remove now unnecessary nova-net workaround 80191e6d82 Add a workaround config toggle to refuse ceph image upload ea172ef85f Fix typos in nova doc 33c7996624 doc: define boot from volume in the glossary 4b6b755d86 Update Testing NUMA documentation 828f3f2691 nova-net: Remove dependency on nova-net from fake cache 5957ca666b nova-net: Add TODOs to remove security group-related objects da51a34f7b nova-net: Remove 'MetadataManager' df00177093 nova-net: Remove final references to nova-network 656c18eaf2 nova-net: Copy shared utils from nova-net module 9b321e41f6 nova-net: Remove firewall support (pt. 3) bcc893a2b0 Use Placement 1.35 (root_required) b0a0a7e00a Fix the suppress of policy deprecation warnings 7845c0cdd3 Fix excessive runtime of test test_migrate_within_cell 011cce6adb libvirt: avoid cpu check at s390x arch 2670741fc9 downgrade when host does not support capabilities 30141e6b52 nova-net: Remove firewall support (pt. 2) 6af7c36ac7 nova-net: Remove firewall support (pt. 1) e61cb24932 Report trait 'COMPUTE_IMAGE_TYPE_PLOOP' b608d6bfb4 Fix duplicated words issue like "during during boot time" 2fd877310c Add missing parameter vdi_uuid in log message 4352a41b4c [Trivial]Fix typo instnace 0d9622f581 Handle cell failures in get_compute_nodes_by_host_or_node 1b7ebe5f75 Fix an invalid assertIsNotNone statement ba3c6bf555 Add description of live_migration_timeout_action option 2a9766195d [api-ref] Fix the incorrect link 3654989cd0 FUP to Iff8194c868580facb1cc81b5567d66d4093c5274 29100f9b5a FUP for docs nits in cross-cell-resize series 26d695876a Use graceful_exit=True in ComputeTaskManager.revert_snapshot_based_resize 24bf2aaa74 Plumb graceful_exit through to EventReporter 3a66b8fdc0 Fix accumulated non-docs nits for cross-cell-resize series 74e76b1a6b Add cross-cell resize tests for _poll_unconfirmed_resizes 92bf69bfa5 Implement cleanup_instance_network_on_host for neutron API 166df25325 Simplify FinishResizeAtDestTask event handling 6aafb29820 Add sequence diagrams for cross-cell-resize aa74ac60e2 Flesh out docs for cross-cell resize/cold migrate 7661995b69 Enable cross-cell resize in the nova-multi-cell job 6ebee92445 Add cross-cell resize policy rule and enable in API 02eb9cffe6 Remove 'nova-xvpvncproxy' 51b0d4ca58 Print help if nova-manage subcommand is not specified 14342d629b FakeDriver: adding and removing instances on live migration. 0d750d62b0 docs: Add note about an image signature validation limitation when using rbd 7ef623e6ec Add api for instance action details f6060ab6b5 FUP for in-place numa rebuild ea2ea492a3 Ensure source service is up before resizing/migrating 40950f9c87 Fix race in test_create_servers_with_vpmem d29a5f4358 Move common test method up to base class 5f63ada309 Func test for qos live migration reschedule e0aa3a6768 Fix get_request_group_mapping doc bd8e2fe9c8 Support live migration with qos ports e7e39b8c2e Zuul v3: use devstack-plugin-nfs-tempest-full 95c9d710dd Add recreate test for bug 1855927 44280cd53f FUP: Remove noqa and tone down an exception 8ad9221fdc nova-net: Correct some broken VIF tests bf0d099f4b nova-net: Remove nova-network security group driver d5c9423e40 nova-net: Remove 'is_neutron_security_groups' function 80e64186e6 nova-net: Convert remaining unit tests to neutron f7b8f7b84e Use reasonable name for provider mapping bce0854959 DRY: Build ImageMetaPropsPayload from ImageMetaProps 685dc60d58 api-ref: avoid mushy wording around server.image description 7dce615362 Sync ImageMetaPropsPayload fields deada11da1 Move _update_pci_request_spec_with_allocated_interface_name 3dbdbb4e2b Revert "(Temporarily) readd bare support for py27" 696583878e db: Remove unused ec2 DB APIs f2608c9117 Create instance action when burying in cell0 36b110dfc5 Do not reschedule on ExternalNetworkAttachForbidden dae920defa libvirt: flatten rbd image during cross-cell move spawn at dest c2e315975c Support cross-cell moves in external_instance_event fbebfcaf34 Add functional test for anti-affinity cross-cell migration 92d4362f8e Add test_resize_cross_cell_weigher_filtered_to_target_cell_by_spec 18179aee4e Add CrossCellWeigher 83edfb7ec8 Add archive_deleted_rows wrinkle to cross-cell functional test 6057373191 Confirm cross-cell resize while deleting a server 85a1ac12e7 Refresh target cell instance after finish_snapshot_based_resize_at_dest f1ac153b03 Add functional cross-cell revert test with detached volume 216640115c Revert cross-cell resize from the API 74d18c412f Add revert_snapshot_based_resize conductor RPC method 87ade6d0f0 Flesh out RevertResizeTask.rollback f6f4657e9c Add RevertResizeTask 750aef54b1 Add finish_revert_snapshot_based_resize_at_source compute method 26da4418a9 Deal with cross-cell resize in _remove_deleted_instances_allocations 11b7bcd947 Add revert_snapshot_based_resize_at_dest compute method 386aa315a4 Confirm cross-cell resize from the API 6f74bc1e98 Add confirm_snapshot_based_resize conductor RPC method 3f11a9de2d Follow up to I5b9d41ef34385689d8da9b3962a1eac759eddf6a 0378c2c780 Don't hardcode Python versions in test e7cc5efd20 Keep pre-commit inline with hacking and fix whitespace 915e3f51fb Move _get_request_group_mapping() to RequestSpec 05aaa7a23f trivial: Remove dead code 70540d850f nova-net: Remove db methods for ProviderMethod e123c39482 nova-net: Remove unused 'stub_out_db_network_api' 6c704cc1c5 Add resource provider allocation unset example to troubleshooting doc 9428ebfed9 trivial: Resolve (most) flake8 3.x issues 1a17fe8aab Add troubleshooting doc about rebuilding the placement db 8c72241726 support pci numa affinity policies in flavor and image 2e6a029c00 Do not mock setup net and migrate inst in NeutronFixture 448b971e88 Extend NeutronFixture to handle multiple bindings 404932f821 Revert "nova shared storage: rbd is always shared storage" 3d4a468c38 nova-net: Convert remaining API tests to use neutron 39bcf6f02d nova-net: Drop nova-network-base security group tests c2fd8294fd Create a controller for qga when SEV is used 1a88d35cb1 Also enable iommu for virtio controllers and video in libvirt 2b0024c040 Switch to uses_virtio to enable iommu driver for AMD SEV 631c4657da libvirt: Remove MIN_{LIBVIRT,QEMU}_FILE_BACKED_VERSION e59a5fee47 libvirt: Remove MIN_QEMU_FILE_BACKED_DISCARD_VERSION 54f1056e98 Optimization for nova-api _checks_for_create_and_rebuild 3f9411071d Disable NUMATopologyFilter on rebuild e6f7425444 Nix os-server-external-events 404 condition 0d653f35c4 Add ConfirmResizeTask e937c5c6c4 Imported Translations from Zanata 9a13b02d9e Fix Typo mistake in documentation of "host aggregates in nova" c95538c49c Remove dead code from MigrationTask._execute 53ef08276c Restore test_minbw_allocation_placement in nova-next job 7daa3f59e2 Use provider mappings from Placement (mostly) ec59ab5205 Remove dict compat from populate_filter_properties 103b8c984f Remove now invalid cells v1 comments from conductor code d05fd530c7 functional: Make '_IntegratedTestBase' subclass 'InstanceHelperMixin' 7ae1a10913 functional: Remove 'api' parameter aff95de32a functional: Remove 'get_invalid_image' d888d9b8ed functional: Unify '_build_minimal_create_server_request' implementations 2246dae1c0 functional: Unify '_wait_until_deleted' implementations 83a683f5f2 Fup for I63c1109dcdb9132cdbc41010654c5fdb31a4fe31 6f5358ac19 Block rebuild when NUMA topology changed 2e3985c303 Tie requester_id to RequestGroup suffix 683ffb097c refactor: RequestGroup.is_empty() and .strip_zeros() 54195a1bd9 Use Placement 1.34 (string suffixes & mappings) c4ce6ae58c nova-net: Remove SG tests that don't apply to neutron 15c59f1897 Skip test_minbw_allocation_placement in nova-next job 4bb54ae869 Skip cpu comparison on AArch64 dfaf229e00 Introduce scope_types in Admin Actions fcf5163ab3 Add test coverage of existing admin_actions policies 945d662d4f Handle ServiceNotFound in DbDriver._report_state 909d0de68e Remove unused rootwrap filters 972218e6ae Add new default roles in os-services API policies f347839151 Add QoS tempest config so bw tests run 5dbab6e9d7 nova-net: Remove use of legacy 'SecurityGroup' object 0461921d9e Cache security group driver 31d21258e3 nova-net: Remove use of legacy 'Network' object 6b44628695 nova-net: Remove use of legacy 'FloatingIP' object 86f7893b47 libvirt: Remove MIN_LIBVIRT_KVM_AARCH64_VERSION b2734b5a9a Extend NeutronFixture to allow live migration with ports 55030676c1 Make the binding:profile handling consistent in NeutronFixture 326f845663 VMware: disk_io_limits settings are not reflected when resize a4966b8ee9 api-guide: flesh out the server actions section e10c6125f8 nova-net: Remove remaining nova-network quotas 810aafc5ec docs: Clarify configuration steps for PF devices 0e6aac3c2d add [libvirt]/max_queues config option 56d3cd7aa7 Add a way to exit early from a wait_for_instance_event() a576de8f76 Reusable RequestGroup.add_{resource|trait} e0eb0a520f Process requested_resources in ResourceRequest init c29d6dcf20 nova-net: Flatten class hierarchy for neutron SG tests 295100c3fe xenapi: Remove vestigial nova-network support 846fc0a0b7 zvm: Remove vestigial nova-network support f3cc31183b vmware: Remove vestigial nova-network support 5ecfa67408 hyperv: Remove vestigial nova-network support 913679d7e3 libvirt: Remove vestigial nova-network support 783d4cb246 libvirt: Remove 'enable_hairpin' 9142a97f24 nova-net: Remove final references to nova-net from functional tests 5dcfd0750f docs: Blast final references to nova-network 180221114c nova-net: Remove references to nova-net service from tests dc1402666f Follow up I18d73212f9d98bc75974a024cf6fd872fdfb1ca4 110a683486 nova-net: Make the security group API a module 233f2715dd requirements: Limit hacking to one minor version e3da87a45d Switch to hacking 2.x 5f8dd65f6c Integrate 'pre-commit' 267c6f89c9 nova-net: Remove associate, disassociate network APIs 29b9f788de docs: Blast most references to nova-network 26d4047e17 Mask the token used to allow access to consoles c56a635de1 nova-net: Remove 'nova-network' binary 5c96864e60 Suppress policy deprecated warnings in tests bee15b5681 Add new default rules and mapping in policy base class c741258f8f Add confirm_snapshot_based_resize_at_source compute method a06bd1a961 Add negative test for prep_snapshot_based_resize_at_source failing 1f30dcafc1 Add negative test for cross-cell finish_resize failing 1b63c7a83f compute: Use long_rpc_timeout in reserve_block_device_name 0195939588 Fix incorrect command examples 0012785501 Introduce scope_types in os-services 68f195928e Add test coverage of existing os-services policies 19424403f4 nova-net: Remove 'nova-dhcpbridge' binary 1319931f46 api-guide: remove empty sections about inter-service interactions 173831558f doc: remove admin/manage-users b7c6da3074 api-guide: flesh out todos in user doc ce7649e468 api-guide: flesh out networking concepts ee41dc9ff9 api-guide: flesh out flavor extra specs and image properties 83baeaa9f2 Remove nova-manage network, floating commands 11723e47b9 docs: Rewrite quotas documentation ccf7eabdf8 test cleanup: Make base TestCase subclass oslotest e49433d2cd api-guide: fix the file injection considerations drift 15011fc13b api-guide: flesh out BUILD and ACTIVE server create transitions 49422f87d2 Add sequence diagrams to resize/cold migrate contrib doc 1e781f6f34 Add contributor doc for resize and cold migrate 6fe31d9754 nova-net: Remove 'networks' quota 6537a537f9 Remove 'nova-console' service, 'console' RPC API 3062a1199d Remove 'os-consoles' API 2ea4ed6408 nova-net: Remove 'USE_NEUTRON' from functional tests e5e477c42a Remove '/os-tenant-networks' REST API 9ad54f3dac compute: Take an instance.uuid lock when rebooting 5e0ed5e7fe Do not update root_device_name during guest config 5679a0bf99 block_device: Copy original volume_type when missing for snapshot based volumes a76a4dd227 ZVM: Implement update_provider_tree 49964bdc64 Avoid spurious error logging in _get_compute_nodes_in_db 22c1916b49 libvirt: Bump MIN_{LIBVIRT,QEMU}_VERSION for "Ussuri" 1b76c0f72e Pick NEXT_MIN libvirt/QEMU versions for "V" release fcb64bd0f8 Force config drive in nova-next multinode job e4e64bcbce Specify what RPs _ensure_resource_provider collects 4a876df468 zuul: Remove unnecessary 'USE_PYTHON3' 50ad9245f0 zuul: Remove unnecessary 'tox_install_siblings' 1d4e1b2ae2 Add zones wrinkle to TestMultiCellMigrate 9fe3ec0ff3 Validate image/create during cross-cell resize functional testing c2c032ee6b Handle target host cross-cell cold migration in conductor a12fde0e68 Start README.rst with a better title cff9ecb208 Don't delete compute node, when deleting service other than nova-compute 8cb6f07444 Drop neutron-grenade-multinode job 9e665c8a95 FUP to Ie1a0cbd82a617dbcc15729647218ac3e9cd0e5a9 33a2a5f2e4 (Temporarily) readd bare support for py27 431237d2ee functional: Make '_wait_for_state_change' behave consistently 1b71252a5f Remove (most) '/os-networks' REST APIs 3776e97f12 nova-net: Remove unused '*_default_rules' security group DB APIs 22dee90760 Remove 'os-security-group-default-rules' REST API 1dac0542ea nova-net: Add TODOs for remaining nova-network functional tests 6a04c5546a zuul: Make functional job inherit from openstack parents 14872caae1 Stop testing Python 2 b609bdc20e doc: mention that rescuing a volume-backed server is not supported 528a6d1fc6 Use wrapper class for NeutronFixture get_client a0380894d0 docs: Strip '.rst' suffix c3d776d639 docs: Replacing underscores with dashes da207cc2be docs: Remove 'adv-config', 'system-admin' subdocs 57f335090b functional: Rework '_delete_server' 7f46b9b281 docs: Extract rescue from reboot 931ce9b9d2 functional: Change order of two classes d16bdb8fb9 Remove duplicate ServerMovingTests._resize_and_check_allocations 557728abaf docs: Change order of PCI configuration steps 26e1d9c723 Reset vm_state to original value if rebuild claim fails 92fed02610 Block deleting compute services with in-progress migrations f7dde6054e Add functional recreate revert resize test for bug 1852610 94d3743b18 Add functional recreate test for bug 1852610 85a1dd338b Convert legacy nova-live-migration and nova-multinode-grenade to py3 2d91a8463f docs: update SUSPENDED server status wrt supported drivers 6ee0da7e5b api-ref: mark device response param as optional for list/show vol attachments dcd3f516d2 doc: add troubleshooting guide for cleaning up orphaned allocations 3a9e8f9c59 Remove functional test specific nova code 3badb674f6 "SUSPENDED" description changed in server_concepts guide and API REF f7c027db9a Add image caching to the support matrix 828e8047e5 Consolidate [image_cache] conf options 200a050182 Fix review link. aa0239f44d api-ref: re-work migrate action post-conditions 891b8f9e98 Use named kwargs in compute.API.resize 3b60442456 Start functional testing for cross-cell resize 63094c2883 Filter duplicates from compute API get_migrations_sorted() a05ef30fb9 Make API always RPC cast to conductor for resize/migrate ebcf6e4ce5 Abort live-migration during instance_init 607307c1d8 Helper to start computes with different HostInfos fb283dab57 Remove unused CannotMigrateWithTargetHost 996a4bbbd9 Remove TODO from ComputeTaskManager._live_migrate 0e3d395313 Fix driver tests on Windows b6133f8183 Remove TODOs around claim_resources_on_destination 29f22b3b51 Resolve TODO in _remove_host_allocations de5c338792 Remove service_uuids_online_data_migration 9fd0b9a850 FUP for Ib62ac0b692eb92a2ed364ec9f486ded05def39ad 1c93ca82b8 Replace time.sleep(10) with service forced_down in tests f199811af4 Remove get_minimum_version mocks from test_resource_tracker cea4f391f3 Move compute_node_to_inventory_dict to test-only code 112999e1dd Delete _normalize_inventory_from_cn_obj c80912866f Drop compat for non-update_provider_tree code paths 6479d492c0 Implement update_provider_tree for mocked driver in test_resource_tracker c013ce26d9 Remove now invalid TODO from ComputeManager._confirm_resize 8b5da30eac Remove dead HostAPI.service_delete code 14ca6f62e3 Remove the TODO about using OSC for BFV in test_evacuate.sh 42e65eea6c Remove super old br-<uuid> neutron network id compat code 024bf10d8a Improve error log when snapshot fails 3e1680cc71 Remove unused 'nova-dsvm-base' job e36915451a Use ListOfUUIDField from oslo.versionedobjects 8999769605 Use admin neutron client to see if instance has qos ports 38a214466f Use admin neutron client to gather port resource requests aab4b7a0e2 Use admin neutron client to query ports for binding aa39641182 Revert "openstack server create" to "nova boot" in nova docs 2cb6331aa8 Move rng device checks to the appropriate method eaf16fdde5 Improve metadata server performance with large security groups a2e53cacd3 Plumb allow_cross_cell_resize into compute API resize() 462d0d813e Refresh instance in MigrationTask.execute Exception handler 425518d198 Execute CrossCellMigrationTask from MigrationTask 021749a734 Provide a better error when _verify_response hits a TypeError aa87b9c288 libvirt: check job status for VIR_DOMAIN_EVENT_SUSPENDED_MIGRATED event 7590dc791f cond: rename 'recreate' var to 'evacuate' accdc16947 Pass exception through TaskBase.rollback 3b678fc276 Follow up to I3e28c0163dc14dacf847c5a69730ba2e29650370 0982a3fa62 Log reason for remove_host action failing 61a528311d Remove PlacementAPIConnectFailure handling from AggregateAPI 612d8c682d Add FinishResizeAtDestTask a2fba47bcf Add finish_snapshot_based_resize_at_dest compute method e619354f7c Document CD mentality policy for nova contributors c5557f03da doc: link to nova code review guide from dev policies cd0021157b Use long_rpc_timeout in conductor migrate_server RPC API call 07a24dcef7 Default AZ for instance if cross_az_attach=False and checking from API 888dd7d475 Add functional test for two-cell scheduler behaviors cffbc2e431 Deprecate [glance]api_servers a423d8b277 Avoid error 500 on shelve task_state race fe05d004b5 Only allow one scheduler service in tests 9062fd3923 Nova compute: add in log exception to help debug failures 70e5c214f0 Add support matrix for Delete (Abort) on-going live migration 56a391aafc Fix race in test_vcpu_to_pcpu_reshape e416b19ba1 api-ref: re-work resize action post-conditions d3e38143a7 Add known limitation about resize not resizing ephemeral disks 5a20996405 Reset instance to current vm_state if rolling back in resize_instance 55ae1a5d53 Pass RequestContext to oslo_policy c935377531 Add Aggregate image caching progress notifications 44d3d5eb4c Remove dead set_admin_password code to generate password 7ecd502f6d Log some stats for image pre-cache 23871ad4ad Switch to devstack-plugin-ceph-tempest-py3 for ceph f9c6089244 Add new policy rule for viewing host status UNKNOWN 4722fe5ba5 Fix policy doc for host_status and extended servers attribute d50efc337c Add notification sample test for aggregate.cache_images.start|end b2122f7702 Stop building docs with (test-)requirements.txt f06ff5949f Enable evacuation with qos ports ab509a0043 Allow evacuating server with port resource request 6f8c2f0df5 Make nova-next multinode and drop tempest-slow-py3 ac68cffd43 libvirt: Ignore volume exceptions during post_live_migration ce50088cf2 Stop converting Migration objects to dicts for migrate_instance_start 2db294965e Require Migration object arg to migrate_instance_finish method 829ccbe2bb Add image precaching docs for aggregates b972f23ba6 Remove fixed sqlalchemy-migrate deprecation warning filters b5ae98df9e doc: note the need to configure cinder auth in reclaim_instance_interval df03499843 Fix listing deleted servers with a marker 45c2752f2c Add functional regression test for bug 1849409 f37623089e Added openssh-client into bindep 9377d00ccf Revert "Log CellTimeout traceback in scatter_gather_cells" f3ae221f60 Adds view builders for keypairs controller 4ce68c3b2d [Trivial] Add missing ws between words 23586abc61 Revert "vif: Resolve a TODO and update another" 80385a22ee Don't populate resources for not-yet-migrated inst 761be5d0cb Func: bug 1849165: mig race with _populate_assigned_resources c15e36e584 Join migration_context and flavor in Migration.instance a79d3d546b Always trait the compute node RP with COMPUTE_NODE f893aa5ad1 Fix ItemMatcher to avoid false positives acb8b7c4a4 ItemsMatcher: mock call list arg in any order 05c60fe70e Refactor rebuild_instance be09b73796 Make sure tox install requirements.txt with upper-constraints 6725da92bd Move Destination object tests to their own test class 604efd382a Switch to opensuse-15 nodeset 760ccb32db Add compute side revert allocation test for bug 1848343 252ee93086 Add live migration recreate test for bug 1848343 569ad1402e Set instance CPU policy to 'share' through image property 24318f8cd4 Add functional recreate test for bug 1848343 fee9503ead Fix up some feedback on image precache support 3391298706 Add image caching API for aggregates 242557333a Add PrepResizeAtSourceTask b4fb248ad2 Add prep_snapshot_based_resize_at_source compute method 6d118e2921 Add PrepResizeAtDestTask 8d5172dadc Remove compute compat checks for aborting queued live migrations b8d4e191db cleanup to objects.fields 6ea945e3b1 Remove redundant call to get/create default security group 355570962b Fix legacy issues in filter migrations by user_id/project_id 11d909c2cb Add cache_images() to conductor ac165112b7 Filter migrations by user_id/project_id 52fe8c0285 Stop using NoAuthMiddleware in tests 4cc1798bd4 Add prep_snapshot_based_resize_at_dest compute method de373c7007 Update compute rpc version alias for train 7c41365f19 Add regression test for bug 1824435 f223ae5828 setup.cfg: Cleanup 86fb58d971 nova-net: Use deepcopy on value returned by NeutronFixture cacca209ab Avoid using image with kernel in BDM large request func test d02c326f23 libvirt: Change _compare_cpu to raise InvalidCPUInfo 976120cb20 Fix unit of hw_rng:rate_period 9a5da92524 api-guide: Fix available info in handling down cells be278006a5 Add cache_image() support to the compute/{rpcapi,api,manager} e46d59a7f7 Add cache_image() driver method and libvirt implementation 0f9311fae1 Fix exception translation when creating volume 18de63deaa Deprecate [api]auth_strategy and noauth2 8f975bc828 Add support for cloud-init on LXC instances 2d84a564fb Cache image GETs for multi-create/multi-BDM requests 123357e35b Add boot from volume functional test with a huge request 52cc4bfa0a nova-net: Migrate 'test_floating_ips' functional tests ce84c7d014 fixtures: Add support for security groups 4ac308f0ae Remove Stein compute compat checks for volume type support 56d3f4657c Remove dead reserve_volume compat code in _validate_bdm ec87830daf doc: link to user/index from main home page 2e73dc2015 doc: link to user/availability-zones from user home page 93efca826f docs: Add redirects for '/user/aggregates' 3f3114c94e Skip functional test jobs for doc redirect changes 1ed2b2ac53 doc: fix formatting in mitigation-for-Intel-MDS-security-flaws b6a67faeb6 nova-net: Make even more nova-net stuff optional afe267590f Pull up compute node queries to init_host 28b88eda2e Refine comments about move_allocations 9524a5a1b5 compute: refactor volume bdm rollback error handling 15c71ccf8e Remove @safe_connect from put_allocations 152d5c359c doc: Improve PDF document structure 35d76c7cf5 [Gate fix] Avoid use cell_uuid before assignment 5601c82915 Remove workaround for bug #1709118 5c5927a3d2 docs: Rewrite host aggregate, availability zone docs ad78f24812 Avoid raise InstanceNotRunning exception 6901be694c Update contributor guide for Ussuri a7c3108bf7 api-ref: Fix security groups parameters fe99692ff9 trivial: Remove unused API sample template e73795b8ad trivial: Make it obvious where we're getting our names from 337c90808e nova-net: Stop mocking the instance network cache 59d00aac7c trivial: Change name of network provided by NeutronFixture 8b8542558a fixtures: Store 'device_id' when creating port in NeutronFixture d2d4317e1a fixtures: Handle iterable params for 'NeutronFixture.list_*' 5a6fd8e206 fixtures: Beef up NeutronFixture c50e4fe743 trivial: Neutron fixture cleanup 1443171d16 nova-net: Migrate 'test_simple_tenant_usage' functional tests 3c27f3cdc0 Filter out alembic logs below WARNING in tests 07578e7c55 Remove Rocky compute compat checks for live migration with port bindings 8098633ad4 nova-net: Migrate 'test_attach_interfaces' functional tests ead5eb2507 nova-net: Migrate 'test_hypervisors' functional tests a6b9ec6c09 nova-net: Migrate 'test_rescue' functional tests f5c3ea2f1e nova-net: Migrate 'test_hosts' functional tests aabf8cc2d0 nova-net: Migrate 'test_servers' functional tests ea8b38950d nova-net: Migrate 'test_server_tags' functional tests 956555f5ee tests: Correctly mock out security groups in NeutronFixture ec0532269c nova-net: Migrate 'test_quota_sets' functional tests 828220d8fe nova-net: Migrate 'test_floating_ip_pools' functional tests 2da2f60fea nova-net: Migrate 'test_availability_zone' functional tests a683e53a2d FUP to I4d181b44494f3b0b04537d5798537831c8fdf400 0140f64076 FUP to I30916d8d10d70ce25523fa4961007cedbdfe8ad7 04e79b5b7e Add reserved schema migrations for Ussuri c4d6aabad1 Restore console proxy deployment info to cells v2 layout doc a87fbdda9d Update cells v2 up-call caveats doc ac85b76178 Set Instance AZ from Selection AZ during migrate reschedule f1ad0b13e8 Set Instance AZ from Selection AZ during build reschedule bcd4584a7c Add Selection.availability_zone field f07697ebff Add functional regression test for migrate part of bug 1781286 c24fbc3dc8 docs: Remove a whole load of unused images, most remainder 60f8c50b6f nova-net: Remove explicit 'USE_NEUTRON = True' 300b677a3d nova-net: Use nova-net explicitly in functional tests 0044702e0d Test heal port allocations in nova-next 65847e3e66 Do not print default dicts during heal_allocations 8c332c4dd7 Add functional regression test for build part of bug 1781286 38fb7f82ab Handle get_host_availability_zone error during reschedule 6198f317be libvirt: Ignore DiskNotFound during update_available_resource 6d5fdb4ef4 make virtual pmem feature compatible with python3 9ce6b3bb76 Replace 'fake' with a real project ID a039827876 test cleanup: Use oslotest's CaptureOutput fixture 5617b1ae96 test cleanup: Use oslotest's Timeout fixture e11a021062 test cleanup: Remove skipIf test decorator 8b68e2f2bd api: Remove 'Debug' middleware 4e1eb8a2b5 ec2: Move ec2utils functions to their callers 54125a75fb Reduce scope of 'path' query parameter to noVNC consoles 2565cd841d Add TODO note for mox removal 088f237e59 conf: Remove deprecated 'project_id_regex' opt 19a0bdfec4 tox: Stop overriding the 'install_command' 2a74120b73 tox: Use common 'command' definition for unit tests 198573976f Add functional tests for virtual persistent memory e26f2316a0 Update master for stable/train 64b99bd853 Reset forced_destination before migration at a proper time 167e593ed5 Functional reproduction for bug 1845291 fc91c40af0 Fix incorrect usages of fake moref in VMware tests 70a4054f86 docs: Update resize doc 775d89ed0f docs: Document how to revert, confirm a cold migration ec93474a84 VMware VMDK detach: get adapter type from instance VM 6ec686c26b Stop filtering out 'accepted' for in-progress migrations d5259abfe1 docs: Rework the PCI passthrough guides 01541f49b2 docs: Document global options for nova-manage 62ca2e7ed2 docs: Correct 'nova-manage db sync' documentation de0cd7503e docs: Note use of 'nova-manage db sync --config-file' f08acb2dfe Add missing parameter cfb283cdd0 Move pre-3.44 Cinder post live migration test to test_compute_mgr f9333b5fa8 nova-net: Migrate some API sample tests off of nova-net 0436a95f37 Log CellTimeout traceback in scatter_gather_cells 35f74ee420 Rename Claims resources to compute_node 5b552518e1 Sanity check instance mapping during scheduling a4ca0b531c Remove 'test_cold_migrate_with_physnet_fails' test a1a735bc6e Error out interrupted builds de5bce6ea2 Create volume attachment during boot from volume in compute 0e67e71974 Clear instance.launched_on when build fails 522393fa37 Remove mox in unit/network/test_neutronv2.py (22) a631b5fa26 Remove mox in unit/network/test_neutronv2.py (21) 6db0484ee8 Remove mox in unit/network/test_neutronv2.py (20) 6b02ff217a Remove mox in unit/network/test_neutronv2.py (19) ff5238ca68 Remove mox in unit/network/test_neutronv2.py (18) 0443d4e611 Remove mox in unit/network/test_neutronv2.py (17) c8cf0540df Remove mox in unit/network/test_neutronv2.py (16) 635ae68903 Remove mox in unit/network/test_neutronv2.py (15) 98e76dfe89 Remove mox in unit/network/test_neutronv2.py (14) fb2cd1a788 Remove mox in unit/network/test_neutronv2.py (13) 1e13a062f7 Mark "block_migration" arg deprecation on pre_live_migration method 6df2ad787b Add func test for 'required' PCI NUMA policy e6916ab114 Refactor volume connection cleanup out of _post_live_migration 284ed487df api-ref: remove mention about os-migrations no longer being extended 1b597f759f Use os-brick locking for volume attach and detach 4141bf63af VMware: Update flavor-related metadata on resize 708c11e96d Update help for image_cache_manager_interval option 12b361f0b4 Avoid error state for recovered instances after failed migrations b3aed10ee0 Add support for 'initenv' elements 95df2a239c Restrict RequestSpec to cell when evacuating 5df748b2ed Make it easier to run a selection of tests relevant to ongoing work 24c5e6f296 Don't claim that CLI user data requires manual base64 encoding 9981d06b4c Remove @safe_connect from _delete_provider 35ca7a6b4c ec2: Pre-move cleanup of utils 7c2303ea22 ec2: Remove ec2.CloudController 4cd45c8e45 tests: Use consistent URL regex substitution 5d29dccaf9 Leave brackets on Ceph IP addresses for libguestfs 5408d8d9b8 Give the policy vision document a facelift 9c0d188988 Workaround a race initialising version control in db_version() 67c761cb2c Don't overwrite greenthread-local context in host manager Diffstat (except docs and test files) ------------------------------------- .gitreview | 1 + .pre-commit-config.yaml | 35 + .zuul.yaml | 196 +- CONTRIBUTING.rst | 21 +- HACKING.rst | 24 + README.rst | 8 +- api-guide/source/accelerator-support.rst | 56 + api-guide/source/conf.py | 1 + api-guide/source/down_cells.rst | 10 +- api-guide/source/extra_specs_and_properties.rst | 38 +- api-guide/source/faults.rst | 169 +- api-guide/source/general_info.rst | 68 +- api-guide/source/index.rst | 7 +- api-guide/source/port_with_resource_request.rst | 3 + api-guide/source/server_concepts.rst | 104 +- api-guide/source/users.rst | 14 +- api-ref/source/images.inc | 14 +- api-ref/source/index.rst | 4 +- api-ref/source/os-aggregates.inc | 33 + api-ref/source/os-consoles.inc | 69 +- api-ref/source/os-floating-ip-pools.inc | 2 +- api-ref/source/os-floating-ips.inc | 12 +- api-ref/source/os-instance-actions.inc | 6 + api-ref/source/os-keypairs.inc | 8 +- api-ref/source/os-migrations.inc | 13 +- api-ref/source/os-networks.inc | 79 +- api-ref/source/os-security-group-default-rules.inc | 22 +- api-ref/source/os-server-external-events.inc | 10 +- api-ref/source/os-services.inc | 6 + api-ref/source/os-tenant-network.inc | 12 +- api-ref/source/os-volume-attachments.inc | 51 +- api-ref/source/os-volumes.inc | 8 +- api-ref/source/parameters.yaml | 179 +- api-ref/source/server-migrations.inc | 16 +- api-ref/source/servers-action-remote-consoles.inc | 11 +- api-ref/source/servers-actions.inc | 18 +- api-ref/source/servers-admin-action.inc | 12 +- api-ref/source/servers-remote-consoles.inc | 58 +- api-ref/source/servers.inc | 33 +- bindep.txt | 2 + .../flavor-extra-specs-create-req.json | 6 +- .../flavor-extra-specs-create-resp.json | 6 +- .../flavor-extra-specs-get-resp.json | 4 +- .../flavor-extra-specs-list-resp.json | 6 +- .../flavor-extra-specs-update-req.json | 4 +- .../flavor-extra-specs-update-resp.json | 4 +- .../flavors/v2.61/flavors-detail-resp.json | 4 +- .../flavors/v2.75/flavors-detail-resp.json | 4 +- .../v2.81/aggregate-add-host-post-req.json | 5 + .../v2.81/aggregate-images-post-req.json | 6 + .../v2.81/aggregate-metadata-post-req.json | 9 + .../os-aggregates/v2.81/aggregate-post-req.json | 7 + .../os-aggregates/v2.81/aggregate-post-resp.json | 12 + .../v2.81/aggregate-remove-host-post-req.json | 5 + .../v2.81/aggregate-update-post-req.json | 7 + .../v2.81/aggregate-update-post-resp.json | 16 + .../v2.81/aggregates-add-host-post-resp.json | 18 + .../os-aggregates/v2.81/aggregates-get-resp.json | 16 + .../v2.81/aggregates-list-get-resp.json | 20 + .../v2.81/aggregates-metadata-post-resp.json | 17 + .../v2.81/aggregates-remove-host-post-resp.json | 16 + .../availability-zone-detail-resp.json | 7 - .../os-cloudpipe/cloud-pipe-get-resp.json | 2 +- .../os-floating-ips/floating-ips-create-req.json | 4 +- .../os-floating-ips/floating-ips-create-resp.json | 8 +- .../os-floating-ips/floating-ips-get-resp.json | 8 +- .../floating-ips-list-empty-resp.json | 2 +- .../os-floating-ips/floating-ips-list-resp.json | 14 +- .../v2.33/hypervisors-detail-resp.json | 2 +- .../v2.33/hypervisors-list-resp.json | 2 +- .../v2.53/hypervisors-detail-resp.json | 2 +- .../v2.53/hypervisors-list-resp.json | 2 +- .../v2.84/instance-action-get-non-admin-resp.json | 21 + .../v2.84/instance-action-get-resp.json | 24 + .../v2.84/instance-actions-list-resp.json | 24 + .../instance-actions-list-with-changes-before.json | 24 + .../instance-actions-list-with-changes-since.json | 14 + .../instance-actions-list-with-limit-resp.json | 20 + .../instance-actions-list-with-marker-resp.json | 14 + .../keypairs-get-resp.json | 0 .../keypairs-import-post-req.json | 0 .../keypairs-import-post-resp.json | 0 .../keypairs-list-resp.json | 0 .../keypairs-post-req.json | 0 .../keypairs-post-resp.json | 0 .../v2.10/keypairs-get-resp.json | 0 .../v2.10/keypairs-import-post-req.json | 0 .../v2.10/keypairs-import-post-resp.json | 0 .../v2.10/keypairs-list-resp.json | 0 .../v2.10/keypairs-post-req.json | 0 .../v2.10/keypairs-post-resp.json | 0 .../v2.2/keypairs-get-resp.json | 0 .../v2.2/keypairs-import-post-req.json | 0 .../v2.2/keypairs-import-post-resp.json | 0 .../v2.2/keypairs-list-resp.json | 0 .../v2.2/keypairs-post-req.json | 0 .../v2.2/keypairs-post-resp.json | 0 .../v2.35/keypairs-list-resp.json | 4 +- .../v2.35/keypairs-list-user1-resp.json | 0 .../v2.35/keypairs-list-user2-resp.json | 4 +- .../v2.35/keypairs-post-req.json | 0 .../v2.35/keypairs-post-resp.json | 0 .../v2.80/migrations-get-with-changes-before.json | 32 + .../v2.80/migrations-get-with-changes-since.json | 40 + .../v2.80/migrations-get-with-limit.json | 28 + .../v2.80/migrations-get-with-marker.json | 32 + .../migrations-get-with-user-or-project-id.json | 50 + .../os-migrations/v2.80/migrations-get.json | 86 + .../os-networks/networks-list-resp.json | 74 +- ...ver-action-rebuild-preserve-ephemeral-resp.json | 2 +- .../quota-classes-show-get-resp.json | 7 +- .../quota-classes-update-post-req.json | 9 +- .../quota-classes-update-post-resp.json | 7 +- .../quotas-show-defaults-get-resp.json | 3 +- .../quotas-show-detail-get-resp.json | 7 +- .../os-quota-sets-noop/quotas-show-get-resp.json | 3 +- .../quotas-update-force-post-resp.json | 3 +- .../quotas-update-post-resp.json | 3 +- .../user-quotas-show-get-resp.json | 3 +- .../user-quotas-update-post-resp.json | 3 +- .../quotas-show-defaults-get-resp.json | 9 +- .../os-quota-sets/quotas-show-detail-get-resp.json | 11 +- .../os-quota-sets/quotas-show-get-resp.json | 9 +- .../quotas-update-force-post-resp.json | 9 +- .../os-quota-sets/quotas-update-post-req.json | 4 +- .../os-quota-sets/quotas-update-post-resp.json | 11 +- .../os-quota-sets/user-quotas-show-get-resp.json | 9 +- .../user-quotas-update-post-resp.json | 9 +- .../get-rdp-console-post-resp.json | 4 +- .../get-serial-console-post-resp.json | 4 +- .../get-spice-console-post-resp.json | 2 +- .../os-rescue/server-get-resp-rescue.json | 4 +- .../os-rescue/server-get-resp-unrescue.json | 4 +- .../os-rescue/v2.87/server-get-resp-rescue.json | 87 + .../os-rescue/v2.87/server-get-resp-unrescue.json | 88 + .../v2.87/server-rescue-req-with-image-ref.json | 6 + .../os-rescue/v2.87/server-rescue-req.json | 5 + .../os-rescue/v2.87/server-unrescue-req.json | 3 + .../v2.26/server-tags-show-details-resp.json | 4 +- .../v2.26/servers-tags-details-resp.json | 4 +- .../os-tenant-networks/networks-list-res.json | 11 +- .../v2.85/attach-volume-to-server-req.json | 7 + .../v2.85/attach-volume-to-server-resp.json | 10 + .../v2.85/list-volume-attachments-resp.json | 20 + .../update-volume-attachment-delete-flag-req.json | 6 + .../os-volumes/v2.85/update-volume-req.json | 5 + .../v2.85/volume-attachment-detail-resp.json | 10 + .../server-ips/server-ips-network-resp.json | 2 +- .../v2.80/live-migrate-server.json | 6 + .../server-migrations/v2.80/migrations-get.json | 23 + .../server-migrations/v2.80/migrations-index.json | 25 + .../servers/server-action-addfloatingip-req.json | 2 +- .../servers/server-action-rebuild-resp.json | 2 +- .../servers/v2.16/servers-details-resp.json | 4 +- .../servers/v2.19/server-action-rebuild-resp.json | 2 +- .../servers/v2.19/servers-details-resp.json | 4 +- .../servers/v2.26/server-action-rebuild-resp.json | 2 +- .../servers/v2.3/servers-details-resp.json | 4 +- .../servers/v2.32/server-create-req.json | 2 +- .../servers/v2.42/server-create-req.json | 4 +- .../servers/v2.47/server-action-rebuild-resp.json | 2 +- .../servers/v2.47/server-update-resp.json | 2 +- .../servers/v2.47/servers-details-resp.json | 4 +- .../servers/v2.52/servers-details-resp.json | 4 +- .../servers/v2.54/server-action-rebuild-resp.json | 2 +- .../servers/v2.57/server-action-rebuild-resp.json | 2 +- .../servers/v2.63/server-action-rebuild-resp.json | 2 +- .../servers/v2.63/server-update-resp.json | 2 +- .../servers/v2.63/servers-details-resp.json | 4 +- .../v2.66/servers-details-with-changes-before.json | 2 +- .../servers/v2.67/server-create-req.json | 2 +- .../servers/v2.69/servers-details-resp.json | 2 +- .../servers/v2.71/server-action-rebuild-resp.json | 2 +- .../servers/v2.71/server-update-resp.json | 2 +- .../servers/v2.73/server-action-rebuild-resp.json | 2 +- .../servers/v2.73/server-update-resp.json | 2 +- .../servers/v2.73/servers-details-resp.json | 4 +- .../servers/v2.75/server-action-rebuild-resp.json | 4 +- .../servers/v2.75/server-update-resp.json | 4 +- .../servers/v2.9/servers-details-resp.json | 4 +- .../aggregate-cache_images-end.json | 11 + .../aggregate-cache_images-progress.json | 20 + .../aggregate-cache_images-start.json | 11 + .../common_payloads/BandwidthPayload.json | 2 +- .../common_payloads/ImageMetaPropsPayload.json | 2 +- .../common_payloads/IpPayload.json | 2 +- .../instance-interface_attach-end.json | 4 +- .../instance-interface_detach-start.json | 4 +- .../instance-live_migration_post_dest-end.json | 1 - .../instance-live_migration_rollback-start.json | 3 +- .../instance-live_migration_rollback_dest-end.json | 3 +- ...nstance-live_migration_rollback_dest-start.json | 3 +- .../images}/nova-weighting-hosts.png | Bin .../images}/traits-taxonomy.svg | 0 .../images}/vmware-nova-driver-architecture.jpg | Bin .../images}/xenserver_architecture.png | Bin .../images}/xenserver_architecture.svg | 0 .../admin/configuration/cross-cell-resize.rst | 308 ++ .../admin/configuration/hypervisor-hyper-v.rst | 5 +- .../admin/configuration/hypervisor-ironic.rst | 59 + .../admin/configuration/hypervisor-powervm.rst | 2 +- .../admin/configuration/hypervisor-vmware.rst | 60 +- .../admin/configuration/hypervisor-xen-api.rst | 2 +- .../admin/configuration/hypervisor-xen-libvirt.rst | 9 +- .../mitigation-for-Intel-MDS-security-flaws.rst | 20 +- ...equest.rst => ports-with-resource-requests.rst} | 0 .../troubleshooting/affinity-policy-violated.rst | 78 + .../admin/troubleshooting/orphaned-allocations.rst | 196 + .../admin/troubleshooting/rebuild-placement-db.rst | 56 + .../contributor/testing/eventlet-profiling.rst | 3 +- .../scheduler-hints-vs-flavor-extra-specs.rst | 4 +- etc/nova/api-paste.ini | 25 +- etc/nova/rootwrap.d/api-metadata.filters | 13 - etc/nova/rootwrap.d/compute.filters | 20 +- etc/nova/rootwrap.d/network.filters | 91 - gate/live_migration/hooks/ceph.sh | 50 +- gate/post_test_hook.sh | 127 +- gate/test_evacuate.sh | 7 +- lower-constraints.txt | 33 +- nova/{api/ec2 => accelerator}/__init__.py | 0 nova/accelerator/cyborg.py | 280 + nova/api/auth.py | 21 +- nova/api/ec2/cloud.py | 31 - nova/api/ec2/ec2utils.py | 134 - nova/api/manager.py | 36 - nova/api/metadata/base.py | 13 +- nova/api/metadata/handler.py | 37 +- nova/api/openstack/__init__.py | 6 +- nova/api/openstack/api_version_request.py | 29 +- nova/api/openstack/common.py | 31 +- nova/api/openstack/compute/admin_actions.py | 11 +- nova/api/openstack/compute/agents.py | 8 +- nova/api/openstack/compute/aggregates.py | 108 +- .../openstack/compute/assisted_volume_snapshots.py | 4 +- nova/api/openstack/compute/attach_interfaces.py | 32 +- nova/api/openstack/compute/availability_zone.py | 18 +- nova/api/openstack/compute/baremetal_nodes.py | 7 - nova/api/openstack/compute/console_auth_tokens.py | 2 +- nova/api/openstack/compute/console_output.py | 5 +- nova/api/openstack/compute/consoles.py | 86 +- nova/api/openstack/compute/create_backup.py | 6 +- nova/api/openstack/compute/deferred_delete.py | 5 +- nova/api/openstack/compute/evacuate.py | 23 +- nova/api/openstack/compute/flavor_access.py | 4 +- nova/api/openstack/compute/flavor_manage.py | 8 +- nova/api/openstack/compute/flavors_extraspecs.py | 47 +- nova/api/openstack/compute/floating_ip_pools.py | 12 +- nova/api/openstack/compute/floating_ips.py | 80 +- nova/api/openstack/compute/hosts.py | 6 - nova/api/openstack/compute/hypervisors.py | 17 +- nova/api/openstack/compute/image_metadata.py | 4 +- nova/api/openstack/compute/images.py | 5 +- nova/api/openstack/compute/instance_actions.py | 32 +- .../openstack/compute/instance_usage_audit_log.py | 4 +- nova/api/openstack/compute/ips.py | 6 +- nova/api/openstack/compute/keypairs.py | 93 +- nova/api/openstack/compute/limits.py | 9 +- nova/api/openstack/compute/lock_server.py | 5 +- nova/api/openstack/compute/migrate_server.py | 56 +- nova/api/openstack/compute/migrations.py | 23 +- nova/api/openstack/compute/multinic.py | 2 +- nova/api/openstack/compute/networks.py | 149 +- nova/api/openstack/compute/networks_associate.py | 59 +- nova/api/openstack/compute/pause_server.py | 3 +- nova/api/openstack/compute/quota_classes.py | 6 +- nova/api/openstack/compute/quota_sets.py | 12 +- nova/api/openstack/compute/remote_consoles.py | 3 +- nova/api/openstack/compute/rescue.py | 9 +- .../openstack/compute/rest_api_version_history.rst | 121 +- nova/api/openstack/compute/routes.py | 3 + .../openstack/compute/schemas/aggregate_images.py | 34 + nova/api/openstack/compute/schemas/migrations.py | 8 + nova/api/openstack/compute/schemas/networks.py | 77 - nova/api/openstack/compute/schemas/quota_sets.py | 2 + .../compute/schemas/server_external_events.py | 4 + nova/api/openstack/compute/schemas/servers.py | 2 +- .../openstack/compute/schemas/tenant_networks.py | 44 - nova/api/openstack/compute/schemas/volumes.py | 32 +- .../compute/security_group_default_rules.py | 117 +- nova/api/openstack/compute/security_groups.py | 123 +- nova/api/openstack/compute/server_diagnostics.py | 4 +- .../openstack/compute/server_external_events.py | 15 +- nova/api/openstack/compute/server_groups.py | 43 +- nova/api/openstack/compute/server_metadata.py | 45 +- nova/api/openstack/compute/server_migrations.py | 43 +- nova/api/openstack/compute/server_password.py | 6 +- nova/api/openstack/compute/server_tags.py | 30 +- nova/api/openstack/compute/server_topology.py | 12 +- nova/api/openstack/compute/servers.py | 100 +- nova/api/openstack/compute/services.py | 67 +- nova/api/openstack/compute/shelve.py | 26 +- nova/api/openstack/compute/suspend_server.py | 7 +- nova/api/openstack/compute/tenant_networks.py | 134 +- nova/api/openstack/compute/versions.py | 15 + nova/api/openstack/compute/views/hypervisors.py | 2 +- nova/api/openstack/compute/views/keypairs.py | 53 +- nova/api/openstack/compute/views/limits.py | 13 - nova/api/openstack/compute/views/servers.py | 143 +- nova/api/openstack/compute/volumes.py | 97 +- nova/api/openstack/urlmap.py | 19 + .../validation/extra_specs}/__init__.py | 0 nova/api/validation/extra_specs/accel.py | 36 + .../extra_specs/aggregate_instance_extra_specs.py | 72 + nova/api/validation/extra_specs/base.py | 120 + nova/api/validation/extra_specs/capabilities.py | 112 + nova/api/validation/extra_specs/hw.py | 370 ++ nova/api/validation/extra_specs/hw_rng.py | 57 + nova/api/validation/extra_specs/hw_video.py | 39 + nova/api/validation/extra_specs/null.py | 51 + nova/api/validation/extra_specs/os.py | 95 + nova/api/validation/extra_specs/pci_passthrough.py | 38 + nova/api/validation/extra_specs/powervm.py | 271 + nova/api/validation/extra_specs/quota.py | 103 + nova/api/validation/extra_specs/resources.py | 65 + nova/api/validation/extra_specs/traits.py | 73 + nova/api/validation/extra_specs/validators.py | 86 + nova/api/validation/extra_specs/vmware.py | 48 + nova/api/validation/parameter_types.py | 17 +- nova/api/wsgi.py | 38 - nova/availability_zones.py | 101 +- nova/cache_utils.py | 14 - nova/cmd/baseproxy.py | 2 + nova/cmd/common.py | 1 + nova/cmd/console.py | 51 - nova/cmd/dhcpbridge.py | 137 - nova/cmd/manage.py | 663 +-- nova/cmd/network.py | 65 - nova/cmd/status.py | 75 +- nova/cmd/xvpvncproxy.py | 42 - nova/compute/api.py | 1424 ++--- nova/compute/claims.py | 20 +- nova/compute/flavors.py | 9 - nova/compute/manager.py | 2107 ++++++-- nova/compute/resource_tracker.py | 203 +- nova/compute/rpcapi.py | 273 +- nova/compute/utils.py | 198 +- nova/conductor/api.py | 34 +- nova/conductor/manager.py | 536 +- nova/conductor/rpcapi.py | 42 +- nova/conductor/tasks/base.py | 6 +- nova/conductor/tasks/cross_cell_migrate.py | 1194 ++++- nova/conductor/tasks/live_migrate.py | 196 +- nova/conductor/tasks/migrate.py | 136 +- nova/conf/__init__.py | 10 +- nova/conf/api.py | 23 +- nova/conf/availability_zone.py | 4 + nova/conf/cinder.py | 9 +- nova/conf/compute.py | 72 +- nova/conf/console.py | 38 + nova/conf/cyborg.py | 43 + nova/conf/devices.py | 44 +- nova/conf/glance.py | 8 + nova/conf/imagecache.py | 100 + nova/conf/libvirt.py | 16 +- nova/conf/netconf.py | 18 +- nova/conf/network.py | 1442 ----- nova/conf/neutron.py | 14 + nova/conf/novnc.py | 28 +- nova/conf/osapi_v21.py | 47 - nova/conf/pci.py | 3 +- nova/conf/quota.py | 83 - nova/conf/rpc.py | 4 + nova/conf/scheduler.py | 59 +- nova/conf/upgrade_levels.py | 30 - nova/conf/vmware.py | 13 - nova/conf/vnc.py | 84 - nova/conf/workarounds.py | 80 + nova/conf/xvp.py | 63 - nova/console/__init__.py | 9 +- nova/console/api.py | 56 - nova/console/manager.py | 115 - nova/console/rpcapi.py | 77 - nova/console/websocketproxy.py | 64 +- nova/console/xvp.conf.template | 16 - nova/console/xvp.py | 183 - nova/context.py | 6 +- nova/db/api.py | 470 -- nova/db/sqlalchemy/api.py | 1534 +----- .../migrate_repo/versions/068_placeholder.py} | 13 +- .../migrate_repo/versions/069_placeholder.py} | 20 +- .../migrate_repo/versions/070_placeholder.py} | 20 +- .../migrate_repo/versions/071_placeholder.py} | 31 +- .../migrate_repo/versions/072_placeholder.py | 22 + nova/db/sqlalchemy/api_models.py | 10 + nova/db/sqlalchemy/migrate_repo/migrate.cfg | 14 +- .../versions/399_add_instances_hidden.py | 6 +- .../migrate_repo/versions/403_placeholder.py | 22 + .../migrate_repo/versions/404_placeholder.py | 22 + .../migrate_repo/versions/405_placeholder.py | 22 + .../migrate_repo/versions/406_placeholder.py | 22 + .../migrate_repo/versions/407_placeholder.py | 22 + nova/db/sqlalchemy/migration.py | 34 + nova/db/sqlalchemy/models.py | 20 +- nova/exception.py | 358 +- nova/hacking/checks.py | 134 +- nova/image/__init__.py | 17 - nova/image/api.py | 199 - nova/image/glance.py | 181 +- nova/ipv6/account_identifier.py | 55 - nova/ipv6/rfc2462.py | 44 - nova/loadables.py | 2 +- nova/locale/cs/LC_MESSAGES/nova.po | 665 +-- nova/locale/de/LC_MESSAGES/nova.po | 790 +-- nova/locale/es/LC_MESSAGES/nova.po | 709 +-- nova/locale/fr/LC_MESSAGES/nova.po | 710 +-- nova/locale/it/LC_MESSAGES/nova.po | 704 +-- nova/locale/ja/LC_MESSAGES/nova.po | 698 +-- nova/locale/ko_KR/LC_MESSAGES/nova.po | 690 +-- nova/locale/pt_BR/LC_MESSAGES/nova.po | 693 +-- nova/locale/ru/LC_MESSAGES/nova.po | 697 +-- nova/locale/tr_TR/LC_MESSAGES/nova.po | 596 +-- nova/locale/zh_CN/LC_MESSAGES/nova.po | 670 +-- nova/locale/zh_TW/LC_MESSAGES/nova.po | 650 +-- nova/monkey_patch.py | 7 + nova/network/__init__.py | 43 - nova/network/api.py | 536 -- nova/network/base_api.py | 446 -- nova/network/{neutronv2 => }/constants.py | 1 + nova/network/dns_driver.py | 44 - nova/network/driver.py | 37 - nova/network/floating_ips.py | 659 --- nova/network/l3.py | 179 - nova/network/ldapdns.py | 337 -- nova/network/linux_net.py | 1632 ------ nova/network/manager.py | 2165 -------- nova/network/minidns.py | 206 - nova/network/{neutronv2/api.py => neutron.py} | 584 +- nova/network/noop_dns_driver.py | 47 - nova/network/os_vif_util.py | 21 +- nova/network/rpcapi.py | 374 -- nova/network/security_group/neutron_driver.py | 570 -- nova/network/security_group/openstack_driver.py | 34 - nova/network/security_group/security_group_base.py | 252 - nova/network/security_group_api.py | 729 +++ nova/notifications/base.py | 8 +- nova/notifications/objects/aggregate.py | 51 + nova/notifications/objects/base.py | 4 +- nova/notifications/objects/image.py | 166 +- nova/objects/__init__.py | 5 - nova/objects/base.py | 58 +- nova/objects/build_request.py | 12 +- nova/objects/console_auth_token.py | 14 +- nova/objects/diagnostics.py | 3 +- nova/objects/dns_domain.py | 72 - nova/objects/ec2.py | 107 +- nova/objects/external_event.py | 7 +- nova/objects/fields.py | 35 +- nova/objects/fixed_ip.py | 315 -- nova/objects/floating_ip.py | 258 - nova/objects/image_meta.py | 16 +- nova/objects/instance.py | 23 +- nova/objects/instance_action.py | 21 +- nova/objects/instance_numa.py | 34 +- nova/objects/migration.py | 3 +- nova/objects/migration_context.py | 13 + nova/objects/network.py | 229 - nova/objects/network_request.py | 16 +- nova/objects/pci_device.py | 19 +- nova/objects/quotas.py | 27 +- nova/objects/request_spec.py | 135 +- nova/objects/security_group.py | 8 +- nova/objects/security_group_rule.py | 111 - nova/objects/selection.py | 36 +- nova/objects/service.py | 33 +- nova/pci/request.py | 11 +- nova/policies/__init__.py | 8 - nova/policies/admin_actions.py | 33 +- nova/policies/admin_password.py | 11 +- nova/policies/agents.py | 67 +- nova/policies/aggregates.py | 100 +- nova/policies/assisted_volume_snapshots.py | 22 +- nova/policies/attach_interfaces.py | 62 +- nova/policies/availability_zone.py | 24 +- nova/policies/base.py | 123 +- nova/policies/console_auth_tokens.py | 11 +- nova/policies/console_output.py | 11 +- nova/policies/consoles.py | 69 - nova/policies/create_backup.py | 11 +- nova/policies/deferred_delete.py | 37 +- nova/policies/evacuate.py | 11 +- nova/policies/extended_server_attributes.py | 23 +- nova/policies/flavor_access.py | 53 +- nova/policies/flavor_extra_specs.py | 63 +- nova/policies/flavor_manage.py | 33 +- nova/policies/hypervisors.py | 97 +- nova/policies/instance_actions.py | 82 +- nova/policies/instance_usage_audit_log.py | 41 +- nova/policies/ips.py | 23 +- nova/policies/keypairs.py | 45 +- nova/policies/limits.py | 40 +- nova/policies/lock_server.py | 33 +- nova/policies/migrate_server.py | 22 +- nova/policies/migrations.py | 11 +- nova/policies/networks.py | 26 - nova/policies/networks_associate.py | 50 - nova/policies/pause_server.py | 22 +- nova/policies/quota_class_sets.py | 22 +- nova/policies/quota_sets.py | 55 +- nova/policies/remote_consoles.py | 19 +- nova/policies/rescue.py | 32 +- nova/policies/security_group_default_rules.py | 56 - nova/policies/security_groups.py | 123 +- nova/policies/server_diagnostics.py | 11 +- nova/policies/server_external_events.py | 11 +- nova/policies/server_groups.py | 65 +- nova/policies/server_metadata.py | 66 +- nova/policies/server_password.py | 39 +- nova/policies/server_tags.py | 68 +- nova/policies/server_topology.py | 24 +- nova/policies/servers.py | 408 +- nova/policies/servers_migrations.py | 46 +- nova/policies/services.py | 66 +- nova/policies/shelve.py | 33 +- nova/policies/simple_tenant_usage.py | 22 +- nova/policies/suspend_server.py | 22 +- nova/policies/tenant_networks.py | 12 - nova/policies/used_limits.py | 45 - nova/policies/volumes_attachments.py | 71 +- nova/policy.py | 29 +- nova/privsep/libvirt.py | 7 - nova/privsep/linux_net.py | 282 - nova/privsep/qemu.py | 58 +- nova/privsep/utils.py | 7 - nova/quota.py | 87 +- nova/scheduler/client/report.py | 34 +- nova/scheduler/filters/numa_topology_filter.py | 6 +- nova/scheduler/host_manager.py | 11 +- nova/scheduler/manager.py | 17 +- nova/scheduler/request_filter.py | 72 +- nova/scheduler/utils.py | 290 +- nova/scheduler/weights/cross_cell.py | 63 + nova/service.py | 39 +- nova/servicegroup/drivers/db.py | 11 + nova/test.py | 211 +- .../consoles/consoles-get-resp.json.tpl | 1 - .../consoles/consoles-list-get-resp.json.tpl | 10 - .../flavor-extra-specs-create-req.json.tpl | 4 +- .../flavor-extra-specs-create-resp.json.tpl | 4 +- .../flavor-extra-specs-get-resp.json.tpl | 2 +- .../flavor-extra-specs-list-resp.json.tpl | 4 +- .../flavor-extra-specs-update-req.json.tpl | 2 +- .../flavor-extra-specs-update-resp.json.tpl | 2 +- .../flavors/v2.61/flavor-get-resp.json.tpl | 4 +- .../flavors/v2.61/flavors-detail-resp.json.tpl | 4 +- .../flavors/v2.75/flavor-get-resp.json.tpl | 4 +- .../flavors/v2.75/flavors-detail-resp.json.tpl | 4 +- .../api_samples/limits/limit-get-resp.json.tpl | 6 +- .../v2.81/aggregate-add-host-post-req.json.tpl | 5 + .../v2.81/aggregate-images-post-req.json.tpl | 6 + .../v2.81/aggregate-metadata-post-req.json.tpl | 9 + .../v2.81/aggregate-post-req.json.tpl | 7 + .../v2.81/aggregate-post-resp.json.tpl | 12 + .../v2.81/aggregate-remove-host-post-req.json.tpl | 5 + .../v2.81/aggregate-update-post-req.json.tpl | 7 + .../v2.81/aggregate-update-post-resp.json.tpl | 16 + .../v2.81/aggregates-add-host-post-resp.json.tpl | 18 + .../v2.81/aggregates-get-resp.json.tpl | 16 + .../v2.81/aggregates-list-get-resp.json.tpl | 20 + .../v2.81/aggregates-metadata-post-resp.json.tpl | 17 + .../aggregates-remove-host-post-resp.json.tpl | 16 + .../availability-zone-detail-resp.json.tpl | 7 - .../floating-ips-create-resp.json.tpl | 6 +- .../os-floating-ips/floating-ips-get-resp.json.tpl | 6 +- .../floating-ips-list-resp.json.tpl | 12 +- .../api_samples/os-hosts/hosts-list-resp.json.tpl | 5 - .../v2.33/hypervisors-detail-resp.json.tpl | 4 +- .../v2.33/hypervisors-list-resp.json.tpl | 2 +- .../v2.53/hypervisors-detail-resp.json.tpl | 2 +- .../v2.53/hypervisors-list-resp.json.tpl | 2 +- .../instance-action-get-non-admin-resp.json.tpl | 21 + .../v2.84/instance-action-get-resp.json.tpl | 24 + .../v2.84/instance-actions-list-resp.json.tpl | 24 + ...tance-actions-list-with-changes-before.json.tpl | 24 + ...stance-actions-list-with-changes-since.json.tpl | 14 + .../instance-actions-list-with-limit-resp.json.tpl | 20 + ...instance-actions-list-with-marker-resp.json.tpl | 14 + .../keypairs-get-resp.json.tpl | 0 .../keypairs-import-post-req.json.tpl | 0 .../keypairs-import-post-resp.json.tpl | 0 .../keypairs-list-resp.json.tpl | 0 .../keypairs-post-req.json.tpl | 0 .../keypairs-post-resp.json.tpl | 0 .../v2.10/keypairs-get-resp.json.tpl | 0 .../v2.10/keypairs-import-post-req.json.tpl | 0 .../v2.10/keypairs-import-post-resp.json.tpl | 0 .../v2.10/keypairs-list-resp.json.tpl | 0 .../v2.10/keypairs-post-req.json.tpl | 0 .../v2.10/keypairs-post-resp.json.tpl | 0 .../v2.2/keypairs-get-resp.json.tpl | 0 .../v2.2/keypairs-import-post-req.json.tpl | 0 .../v2.2/keypairs-import-post-resp.json.tpl | 0 .../v2.2/keypairs-list-resp.json.tpl | 0 .../v2.2/keypairs-post-req.json.tpl | 0 .../v2.2/keypairs-post-resp.json.tpl | 0 .../v2.35/keypairs-list-resp.json.tpl | 2 +- .../v2.35/keypairs-list-user1-resp.json.tpl | 0 .../v2.35/keypairs-list-user2-resp.json.tpl | 2 +- .../v2.35/keypairs-post-req.json.tpl | 0 .../v2.35/keypairs-post-resp.json.tpl | 0 .../migrations-get-with-changes-before.json.tpl | 32 + .../migrations-get-with-changes-since.json.tpl | 40 + .../v2.80/migrations-get-with-limit.json.tpl | 26 + .../v2.80/migrations-get-with-marker.json.tpl | 32 + ...migrations-get-with-user-or-project-id.json.tpl | 50 + .../os-migrations/v2.80/migrations-get.json.tpl | 86 + .../network-associate-host-req.json.tpl | 3 - .../network-disassociate-host-req.json.tpl | 3 - .../network-disassociate-project-req.json.tpl | 3 - .../network-disassociate-req.json.tpl | 3 - .../os-networks/network-add-req.json.tpl | 3 - .../os-networks/network-create-req.json.tpl | 12 - .../os-networks/network-create-resp.json.tpl | 36 - .../os-networks/network-show-resp.json.tpl | 44 +- .../os-networks/networks-list-resp.json.tpl | 70 +- .../quota-classes-show-get-resp.json.tpl | 7 +- .../quota-classes-update-post-req.json.tpl | 9 +- .../quota-classes-update-post-resp.json.tpl | 7 +- .../quotas-show-defaults-get-resp.json.tpl | 3 +- .../quotas-show-detail-get-resp.json.tpl | 5 - .../quotas-show-get-resp.json.tpl | 3 +- .../quotas-update-force-post-resp.json.tpl | 3 +- .../quotas-update-post-resp.json.tpl | 3 +- .../user-quotas-show-get-resp.json.tpl | 3 +- .../user-quotas-update-post-resp.json.tpl | 3 +- .../quotas-show-defaults-get-resp.json.tpl | 9 +- .../quotas-show-detail-get-resp.json.tpl | 11 +- .../os-quota-sets/quotas-show-get-resp.json.tpl | 9 +- .../quotas-update-force-post-resp.json.tpl | 9 +- .../os-quota-sets/quotas-update-post-req.json.tpl | 2 +- .../os-quota-sets/quotas-update-post-resp.json.tpl | 11 +- .../user-quotas-show-get-resp.json.tpl | 9 +- .../user-quotas-update-post-resp.json.tpl | 9 +- .../get-rdp-console-post-resp.json.tpl | 2 +- .../get-serial-console-post-resp.json.tpl | 2 +- .../get-spice-console-post-resp.json.tpl | 2 +- .../os-rescue/server-get-resp-rescue.json.tpl | 2 +- .../os-rescue/server-get-resp-unrescue.json.tpl | 2 +- .../v2.87/server-get-resp-rescue.json.tpl | 87 + .../v2.87/server-get-resp-unrescue.json.tpl | 88 + .../server-rescue-req-with-image-ref.json.tpl | 6 + .../os-rescue/v2.87/server-rescue-req.json.tpl | 5 + .../os-rescue/v2.87/server-rescue.json.tpl | 3 + .../os-rescue/v2.87/server-unrescue-req.json.tpl | 3 + ...ecurity-group-default-rules-create-req.json.tpl | 8 - ...curity-group-default-rules-create-resp.json.tpl | 11 - ...security-group-default-rules-list-resp.json.tpl | 13 - ...security-group-default-rules-show-resp.json.tpl | 11 - .../v2.26/server-tags-show-details-resp.json.tpl | 4 +- .../v2.26/servers-tags-details-resp.json.tpl | 2 +- .../v2.40/simple-tenant-usage-get-all.json.tpl | 6 +- .../os-tenant-networks/networks-list-res.json.tpl | 11 +- .../os-tenant-networks/networks-post-req.json.tpl | 9 - .../os-tenant-networks/networks-post-res.json.tpl | 7 - .../v2.85/attach-volume-to-server-req.json.tpl | 7 + .../v2.85/attach-volume-to-server-resp.json.tpl | 10 + .../v2.85/list-volume-attachments-resp.json.tpl | 20 + ...date-volume-attachment-delete-flag-req.json.tpl | 10 + .../os-volumes/v2.85/update-volume-req.json.tpl | 5 + .../v2.85/volume-attachment-detail-resp.json.tpl | 10 + .../v2.80/live-migrate-server.json.tpl | 6 + .../v2.80/migrations-get.json.tpl | 23 + .../v2.80/migrations-index.json.tpl | 25 + .../servers/availability-zone-detail-resp.json.tpl | 48 - .../api_samples/servers/server-get-resp.json.tpl | 2 +- .../servers/server-update-resp.json.tpl | 2 +- .../servers/servers-details-resp.json.tpl | 2 +- .../servers/v2.16/server-get-resp.json.tpl | 2 +- .../servers/v2.16/servers-details-resp.json.tpl | 2 +- .../servers/v2.19/server-get-resp.json.tpl | 2 +- .../servers/v2.19/servers-details-resp.json.tpl | 2 +- .../servers/v2.3/server-get-resp.json.tpl | 2 +- .../servers/v2.3/servers-details-resp.json.tpl | 2 +- .../servers/v2.32/server-create-req.json.tpl | 2 +- .../servers/v2.42/server-create-req.json.tpl | 2 +- .../servers/v2.47/server-get-resp.json.tpl | 2 +- .../servers/v2.47/server-update-resp.json.tpl | 2 +- .../servers/v2.47/servers-details-resp.json.tpl | 2 +- .../servers/v2.52/server-get-resp.json.tpl | 2 +- .../servers/v2.52/servers-details-resp.json.tpl | 2 +- .../servers/v2.63/server-get-resp.json.tpl | 2 +- .../servers/v2.63/server-update-resp.json.tpl | 2 +- .../servers/v2.63/servers-details-resp.json.tpl | 2 +- .../servers-details-with-changes-before.json.tpl | 2 +- .../servers/v2.67/server-create-req.json.tpl | 2 +- .../servers/v2.69/servers-details-resp.json.tpl | 2 +- .../servers/v2.71/server-get-resp.json.tpl | 2 +- .../servers/v2.71/server-update-resp.json.tpl | 2 +- .../v2.73/server-action-rebuild-resp.json.tpl | 2 +- .../servers/v2.73/server-get-resp.json.tpl | 4 +- .../servers/v2.73/server-update-resp.json.tpl | 2 +- .../servers/v2.73/servers-details-resp.json.tpl | 2 +- .../v2.75/server-action-rebuild-resp.json.tpl | 4 +- .../servers/v2.75/server-update-resp.json.tpl | 4 +- .../servers/v2.9/server-get-resp.json.tpl | 2 +- .../servers/v2.9/servers-details-resp.json.tpl | 2 +- .../test_security_group_default_rules.py | 22 +- .../functional/compute/test_live_migration.py | 10 +- .../functional/compute/test_resource_tracker.py | 30 +- .../functional/libvirt/test_pci_sriov_servers.py | 154 +- .../functional/libvirt/test_report_cpu_traits.py | 18 +- .../libvirt/test_shared_resource_provider.py | 53 +- .../notification_sample_base.py | 11 +- .../functional/regressions/test_bug_1404867.py | 5 +- .../functional/regressions/test_bug_1595962.py | 10 +- .../functional/regressions/test_bug_1669054.py | 14 +- .../functional/regressions/test_bug_1670627.py | 8 +- .../functional/regressions/test_bug_1675570.py | 8 +- .../functional/regressions/test_bug_1678326.py | 4 +- .../functional/regressions/test_bug_1679750.py | 19 +- .../functional/regressions/test_bug_1682693.py | 12 +- .../functional/regressions/test_bug_1689692.py | 12 +- .../functional/regressions/test_bug_1702454.py | 15 +- .../functional/regressions/test_bug_1713783.py | 11 +- .../functional/regressions/test_bug_1718455.py | 8 +- .../functional/regressions/test_bug_1718512.py | 17 +- .../functional/regressions/test_bug_1719730.py | 3 +- .../functional/regressions/test_bug_1732947.py | 5 +- .../functional/regressions/test_bug_1735407.py | 10 +- .../functional/regressions/test_bug_1741125.py | 12 +- .../functional/regressions/test_bug_1741307.py | 9 +- .../functional/regressions/test_bug_1746483.py | 2 +- .../functional/regressions/test_bug_1746509.py | 62 - .../functional/regressions/test_bug_1764556.py | 15 +- .../functional/regressions/test_bug_1764883.py | 11 +- .../functional/regressions/test_bug_1780373.py | 6 +- .../functional/regressions/test_bug_1781286.py | 172 + .../functional/regressions/test_bug_1781710.py | 6 +- .../functional/regressions/test_bug_1784353.py | 2 +- .../functional/regressions/test_bug_1790204.py | 13 +- .../functional/regressions/test_bug_1794996.py | 3 +- .../functional/regressions/test_bug_1797580.py | 12 +- .../functional/regressions/test_bug_1806064.py | 5 +- .../functional/regressions/test_bug_1806515.py | 2 +- .../functional/regressions/test_bug_1815153.py | 47 +- .../functional/regressions/test_bug_1823370.py | 22 +- .../functional/regressions/test_bug_1825020.py | 6 +- .../functional/regressions/test_bug_1825034.py | 20 +- .../functional/regressions/test_bug_1825537.py | 2 +- .../functional/regressions/test_bug_1830747.py | 15 +- .../functional/regressions/test_bug_1831771.py | 96 + .../functional/regressions/test_bug_1835822.py | 11 +- .../functional/regressions/test_bug_1837955.py | 9 +- .../functional/regressions/test_bug_1843090.py | 52 +- .../functional/regressions/test_bug_1845291.py | 76 + .../functional/regressions/test_bug_1848343.py | 149 + .../functional/regressions/test_bug_1849165.py | 64 + .../functional/regressions/test_bug_1849409.py | 59 + .../functional/regressions/test_bug_1852458.py | 79 + .../functional/regressions/test_bug_1862633.py | 89 + .../test_conf_max_attach_disk_devices.py | 10 +- .../test_legacy_v2_compatible_wrapper.py | 10 +- .../functional/test_list_servers_ip_filter.py | 4 +- .../functional/test_server_external_events.py | 26 +- .../unit/accelerator}/__init__.py | 0 .../openstack/compute/admin_only_action_common.py | 8 +- .../unit/api/openstack/compute/test_access_ips.py | 21 +- .../api/openstack/compute/test_admin_actions.py | 40 - .../api/openstack/compute/test_admin_password.py | 78 +- .../unit/api/openstack/compute/test_agents.py | 57 - .../unit/api/openstack/compute/test_aggregates.py | 137 +- .../openstack/compute/test_attach_interfaces.py | 99 +- .../openstack/compute/test_availability_zone.py | 120 +- .../api/openstack/compute/test_certificates.py | 4 +- .../unit/api/openstack/compute/test_cloudpipe.py | 2 +- .../api/openstack/compute/test_console_output.py | 20 - .../unit/api/openstack/compute/test_consoles.py | 299 -- .../api/openstack/compute/test_create_backup.py | 32 +- .../api/openstack/compute/test_deferred_delete.py | 92 +- .../unit/api/openstack/compute/test_disk_config.py | 43 +- .../unit/api/openstack/compute/test_evacuate.py | 103 +- .../openstack/compute/test_extended_hypervisors.py | 5 +- .../api/openstack/compute/test_extended_ips.py | 4 +- .../api/openstack/compute/test_extended_ips_mac.py | 4 +- .../api/openstack/compute/test_flavor_access.py | 50 +- .../api/openstack/compute/test_flavor_disabled.py | 2 +- .../api/openstack/compute/test_flavor_manage.py | 74 +- .../api/openstack/compute/test_flavorextradata.py | 2 +- .../unit/api/openstack/compute/test_flavors.py | 38 +- .../openstack/compute/test_flavors_extra_specs.py | 283 +- .../openstack/compute/test_floating_ip_pools.py | 17 +- .../api/openstack/compute/test_floating_ips.py | 912 +--- .../openstack/compute/test_hypervisor_status.py | 5 +- .../unit/api/openstack/compute/test_hypervisors.py | 64 +- .../api/openstack/compute/test_image_metadata.py | 109 +- .../unit/api/openstack/compute/test_images.py | 32 +- .../api/openstack/compute/test_instance_actions.py | 97 +- .../compute/test_instance_usage_audit_log.py | 29 - .../unit/api/openstack/compute/test_keypairs.py | 128 +- .../unit/api/openstack/compute/test_limits.py | 53 +- .../unit/api/openstack/compute/test_lock_server.py | 130 - .../api/openstack/compute/test_microversions.py | 58 +- .../api/openstack/compute/test_migrate_server.py | 57 +- .../unit/api/openstack/compute/test_migrations.py | 75 +- .../unit/api/openstack/compute/test_multinic.py | 2 +- .../unit/api/openstack/compute/test_networks.py | 691 +-- .../compute/test_neutron_security_groups.py | 911 ---- .../api/openstack/compute/test_pause_server.py | 73 - .../api/openstack/compute/test_quota_classes.py | 41 +- .../unit/api/openstack/compute/test_quotas.py | 163 +- .../api/openstack/compute/test_remote_consoles.py | 91 +- .../unit/api/openstack/compute/test_rescue.py | 99 +- .../compute/test_security_group_default_rules.py | 362 -- .../api/openstack/compute/test_security_groups.py | 1307 ++--- .../api/openstack/compute/test_server_actions.py | 96 +- .../openstack/compute/test_server_diagnostics.py | 30 +- .../compute/test_server_external_events.py | 56 +- .../api/openstack/compute/test_server_groups.py | 17 +- .../api/openstack/compute/test_server_metadata.py | 77 +- .../openstack/compute/test_server_migrations.py | 78 +- .../api/openstack/compute/test_server_password.py | 27 - .../openstack/compute/test_server_reset_state.py | 1 + .../openstack/compute/test_server_start_stop.py | 3 +- .../unit/api/openstack/compute/test_server_tags.py | 86 +- .../api/openstack/compute/test_server_topology.py | 32 +- .../unit/api/openstack/compute/test_serversV21.py | 1675 +++--- .../unit/api/openstack/compute/test_services.py | 159 +- .../unit/api/openstack/compute/test_shelve.py | 142 +- .../unit/api/openstack/compute/test_snapshots.py | 6 +- .../api/openstack/compute/test_suspend_server.py | 71 - .../api/openstack/compute/test_tenant_networks.py | 277 +- .../unit/api/openstack/compute/test_urlmap.py | 25 +- .../unit/api/openstack/compute/test_versions.py | 26 +- .../unit/api/openstack/compute/test_volumes.py | 605 ++- .../unit/api/openstack/test_api_version_request.py | 8 +- .../unit/api/validation/extra_specs/__init__.py | 0 .../api/validation/extra_specs/test_validators.py | 133 + .../conductor/tasks/test_cross_cell_migrate.py | 1262 ++++- .../unit/conductor/tasks/test_live_migrate.py | 311 +- .../network/{test_neutronv2.py => test_neutron.py} | 5391 ++++++++++--------- ...st_neutron_driver.py => test_security_group.py} | 135 +- .../notifications/objects/test_notification.py | 10 +- .../policies/test_assisted_volume_snapshots.py | 98 + .../unit/policies/test_console_auth_tokens.py | 88 + .../unit/policies/test_instance_usage_audit_log.py | 109 + .../unit/policies/test_server_external_events.py | 101 + .../unit/policies/test_simple_tenant_usage.py | 129 + .../{test_scheduler.py => test_manager.py} | 42 - .../unit/scheduler/weights/test_cross_cell.py | 142 + .../unit/servicegroup/test_db_servicegroup.py | 11 +- .../unit/virt/hyperv/test_livemigrationops.py | 20 +- .../unit/virt/xenapi/image/test_vdi_stream.py | 2 +- nova/utils.py | 156 +- nova/virt/block_device.py | 95 +- nova/virt/driver.py | 141 +- nova/virt/fake.py | 112 +- nova/virt/firewall.py | 429 -- nova/virt/hardware.py | 35 +- nova/virt/hyperv/README.rst | 2 +- nova/virt/hyperv/driver.py | 19 +- nova/virt/hyperv/imagecache.py | 5 +- nova/virt/hyperv/livemigrationops.py | 9 +- nova/virt/hyperv/vif.py | 49 +- nova/virt/hyperv/vmops.py | 7 +- nova/virt/imagecache.py | 3 +- nova/virt/images.py | 62 +- nova/virt/ironic/driver.py | 103 +- nova/virt/libvirt/blockinfo.py | 200 +- nova/virt/libvirt/config.py | 115 + nova/virt/libvirt/designer.py | 11 +- nova/virt/libvirt/driver.py | 1313 +++-- nova/virt/libvirt/firewall.py | 353 -- nova/virt/libvirt/guest.py | 40 +- nova/virt/libvirt/host.py | 28 +- nova/virt/libvirt/imagebackend.py | 23 +- nova/virt/libvirt/imagecache.py | 11 +- nova/virt/libvirt/migration.py | 55 +- nova/virt/libvirt/storage/rbd_utils.py | 6 +- nova/virt/libvirt/utils.py | 7 +- nova/virt/libvirt/vif.py | 174 +- nova/virt/libvirt/volume/net.py | 58 +- nova/virt/libvirt/volume/remotefs.py | 4 +- nova/virt/netutils.py | 20 +- nova/virt/powervm/disk/localdisk.py | 4 +- nova/virt/powervm/disk/ssp.py | 4 +- nova/virt/powervm/driver.py | 34 +- nova/virt/powervm/media.py | 2 +- nova/virt/powervm/volume/fcvscsi.py | 4 +- nova/virt/virtapi.py | 3 + nova/virt/vmwareapi/driver.py | 26 +- nova/virt/vmwareapi/imagecache.py | 3 +- nova/virt/vmwareapi/images.py | 4 +- nova/virt/vmwareapi/network_util.py | 99 - nova/virt/vmwareapi/vif.py | 79 +- nova/virt/vmwareapi/vim_util.py | 10 + nova/virt/vmwareapi/vm_util.py | 51 +- nova/virt/vmwareapi/vmops.py | 49 +- nova/virt/vmwareapi/volumeops.py | 20 +- nova/virt/xenapi/driver.py | 39 +- nova/virt/xenapi/firewall.py | 60 - nova/virt/xenapi/image/utils.py | 4 +- nova/virt/xenapi/image/vdi_stream.py | 4 +- nova/virt/xenapi/vm_utils.py | 2 +- nova/virt/xenapi/vmops.py | 52 +- nova/virt/zvm/driver.py | 55 +- nova/vnc/xvp_proxy.py | 175 - nova/volume/cinder.py | 27 +- playbooks/legacy/nova-grenade-multinode/run.yaml | 9 +- playbooks/legacy/nova-live-migration/run.yaml | 1 + playbooks/nova-multi-cell/pre.yaml | 7 + ...eritable-image-properties-85f7f304fdc20b61.yaml | 37 + .../accelerator-requests-6c9a6fef77ab776a.yaml | 14 + ...live-migration-with-vpmem-9af5057dbe551f3b.yaml | 8 + ...lter-instance-more-filter-ea5abad7c32ff328.yaml | 17 + .../avoid_muli_ceph_download-4083decf501dba40.yaml | 19 + ...ction-event-fault-details-8bfabc6e7390446a.yaml | 8 + ...d-to-the-migrations-table-af5989e74634b9c4.yaml | 20 + ...-instance-with-datavolume-4c71b12e005832b0.yaml | 8 + ...p-policy-defaults-refresh-b8e6e2d6b1a7bc21.yaml | 137 + ...n-in-server-attach-volume-5d08b4e97fdd24f9.yaml | 3 +- ...g-1694844-cross-az-attach-ab1f05e8693f6902.yaml | 18 + ...TE_SAME_HOST_COLD_MIGRATE-19ed64bf48bb1fc7.yaml | 18 + .../notes/bug-1834506-7c6875bbdc32ab0b.yaml | 4 + .../notes/bug-1842149-5ba20d57872e9996.yaml | 17 + .../notes/bug-1845628-3152e73a1e4856b2.yaml | 13 + .../notes/bug-1845986-70730d9f6c09e68b.yaml | 14 + ...458-cell0-instance-action-e3112cf17bcc7c64.yaml | 11 + ...ce-delete-with-migrations-ca0565fc0b503519.yaml | 10 + ...eck-source-compute-resize-16e9c3b24cf72301.yaml | 8 + .../notes/bug-1864588-737c29560effd16e.yaml | 6 + .../notes/bug-1875418-0df3198e36530ec7.yaml | 31 + ...-detect-nonbootable-image-6fad7f865b45f879.yaml | 9 + .../notes/cross-cell-resize-37a735adadbafe91.yaml | 7 + ...api-auth_strategy-noauth2-ed29c499a68b08ce.yaml | 7 + ...recate-glance-api_servers-d05695ea52b831e0.yaml | 8 + ...cate-scheduler-driver-opt-4d6a266590b52e2c.yaml | 11 + .../deprecate-vmware-ussuri-39e0215eca80ffd7.yaml | 6 + .../notes/drop-python-2-7-73d3113c69d724d6.yaml | 5 + ...vor-extra-spec-validators-76d1f2e52ba753db.yaml | 21 + ...ost_status_unknown_policy-839cfda56b610d39.yaml | 17 + ...age-metadata-prefiltering-2921c1d38951f7a9.yaml | 11 + .../notes/image-precaching-d46506568fefa1ea.yaml | 15 + ...age_cache-conf-opts-moved-e552e4a2d59e056e.yaml | 22 + ...en_after_upgrade_to_train-9ce4731f31bc6bd2.yaml | 19 + ...eutron-connection-retries-c276010afe238abc.yaml | 12 + .../new-COMPUTE_NODE-trait-06701d03b17d179f.yaml | 12 + .../notes/numa-rebuild-b75f9a1966f576ea.yaml | 29 + .../notes/placement-audit-59a00dcfb188c6ac.yaml | 11 + ...ister-allocation-per-cell-9177b3e2161a632c.yaml | 4 + ...ted-cinder-options-newton-fc3dce6856101ef8.yaml | 2 +- ...ted-osapi_v21-conf-option-42d11017ec5db5a7.yaml | 4 + .../remove-nova-console-5a2b86210a43e7c8.yaml | 27 + .../remove-nova-network-c02953ba72a1795d.yaml | 136 + .../remove-nova-xvpvncproxy-1c189cdff4b133e8.yaml | 18 + ...remove_security_group_api-6fefb1a355876e83.yaml | 2 +- .../resize-api-cast-always-7eb1dbef8f7fe228.yaml | 12 + ...ume-policy-for-attachment-e4c20d4907a52fa7.yaml | 8 + ...riov-numa-affinity-policy-b49858452827c727.yaml | 13 + .../notes/stable_rescue_bfv-cd0e9f0f7e9eaa25.yaml | 10 + ...rts-with-resource-request-c41598d0e4aef37b.yaml | 6 + ...nauthed-version-discovery-cc38986617dc1c02.yaml | 22 + .../notes/ussuri-prelude-4b96f1244cefcdf4.yaml | 67 + .../ussuri-rm-non-upt-compat-b2847eb93bb609a9.yaml | 8 + .../vgpu-multiple-types-2b1ded7d1cc28880.yaml | 8 + .../notes/virtio-max-queues-27f73e988c7e66ba.yaml | 15 + .../virtio-rng-by-default-9cc1366ed1634129.yaml | 9 + ...bvirt-disable-native-luks-a4eccca8019db243.yaml | 26 + ...rt-rbd-host-block-devices-ca5e3c187342ab4d.yaml | 23 + releasenotes/source/index.rst | 1 + releasenotes/source/liberty.rst | 12 +- .../locale/en_GB/LC_MESSAGES/releasenotes.po | 355 -- .../source/locale/fr/LC_MESSAGES/releasenotes.po | 129 - .../source/locale/ja/LC_MESSAGES/releasenotes.po | 5612 -------------------- .../locale/ko_KR/LC_MESSAGES/releasenotes.po | 862 --- releasenotes/source/mitaka.rst | 34 +- releasenotes/source/train.rst | 6 + requirements.txt | 20 +- roles/setup-multi-cell-policy/README.rst | 10 + roles/setup-multi-cell-policy/defaults/main.yaml | 1 + roles/setup-multi-cell-policy/tasks/main.yaml | 18 + setup.cfg | 57 +- test-requirements.txt | 5 +- tools/flake8wrap.sh | 7 + tools/nova-manage.bash_completion | 36 +- tox.ini | 140 +- 1374 files changed, 63759 insertions(+), 78271 deletions(-) Requirements updates -------------------- diff --git a/requirements.txt b/requirements.txt index 9524d9ceeb..1ab8c54bdb 100644 --- a/requirements.txt +++ b/requirements.txt @@ -21 +21 @@ PrettyTable<0.8,>=0.7.1 # BSD -sqlalchemy-migrate>=0.11.0 # Apache-2.0 +sqlalchemy-migrate>=0.13.0 # Apache-2.0 @@ -26 +25,0 @@ Babel!=2.4.0,>=2.3.4 # BSD -enum34>=1.0.4;python_version=='2.7' or python_version=='2.6' or python_version=='3.3' # BSD @@ -36 +35 @@ stevedore>=1.20.0 # Apache-2.0 -websockify>=0.8.0 # LGPLv3 +websockify>=0.9.0 # LGPLv3 @@ -38 +37 @@ oslo.cache>=1.26.0 # Apache-2.0 -oslo.concurrency>=3.26.0 # Apache-2.0 +oslo.concurrency>=3.29.0 # Apache-2.0 @@ -40 +39 @@ oslo.config>=6.1.0 # Apache-2.0 -oslo.context>=2.19.2 # Apache-2.0 +oslo.context>=2.21.0 # Apache-2.0 @@ -45 +44 @@ oslo.upgradecheck>=0.1.1 -oslo.utils>=3.40.2 # Apache-2.0 +oslo.utils>=4.1.0 # Apache-2.0 @@ -48,2 +47,2 @@ oslo.rootwrap>=5.8.0 # Apache-2.0 -oslo.messaging>=7.0.0 # Apache-2.0 -oslo.policy>=1.35.0 # Apache-2.0 +oslo.messaging>=10.3.0 # Apache-2.0 +oslo.policy>=3.1.0 # Apache-2.0 @@ -57 +56 @@ oslo.versionedobjects>=1.35.0 # Apache-2.0 -os-brick>=2.6.1 # Apache-2.0 +os-brick>=3.0.1 # Apache-2.0 @@ -59 +58 @@ os-resource-classes>=0.4.0 # Apache-2.0 -os-traits>=0.16.0 # Apache-2.0 +os-traits>=2.2.0 # Apache-2.0 @@ -74,0 +74 @@ openstacksdk>=0.35.0 # Apache-2.0 +dataclasses>=0.7;python_version=='3.6' # Apache 2.0 License diff --git a/test-requirements.txt b/test-requirements.txt index c8c8cb1c50..b04b42b0df 100644 --- a/test-requirements.txt +++ b/test-requirements.txt @@ -5,2 +5 @@ -hacking>=1.1.0,<1.2.0 # Apache-2.0 -contextlib2>=0.5.5;python_version<'3.0' # PSF License +hacking>=2.0<2.1 @@ -11 +9,0 @@ mock>=3.0.0 # BSD -mox3>=0.20.0 # Apache-2.0 @@ -14 +11,0 @@ PyMySQL>=0.7.6 # MIT License -pycodestyle>=2.0.0 # MIT License
participants (1)
-
no-reply@openstack.org