Commit Graph

58038 Commits

Author SHA1 Message Date
Stephen Finucane 9d1683f70f virt: Remove 'get_all_bw_counters' API
This one is a little more involved because there are persistent objects
and versioned notifications to worry about, neither of which we can
remove right now.

Change-Id: Ic7c330ee1cccdc44a2a555c16cb6090eecbf6ce1
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
2020-11-24 15:29:21 +00:00
Stephen Finucane 68bc87876f virt: Remove 'reset_network' API
This one is tied into an admin action in the server actions API, which
means we must remove that API action also. Otherwise, this isn't too
crazy.

Change-Id: I58343b94b67915062d044fa0f53aeab01b77738f
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
2020-11-23 15:55:50 +00:00
Stephen Finucane 30067be9bd virt: Remove 'change_instance_metadata' API
This was used to propagate the metadata changes to the hypervisor. For
all non-XenAPI drivers, we still allow updating instance metadata via
the API (i.e. '/servers/{server_id}/metadata') but this simply changes
what is exposed via the metadata API.

Change-Id: Ibd0ffd9906e7d7f22a9233539091d450e8023f07
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
2020-11-17 11:42:08 +00:00
Stephen Finucane e13e8c8cd4 api-ref: Move 'os-agents' API to obsolete section
Follow up for change I9512f605dd2b3b0e88c951ed086250d57056303d.

Change-Id: Ia627bab8ed911baf329e0bda385beb2ffcbbe7d6
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
2020-11-17 11:25:07 +00:00
Zuul 43b8df3ae8 Merge "Remove compute service level check for qos ops" 2020-11-15 08:19:55 +00:00
Zuul b16050eeab Merge "Remove [database]connection defaulting" 2020-11-14 18:42:59 +00:00
Zuul 2486987720 Merge "objects: Remove Agent, AgentList" 2020-11-14 14:42:25 +00:00
Zuul ff3170fbd6 Merge "Fix unplugging VIF when migrate/resize VM" 2020-11-14 11:51:22 +00:00
Zuul eb6ce97544 Merge "api: Remove 'os-agents' API" 2020-11-14 10:06:44 +00:00
Zuul eadd32657f Merge "Add functional-py39 testing" 2020-11-14 05:36:35 +00:00
Zuul 20572809f2 Merge "functional: Wait for revert resize to complete" 2020-11-13 13:40:14 +00:00
Stephen Finucane 1d23b358d6 functional: Wait for revert resize to complete
When reverting a resize, we need to wait for the migration status to
change to 'reverted', but we also need to wait for the relevant
versioned notification to be emitted. The reason for this is noted in a
couple of places, including the '_revert_resize' helper in the
'nova.tests.functional.integrated_helpers.InstanceHelperMixin' module:

  [T]he migration status is changed to "reverted" in the dest host
  revert_resize method but the allocations are cleaned up in the source
  host finish_revert_resize method so we need to wait for the
  finish_revert_resize method to complete.

Two tests in the 'test_cross_cell_migrate' test module were not doing
this wait, resulting in intermittent failures in CI due to the races.
Resolve this now.

Change-Id: I3ec6cae19b362ac9cc311a979f680cf64db4f458
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
Closes-Bug: #1904051
2020-11-12 19:41:27 +00:00
Balazs Gibizer 3fcaf579a2 Add functional-py39 testing
This patch adds both a tox target and a zuul job to run functional tests
with python3.9

Depends-On: https://review.opendev.org/760932

Change-Id: I672904e9bfb45a66a82331063c7d49c4bc0439df
2020-11-11 17:34:00 -06:00
Zuul eb279e9a56 Merge "Update contributor guide for Wallaby" 2020-11-11 22:16:03 +00:00
Takashi Natsume bf47afd70a Update contributor guide for Wallaby
Change-Id: I8ce10c7dad73da2c2269282b9f2350a230e3aa84
Signed-off-by: Takashi Natsume <takanattie@gmail.com>
2020-11-11 12:54:35 +00:00
Balazs Gibizer 798f06abb2 Remove [database]connection defaulting
The config documentation says that the [database]connection config is
defaulted to None but in reality the nova code defaulted it to a local
sqlite database. This is clearly wrong as:

* Nobody wants to run nova with sqlite outside of a test env

* The nova-compute service should never have DB credentials configured

So this patch makes sure that nova does not change the default of this
config option.

Change-Id: I81560b3ba3dbaccdb90b32ed1a3c4ffd8a6283a6
Closes-Bug: #1903824
2020-11-11 10:50:44 +01:00
Balazs Gibizer 3b44275868 Improve error handling during service level check
The service level check introduced in
Ie15ec8299ae52ae8f5334d591ed3944e9585cf71 should handle the case when a
compute service is wrongly configured with DB credentials. The previous
patch did not handle this and it caused a misleading error at compute
service startup. This patch makes sure that a user friendly warning is
logged in this case then the service level check is done ignoring the DB
configuration and only checking the local cell.

A subsequent patch will add a separate check that fails the compute
service startup in such invalid configuration.

Change-Id: I89cdf3852266ed93a2ac7cd6261fe269932026ac
Related-Bug: #1871482
2020-11-10 17:39:50 +01:00
Zuul dc93e3b510 Merge "rbd: Only log import failures when the RbdDriver is used" 2020-11-09 23:51:46 +00:00
Zuul 4f2540a7a6 Merge "virt: Remove 'get_per_instance_usage' API" 2020-11-09 18:50:31 +00:00
Dat Le 66c7f00e1d Fix unplugging VIF when migrate/resize VM
When migrating/resizing VM to destination
host that has VIF type difference from source VIF
type, it fails due to exception in unplugging
VIF on source host after user perform a confirmation
action.

This change unplugs the vifs in resize_instance and
wraps the call to unplug in confirm with an try except
block. the call to unplug_vifs in confirm is not removed
to support rolling upgrades but a todo is added to remove
it after the Wallaby release.

Change-Id: I2c195df5fcf844c0587933b5b5995bdca1a3ebed
Closes-Bug: #1895220
2020-11-09 17:27:40 +00:00
Zuul d6689e316c Merge "Remove six.byte2int/int2byte" 2020-11-09 16:34:22 +00:00
Zuul 6898cf2765 Merge "Remove six.iteritems/itervalues/iterkeys" 2020-11-09 16:34:13 +00:00
Zuul 80b807a4c5 Merge "Remove six.moves" 2020-11-09 16:05:06 +00:00
Balazs Gibizer c163205489 Remove compute service level check for qos ops
To support move operations with qos ports both the source and the
destination compute hosts need to be on Ussuri level. We have service
level checks implemented in Ussuri. In Victoria we could remove those
checks as nova only supports compatibility between N and N-1 computes.
But we kept them there just for extra safety. In the meanwhile we
codified [1] the rule that nova does not support N-2 computes any
more. So in Wallaby we can assume that the oldest compute is already
on Victoria (Ussuri would be enough too).

So this patch removes the unnecessary service level checks and related
test cases.

[1] Ie15ec8299ae52ae8f5334d591ed3944e9585cf71

Change-Id: I14177e35b9d6d27d49e092604bf0f288cd05f57e
2020-11-09 16:13:51 +01:00
Lee Yarwood 4916ab7a4c rbd: Only log import failures when the RbdDriver is used
Rework Ie8bb5e5622bd37dfe8073cca12f77174e8e7d98c so we only log failures
to import the rbd or rados modules when the RbdDriver is used.

This should reduce noise in the logs at runtime as well as during unit
and functional tests runs where these modules are not present.

Change-Id: I150e70629f6ae579ccfe0bf585c8a27df14fb51d
Closes-Bug: #1903316
2020-11-09 10:22:12 +00:00
Lee Yarwood be752b8175 zuul: Reintroduce nova-dsvm-multinode-base
This was incorrectly removed by
Ib342e2d3c395830b4667a60de7e492d3b9de2f0a while still being used by the
nova-grenade-multinode job. This was missed as the check queue appears
to default to silently skipping jobs where it can't find the parent
instead of failing.

Change-Id: I3ece71ab75a28a0ba662c56fb140525e8ce4aa6c
2020-11-09 08:52:41 +00:00
Zuul 321d2906f8 Merge "Add upgrade check about old computes" 2020-11-08 12:27:47 +00:00
Zuul bf0f9b1bd7 Merge "trivial: Remove irrelevant comment" 2020-11-08 09:53:00 +00:00
Zuul 8584a82e25 Merge "virt: Remove various aggregate APIs" 2020-11-08 09:45:13 +00:00
Zuul d97cb3b9bd Merge "Prevent starting services with older than N-1 computes" 2020-11-08 04:30:15 +00:00
Zuul ccb0ab1d0a Merge "virt: Remove 'set_bootable' API" 2020-11-07 14:55:57 +00:00
Zuul 120d866df7 Merge "Allow excluding image type capabilities" 2020-11-07 08:27:51 +00:00
Takashi Natsume f6d74eabfc Remove six.byte2int/int2byte
Replace the following items with Python 3 style code.

- six.byte2int
- six.int2byte
- six.u
- six.b
- six.unichr
- six.get_method_self
- six.wraps

Subsequent patches will replace other six usages.

Change-Id: I931e717cd18b866c9577089b1237b663513c173e
Implements: blueprint six-removal
Signed-off-by: Takashi Natsume <takanattie@gmail.com>
2020-11-07 03:25:40 +00:00
Takashi Natsume 28ad7c517d Remove six.iteritems/itervalues/iterkeys
Replace the following items with Python 3 style code.

- six.iteritems
- six.itervalues
- six.iterkeys

Subsequent patches will replace other six usages.

Change-Id: Id55de3a105bedcf61bcfc797aabe86d6e75709c8
Implements: blueprint six-removal
Signed-off-by: Takashi Natsume <takanattie@gmail.com>
2020-11-07 03:25:26 +00:00
Takashi Natsume 1d0a0e8c20 Remove six.moves
Replace the following items with Python 3 style code.

- six.moves.configparser
- six.moves.StringIO
- six.moves.cStringIO
- six.moves.urllib
- six.moves.builtins
- six.moves.range
- six.moves.xmlrpc_client
- six.moves.http_client
- six.moves.http_cookies
- six.moves.queue
- six.moves.zip
- six.moves.reload_module
- six.StringIO
- six.BytesIO

Subsequent patches will replace other six usages.

Change-Id: Ib2c406327fef2fb4868d8050fc476a7d17706e23
Implements: blueprint six-removal
Signed-off-by: Takashi Natsume <takanattie@gmail.com>
2020-11-07 03:25:02 +00:00
Lee Yarwood 4ac4a04d18 zuul: Replace nova-live-migration with zuulv3 jobs
This change removes the original nova-live-migration job and replaces it
directly with the new Focal based zuulv3 native job.

The nova-dsvm-multinode-base base job is no longer used and so also
removed as part of this change.

Note that this new nova-live-migration job does not yet contain any
ceph coverage like the original, this is still pending and will be
completed early in the W cycle.

This change is being merged ahead of this to resolve bug #1901739, a
known QEMU -drive issue caused by the previous jobs use of libvirt 5.4.0
as provided by Ubuntu Bionic. The fix here being the migration to Ubuntu
Focal based jobs and libvirt 6.0.0 that now defaults to using QEMU
-blockdev.

Closes-Bug: #1901739
Change-Id: Ib342e2d3c395830b4667a60de7e492d3b9de2f0a
2020-11-06 10:55:52 +00:00
Lee Yarwood c0fe95fcc5 zuul: Merge nova-evacuate into nova-multinode-live-migration
Both jobs deploy a multinode env before running their tests so just
append the new nova-evacuate tests to the end of the job.

Change-Id: If64cdf1002eec1504fa76eb4df39b6b2e4ff3728
2020-11-06 10:49:25 +00:00
Zuul 7134cbdc7a Merge "Update pci stat pools based on PCI device changes" 2020-11-06 05:23:46 +00:00
Zuul 89cbd9de10 Merge "Fix the compute RPC 5.12 issue" 2020-11-05 21:55:29 +00:00
Zuul a526a97785 Merge "Add a regression test for 5.12 compute API issue" 2020-11-05 17:00:11 +00:00
Sylvain Bauza 8d9f298f4c Fix the compute RPC 5.12 issue
In I147bf4d95e6d86ff1f967a8ce37260730f21d236 we added a new argument for
the rebuild_instance() RPC method. Unfortunately, we missed to that it
needs to be optional for older versions.

Adding a default none value for it so rolling upgrades would work.

Change-Id: I59c5e56b00114fea5ec19fa63ec73f032dc3bd5c
Closes-Bug: #1902925
2020-11-05 16:58:03 +01:00
Sylvain Bauza 8f79afd448 Add a regression test for 5.12 compute API issue
In I147bf4d95e6d86ff1f967a8ce37260730f21d236 we wrote a breaking RPC change
for the 5.12 version as the accel_uuids parameter is not optional.

Adding a regression test to check the issue.

Change-Id: I1f3914e16294c99a625b3984ca0098d835cd9b92
Related-Bug: #1902925
2020-11-05 10:45:04 +01:00
Zuul f3c2780e98 Merge "Use subqueryload() instead of joinedload() for (system_)metadata" 2020-11-05 08:22:25 +00:00
Balazs Gibizer 3b8257cd23 Add upgrade check about old computes
Report a warning during upgrade checks if there are computes older than
the previous major nova release in the system.

So if code is upgraded to Wallaby and the upgrade check was run before
the restart of the services with W code then the check warns for Ussuri
computes in the system.

Change-Id: I873b0c1e6e695ae88241bbf75ac9f80ecc6f5664
2020-11-04 15:43:09 +01:00
Balazs Gibizer aa7c6f8769 Prevent starting services with older than N-1 computes
Nova services only support computes that are not older than
the previous major release. This patch introduces a check in the
service startup that prevents staring the service if too old computes
are detected.

Change-Id: Ie15ec8299ae52ae8f5334d591ed3944e9585cf71
2020-11-04 14:05:52 +01:00
Zuul edd8fefe3f Merge "optimize the shelve code flow" 2020-11-03 09:22:00 +00:00
Zuul 527d6a5b7d Merge "Modify glance's copy_image permission for nova-ceph-multistore" 2020-11-02 22:15:22 +00:00
Zuul 926af1faf1 Merge "objects: Fix issue in exception type" 2020-10-31 11:20:21 +00:00
Zuul 0b7c00b566 Merge "Add regression test for bug #1899649" 2020-10-31 08:14:30 +00:00
Zuul 74bf2a714c Merge "Fix virsh domifstat to get vhostuser vif statistics" 2020-10-31 06:31:40 +00:00