Commit Graph

57234 Commits

Author SHA1 Message Date
Ghanshyam Mann 9f2e24a5a4 Bump hacking min version to 3.0.1
hacking 3.0.1 fix the pinning of flake8 to avoid bringing in a new
version with new checks.

bumping the min version for hacking so that any older hacking versions
which auto adopt the new checks are not used.

Depends-On: https://review.opendev.org/#/c/728335/

Change-Id: Ie00c10332bd7110169dbb150d601c157b6694d05
2020-05-15 02:36:37 +00:00
Zuul 1d29344457 Merge "Suppress remaining policy warnings in unit tests" 2020-05-11 18:16:26 +00:00
Zuul 5b76ae4e66 Merge "Support for --force flag for nova-manage placement heal_allocations command" 2020-05-11 18:15:34 +00:00
Ghanshyam Mann 324c9b596b Suppress remaining policy warnings in unit tests
There are few place left in unit tests where policy warnings
are still logged.

- test_policy which is policy file tests and does policy
  initialization without suppressing the warnings.

- test_serversV21. PolicyFixture takes care of policy setup with
  no warning things[1] which is used by test base class[2] but
  test_serversV21 dulicate the policy initialization which leads
  to log warnings for unit tests. We do not need to initialization
  policy again and can reply on PolicyFixture setup.

  From the git history, it was added 7 years ago when no
  Fixture was available so there is no specific reason of re-initializating
  the policy in this test.
  - https://review.opendev.org/#/c/16160/3

[1] https://github.com/openstack/nova/blob/4b62c90063abc0c1b3e6b564a171e8c1d96cb735/nova/tests/unit/policy_fixture.py#L46
[2] https://github.com/openstack/nova/blob/4b62c90063abc0c1b3e6b564a171e8c1d96cb735/nova/test.py#L269

Change-Id: Ieb3f5510437d38bf2a4c8994d76c7f4001a6c9d8
2020-05-08 11:43:38 -05:00
Zuul 7dfe999180 Merge "objects: Add migrate-on-load behavior for legacy NUMA objects" 2020-05-08 15:59:49 +00:00
Zuul 6a4e8b2467 Merge "config: Explicitly register 'remote_debug' CLI opts" 2020-05-08 11:14:32 +00:00
Zuul 9be9f2bc90 Merge "Wait for all servers to be active when testing vGPUs" 2020-05-08 09:11:25 +00:00
Zuul 487c4fa920 Merge "remove support of oslo.messaging 9.8.0 warning message" 2020-05-08 02:37:14 +00:00
Zuul 0d67cc9d5c Merge "Silence amqp heartbeat warning" 2020-05-08 02:32:31 +00:00
Sean Mooney ca2fe01cc1 remove support of oslo.messaging 9.8.0 warning message
This change removes support for supressing the
heartbeat message from olso.messaging before 9.8.0

Change-Id: I2035d5df31e43b730cd472cc438ec863bb538d62
Related-Bug: #1825584
2020-05-07 19:54:23 +01:00
Sean Mooney d6f664524d Silence amqp heartbeat warning
When the nova api is executing under uWSGI or MOD_WSGI
the lifetime of the amqp heartbeat thread is controlled
by the wsgi server. As a result when the nova api is run
in this configuration we expect that the heartbeat thread
will be suspended and heartbeats will be missed when the wsgi
server suspends execution of the wsgi application.

This change adds a python logging filter to suppress
the reporting of heartbeat warnings as this behavior is
expected. Since the operator cannot do anything to address
the issue the warning is just noise and many operators
and customers find it to be off-putting.

Change-Id: I642b1e3ed6de2be4dcc19fe214f84095d2e1d31a
Closes-Bug: #1825584
2020-05-07 18:47:27 +00:00
Sylvain Bauza dc5dc4de2f Wait for all servers to be active when testing vGPUs
We were just verifying the state of the first server before introspecting
the number of created devices. If the second server isn't ACTIVE yet,
then the mdevs wouldn't be found and the functest would return an exception.

Change-Id: I02a9f26dea6378281f3968a2c5cf0f652f9e342b
Closes-Bug: #1877281
2020-05-07 14:45:27 +02:00
Stephen Finucane 2362970d5c config: Explicitly register 'remote_debug' CLI opts
We were registering the 'remote_debug' CLI opts as part of the
'nova.conf' init code. This meant not only every service we used (bar
'nova-console') but also every CLI tool we provided was exposing these
options, even though they made zero sense in the latter option.

Resolve this by explicitly registering the options against the services
that we want them in. Specifically, these are the API services (nova-api,
nova-api-metadata, nova-api-os-compute), the console proxy services
(nova-novncproxy, nova-serialproxy, nova-spicehtml5proxy), nova-compute,
nova-conductor and nova-scheduler.

While we're here, we also clean up the documentation for these options
since there are a few non-rST'y things in there.

Change-Id: I7b7489e8412cc93d49904d4ef08a775b07b27d26
Signed-off-by: Stephen Finucane <sfinucan@redhat.com>
2020-05-07 12:35:21 +00:00
Stephen Finucane 0f61d926b1 objects: Add migrate-on-load behavior for legacy NUMA objects
We started storing NUMA information as objects in the database in Kilo
(commit bb3202f859). Prior to this, we had stored this NUMA information
as a plain old dict. To facilitate the transition, we provided some
handlers based on these '_from_dict' functions. There were used to
ensure we could load old-style entries, converting them to objects which
we could later save back to the database.

It's been over four years (three since Kilo went EOL) and nine (nearly
ten) releases, meaning its time to look at dropping this code. At this
point, the only thing that could hurt us is attempting to do something
with a NUMA-based instance that hasn't been touched since they were
first booted on a Kilo or earlier host. Convert the '_to_dict'
functionality and overrides of the 'obj_from_primitive' method with a
similar check in the DB loading functions. Crucially, inside these DB
loading functions, save back when legacy objects are detected. This is
acceptable because the 'update_available_resource' in the resource
tracker pulls out both compute nodes and instances, with their embedded
fields like 'numa_topology', ensuring this will be run as part of the
periodic task.

NOTE: We don't need to worry about migrations of 'numa_topology' fields
in other objects: the 'RequestSpec' and 'MigrationContext' objects were
added in Liberty [1][2] and used the 'InstanceNUMATopology' o.vo from
the start, while the 'NUMATopology' object has only ever been used in
the 'ComputeNode' object.

Change-Id: I6cd206542fdd28f3ef551dcc727f4cb35a53f6a3
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
2020-05-06 15:40:06 +01:00
Zuul 4b62c90063 Merge "Remove stale nested backport from InstancePCIRequests" 2020-05-06 14:03:54 +00:00
jay 87936baaac Support for --force flag for nova-manage placement heal_allocations command
Use this flag to forcefully heal allocation for a specific instance

Change-Id: I54147d522c86d858f938df509b333b6af3189e52
Closes-Bug: #1868997
2020-05-06 13:39:13 +02:00
Zuul 7d25b578da Merge "doc: Fix list rendering in cli/nova-status.rst" 2020-05-06 10:01:13 +00:00
Zuul 6ba06e23bc Merge "Follow-up for NUMA live migration functional tests" 2020-05-05 23:45:21 +00:00
Zuul 8461c9c834 Merge "Remove future imports" 2020-05-05 21:16:30 +00:00
Artom Lifshitz ca8f1f4222 Follow-up for NUMA live migration functional tests
This patch addresses outstanding feedback on
Ia3d7351c1805d98bcb799ab0375673c7f1cb8848 and
I78e79112a9c803fb45d828cfb4641456da66364a.

Change-Id: I70c4715de05d64fabc498b02d5c757af9450fbe9
2020-05-05 15:09:45 -04:00
Zuul dddc0dc825 Merge "Don't show upgr note for policy validation in V" 2020-05-05 13:50:06 +00:00
Zuul 9839e27880 Merge "Add nested resource providers limit for multi create" 2020-05-05 13:13:23 +00:00
Sylvain Bauza 505e1f1838 Don't show upgr note for policy validation in V
We merged Id9cd65877e53577bff22e408ca07bbeec4407f6e which included a reno
file after we branched Ussuri so we had to backport it to Ussuri but since
it was merged after RC1, the relnote would appear as an Upgrade section for
the Victoria release, which is not something we wanted (but rather for a
T->U upgrade).

Adding the ignore-notes section in order to avoid it.

Change-Id: If31933c5ff20167bf24fbad6f8746b1a9a6a36e5
2020-05-04 12:09:03 +02:00
Takashi Natsume 2b82575f3f doc: Fix list rendering in cli/nova-status.rst
Change-Id: I29ebb4c956ce979d60f74346d93510797f8de76b
Signed-off-by: Takashi Natsume <takanattie@gmail.com>
2020-05-02 15:17:26 +09:00
Zuul fdcb1e306e Merge "Add nova-status upgrade check and reno for policy new defaults" 2020-05-02 03:44:15 +00:00
zhangbailin c19de075e1 Add nested resource providers limit for multi create
In 21.0.0 Ussuri we were completed the nova-cyborg interaction feature,
but there are some issue when multiple create instances.

Creating servers with accelerators provisioned with the Cyborg service,
if a flavor asks for resources that are provided by nested Resource
Provider inventories (eg. VGPU) and the user wants multi-create (ie. say
--max 2) then the scheduler could be returning a NoValidHosts exception
even if each nested Resource Provider can support at least one specific
instance, if the total wanted capacity is not supported by only one
nested RP.

For example,creating servers with accelerators provisioned with the
Cyborg service, if two children RP have 4 VGPU inventories each:
 - you can ask for a flavor with 2 VGPU with --max 2
 - but you can't ask for a flavor with 4 VGPU and --max 2

Related-Bug: #1874664
Change-Id: I64647a6ba79c47c891134cedb49f03d3c61e8824
2020-05-02 01:10:06 +00:00
Ghanshyam Mann d4af91f349 Add nova-status upgrade check and reno for policy new defaults
There are cases where policy file is re-generated freshly
and end up having the new defaults only but expectation is that
old deprecated rule keep working.

If a rule is present in policy file then, that has priority over
its defaults so either rules should not be present in policy file
or users need to update their token to match the overridden rule
permission.

This issue was always present when any policy defaults were changed
with old defaults being supported as deprecated. This is we have
changed all the policy for new defaults so it came up as broken case.

Adding nova-status upgrade check also to detect such policy file.

Related-Bug: #1875418

Change-Id: Id9cd65877e53577bff22e408ca07bbeec4407f6e
2020-05-01 15:32:51 +00:00
Zuul d078ecce0f Merge "NUMA LM: Add func test for bug 1845146" 2020-05-01 14:26:53 +00:00
Zuul 730eeb5fe0 Merge "Feature matrix: update AArch64 information" 2020-04-29 10:59:41 +00:00
Zuul ecc83108f0 Merge "libvirt:driver:Disallow AIO=native when 'O_DIRECT' is not available" 2020-04-29 10:59:35 +00:00
Zuul 17fdcb5d46 Merge "zuul: Switch to the Zuulv3 grenade job" 2020-04-28 22:20:19 +00:00
Zuul 0b6ae371d8 Merge "Functional tests for NUMA live migration" 2020-04-28 20:46:37 +00:00
Zuul 0682028b56 Merge "Remove translation sections from setup.cfg" 2020-04-28 18:11:19 +00:00
Zuul 47e19c18d2 Merge "Remove Babel requirement" 2020-04-28 18:11:11 +00:00
Zuul 33b442cca0 Merge "Update contributor guide for Victoria" 2020-04-28 15:48:31 +00:00
Zuul 751c7b033e Merge "Test multi create with vGPUs" 2020-04-28 15:48:23 +00:00
Zuul 22757f42fc Merge "Switch to TOX_CONSTRAINTS_FILE" 2020-04-28 15:48:17 +00:00
Zuul e25c8af11f Merge "Imported Translations from Zanata" 2020-04-28 15:13:38 +00:00
Sylvain Bauza 32bbbd698a Test multi create with vGPUs
We had a bug in Rocky where multicreate wasn't working correctly, but given
in Stein we provided Resource Providers for each pGPU, this is fixed now.

NOTE: We have a related bug #1874664 because multicreate doesn't work with
nested Resource Providers.
We could btw. move the regression test to a specific module in the
regressions tests subdirectory.

Change-Id: I8154917ff142987e80dc711e3b2b3965a21f08d0
Related-Bug: #1780225
Related-Bug: #1874664
2020-04-28 13:00:51 +02:00
Zuul e10bd2e804 Merge "Fix list rendering in the accelerator support doc" 2020-04-27 19:59:03 +00:00
Zuul 58eafb47ae Merge "Add placeholder migrations for Ussuri backports" 2020-04-27 18:19:55 +00:00
Takashi Natsume d637b14092 Update contributor guide for Victoria
Update URLs for Victoria release.

Change-Id: I29ca3aa6e16479cd86404a6cc7cac15ec0436fe4
2020-04-27 16:28:00 +00:00
Takashi Natsume d10f4169c9 Fix list rendering in the accelerator support doc
List bullets in the top level have to be left justified,
otherwise we get "<blockquote>" html tags inserted.

Change-Id: I35e80c23c7a6421a648c93767ab954e9a6d1e997
2020-04-27 16:27:46 +00:00
Lee Yarwood 9f0d2d8ecf zuul: Switch to the Zuulv3 grenade job
This change switches the single node legacy grenade-py3 job over to the
newly introduced Zuulv3 based grenade job.

Change-Id: I212692905a1d645cd911c2a161c13c794c0e0f4d
2020-04-27 08:48:58 +00:00
Andreas Jaeger 5c01be7bf3 Remove translation sections from setup.cfg
These translation sections are not needed anymore, Babel can
generate translation files without them.

Remove babel.cfg as well, this is the default role and not needed
anymore.

Change-Id: I4d1665f1442b15c0efe3c9c8b04d0f5226902b0c
2020-04-26 13:42:59 +02:00
OpenStack Proposal Bot fcf1ce51c3 Imported Translations from Zanata
For more information about this automatic import see:
https://docs.openstack.org/i18n/latest/reviewing-translation-import.html

Change-Id: Ic2c55fff279f5d7476332c9a2e8457585335cb3d
2020-04-26 07:51:21 +00:00
Ghanshyam Mann ff42d69aa7 Switch to TOX_CONSTRAINTS_FILE
UPPER_CONSTRAINTS_FILE is old name and deprecated
-https://zuul-ci.org/docs/zuul-jobs/python-roles.html#rolevar-tox.tox_constraints_file
This allows to use lower-constraints file as more
readable way instead of UPPER_CONSTRAINTS_FILE=<lower-constraints file>.

Also stable ussuri branch is also switching to new var so
it make sense to may the master also sync with that.
- https://review.opendev.org/#/c/722520/

Change-Id: I3ce0bdc2b928ec63161cf0fa4757c43b83f2af09
2020-04-24 09:52:47 -05:00
Takashi Natsume 75a2d600fc Add placeholder migrations for Ussuri backports
Change-Id: Ie6090f1d0e5eb5c6f2d9be122435c2ee274398cd
2020-04-24 09:26:42 +09:00
OpenStack Release Bot 347d656c35 Add Python3 victoria unit tests
This is an automatically generated patch to ensure unit testing
is in place for all the of the tested runtimes for victoria.

See also the PTI in governance [1].

[1]: https://governance.openstack.org/tc/reference/project-testing-interface.html

Change-Id: I1178c8fed5f7fdcbbb52c036bf7fab8bf4de6807
2020-04-23 21:37:47 +00:00
OpenStack Release Bot b5ab89762a Update master for stable/ussuri
Add file to the reno documentation build to show release notes for
stable/ussuri.

Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/ussuri.

Change-Id: I1a2f8ffcf287120c4672686c7576b1892ea2b6ef
Sem-Ver: feature
2020-04-23 21:37:42 +00:00