Commit Graph

60946 Commits

Author SHA1 Message Date
Zuul 64cb5d884b Merge "only safety check bootable files created from glance" 2024-09-19 04:56:06 +00:00
Zuul 5cc6b4aff9 Merge "Add functional repoducer for ephemeral disks" 2024-09-18 21:52:46 +00:00
Zuul b16445df86 Merge "Add Dalmatian prelude section" 2024-09-13 20:01:59 +00:00
Sylvain Bauza 1eb45e768a Add Dalmatian prelude section
Shamelessly copied from the cycle highlights

Change-Id: I2d0584dee3f8133d6fb63fe4599de1ef76b42d62
2024-09-13 08:14:08 +00:00
Sean Mooney 8de15e9a27 only safety check bootable files created from glance
For blank files that are created by nova such as swap
disks and ephemeral disks we do not need need to safety
check them as they always are just bare filesystems.

In the future we should refactor the qcow imagebackend to
not require backing files for swap and ephemeral disks
but for now we simply disable the check to workaround
the addition of the gpt image inspector and the incompatiblity
with vfat. future versions of oslo will account for vfat boot
recored. this is a minimal patch to avoid needing a new oslo
release for 2024.2

Closes-Bug: #2079850
Change-Id: I7df3d9859aa4be3a012ff919f375a7a3d9992af4
2024-09-11 20:04:34 +01:00
Sean Mooney e310049eab Add functional repoducer for ephemeral disks
This commit add a functional repoducer for a regression
in ephmeral disk image format validation

When we changed to use the oslo.utils verison of the
format_inspector we aquired a new inspector which can
detect if a file has a partition table.

As the qcow 2 backend does not know that ephemeral disk
or swap disk are not boot able it requires that they
also have partition tables.

Related-Bug: #2079850
Change-Id: I26c6e8d2efbf7403542e99b8ac45e2a31f08afd1
2024-09-11 18:35:29 +01:00
Zuul 16d815990b Merge "Update compute rpc alias for dalmatian" 2024-09-10 18:27:33 +00:00
Sylvain Bauza 6535386dfa Update compute rpc alias for dalmatian
This adds an alias for Dalmatian

Change-Id: Ie2777206ac3ce9144a163378aba8257d48ceba50
2024-09-09 18:09:42 +02:00
Sylvain Bauza 31accd37c8 doc: mark the maximum microversion for 2024.2 Dalmatian
We need it for this release.

Change-Id: I92a881a8e29c0736f5598018be911d623c38b624
2024-09-09 17:40:41 +02:00
Zuul 1ecab6dbc5 Merge "doc: Fix markup syntax and typo" 2024-09-05 16:04:22 +00:00
Zuul d88d968e96 Merge "[ironic] Followup fixes around flavor ids" 2024-09-04 00:55:36 +00:00
Zuul b6f60a11a3 Merge "Remove default override for RBAC config options" 2024-09-03 22:07:54 +00:00
Julien Le Jeune 0809f75d79 Skip snapshot test when missing qemu-img
Since the commit the remove AMI snapshot format special casing
has merged, we're now running the libvirt snapshot tests as expected.
However, for those tests qemu-img binary needs to be installed.
Because these tests have been silently and incorrectly skipped for so long,
they didn't receive the same maintenance as other tests as the failures went unnoticed.

Change-Id: Ia90eedbe35f4ab2b200bdc90e0e35e5a86cc2110
Closes-bug: #2075178
Signed-off-by: Julien Le Jeune <julien.le-jeune@ovhcloud.com>
2024-09-03 17:58:59 +02:00
Jay Faulkner 329ff5e1a8 [ironic] Followup fixes around flavor ids
This fixes some unused attributes in the ironic driver tests.

Change-Id: Ibda5243f1ce996123c950afe1c8912e1e16406e1
2024-09-02 17:55:25 -07:00
Zuul 61f44e992e Merge "Test live migration between hosts with differnet cpu_shared_sets" 2024-09-02 12:48:14 +00:00
Zuul 145ca33805 Merge "Handle neutron-client conflict" 2024-09-02 09:28:15 +00:00
Zuul 1ce5ed378c Merge "Ignore support-matrix.css" 2024-09-02 02:26:58 +00:00
Zuul ead4bf81b4 Merge "Fix s/addtional/additional/ typo" 2024-09-01 07:58:01 +00:00
Zuul c79bec0f22 Merge "libvirt: Launch instances with stateless firmware" 2024-09-01 07:57:54 +00:00
Zuul 75cdf19d04 Merge "update nova-next to use ubuntu 24.04" 2024-09-01 04:19:09 +00:00
Takashi Kajinami 305a71e5f9 Ignore support-matrix.css
The file is created during doc build, so should not be added to
the repository.

Change-Id: I6cbef7e8a3d1a176d98fd9b6020ce0603cb94890
2024-08-31 18:05:41 +09:00
Zuul e5dfbb17fe Merge "[ironic] Factor out metadata and send to ironic" 2024-08-31 04:42:22 +00:00
Jay Faulkner 93b90d2b6a [ironic] Factor out metadata and send to ironic
This change migrates the code currently written only to serve libvirt
driver to be generally useful, adding driver-neutral data structures
and a method to build them.

The libvirt driver is reworked to use get_instance_driver_metadata
instead of it's current code.

The ironic driver is reworked, per the blueprint, to send along some of
this additional metadata to the Ironic node.instance_info.

blueprint ironic-guest-metadata
Needed-By: https://review.opendev.org/c/openstack/ironic/+/924887

Change-Id: I2b23c8463f66c38e64625486157f245cd74cec61
2024-08-30 15:21:13 -07:00
Zuul 30800dafd4 Merge "Cleanup setup.py" 2024-08-30 21:00:43 +00:00
Zuul a0450d28f7 Merge "Add hw_firmware_stateless image property" 2024-08-30 20:57:26 +00:00
Zuul cf71be0ef0 Merge "libvirt: Report available TPM models" 2024-08-30 07:27:59 +00:00
Zuul 71a095be18 Merge "Update [scheduler] limit_tenants_to_placement_aggregate config help" 2024-08-30 03:20:10 +00:00
Sean Mooney aca63b66e5 Test live migration between hosts with differnet cpu_shared_sets
This change modifes the nova-live-migration job to define
[compute]cpu_shared_set to different ranges on the controller
and compute node. in ci we have 8 cpus so the controller is set
to 0-5 and the compute uses 2-7

6 cores with our default allocation ratio should be sufficent
for our current level of concurrancy. This change also adds
the remaining cores as cpu_dedicated_set, they will currently
be unused but are thre if we want to enable pinned cpu testing
in the future.

Change-Id: I0d8463cf584d6ac141a5e1cb492d17996db458e0
2024-08-30 01:31:45 +00:00
Sean Mooney 804bc98759 update nova-next to use ubuntu 24.04
This change updates the nova-next nodeset
to use openstack-two-node-noble and revert to
using qemu without nested virt.

using nested virt was a tempory messure to mitigate the kernel
panics we were seeing related to volume detach while we also explored
using split kernel images. since then we have reverted the other
jobs back to using normal whole disk images and we have not
seen a marked uptic in kernel panics.

as such this change drop the use of nested virt since the other jobs
are not using it an updates the nodeset to move nova-next to test on
ubuneu 24.04 (noble) on python 3.12

Depends-On: https://review.opendev.org/c/openstack/devstack/+/922427
Change-Id: I5059ba3c519efb18947a8f3d24868ce1c9289e3d
2024-08-30 02:29:38 +01:00
Zuul b36f01be63 Merge "Correct info about volume-backed server rebuild" 2024-08-30 01:16:27 +00:00
Zuul 5eccd8efa6 Merge "Add a functest for verifying multiple VGPU allocations" 2024-08-30 01:16:19 +00:00
Zuul edd9aa1c83 Merge "Reproducer test for image property hw_architecture" 2024-08-30 01:16:12 +00:00
Zuul 52fa9bc4f7 Merge "libvirt: Add config option to require secure SPICE." 2024-08-30 00:28:04 +00:00
Zuul 7e082705de Merge "add pyproject.toml to support pip 23.1" 2024-08-29 21:22:40 +00:00
Zuul 3b1ea29af7 Merge "api: Fix typo" 2024-08-29 21:22:19 +00:00
Zuul 46b76da3ad Merge "Report availability of stateless firmware support" 2024-08-29 18:25:53 +00:00
Dr. Jens Harbott 5fa069c29a Delete ./doc/source/_static/support-matrix.css file
This file is being automatically generated during the docs build, no
need to have it persisted in git.

Change-Id: Ib45f722cc305e1d828d31724535e31ad3dda6c2e
2024-08-29 09:27:04 +02:00
Sean Mooney 8464abe56c add pyproject.toml to support pip 23.1
pip 23.1 removed the "setup.py install" fallback for projects
that do not have pyproject.toml and now uses a pyproject.toml
which is vendored in pip.
To address that, this change adds the minimal pyproject.toml
to enable pbr to be properly used to build editable wheels.

This is required to support installing devstack on
centos stream 9 and related distros with GLOBAL_VENV=True
Without this change the wsgi scripts are not generated in
editable mode. i.e. pip install -e /opt/stack/keystone

See https://pip.pypa.io/en/stable/news/#v23-1
and https://github.com/pypa/pip/issues/8368 for more
details on the removal of the fallback support.

setuptools v64.0.0 is used to support editable installs
via its PEP-660 implmentation
https://github.com/pypa/setuptools/pull/3488

Depends-On: https://review.opendev.org/c/openstack/devstack/+/902758
Change-Id: I3255edb67fd7fe7a25b5871ec071c4b4c9d98ac2
2024-08-28 23:30:21 +00:00
Zuul 8fb5a76872 Merge "libvirt: call get_capabilities() with all CPUs online" 2024-08-28 19:22:28 +00:00
Zuul b3a2494728 Merge "Use format_inspector from oslo" 2024-08-27 18:54:30 +00:00
Zuul 01b207e50d Merge "Deprecate AMI image formats" 2024-08-26 21:31:41 +00:00
Dan Smith d854e7cc16 Use format_inspector from oslo
This removes the in-tree format_inspector and makes us use the one in
oslo.utils. Minor changes are required around the behavior of the
safety_check() (raising instead of returning). This also allows images
detected as 'gpt' but registered as 'raw', since that's how everything
currently works. Hopefully later we can start registering in glance as
gpt, and rejecting boots from raw images.

Change-Id: I5b89e17438157690495961c306861a06532c8b4e
Depends-On: https://review.opendev.org/c/openstack/tempest/+/927146
2024-08-26 07:21:48 -07:00
Zuul 3bdb298e68 Merge "Fix wrong nova-manage command in upgrade check" 2024-08-22 15:35:51 +00:00
Michael Still e06890d101 libvirt: Add config option to require secure SPICE.
This patch adds the following SPICE-related configuration option
to the 'spice' configuration group:

- require_secure

When set to true, libvirt will be provided with domain XML which
configures SPICE VDI consoles to require secure connections (that
is, connections protected by TLS). Attempts to connect without
TLS will receive an error indicating they should retry the connection
on the TLS port.

Change-Id: Ica7083b0836f8d66cad8a4b4097613103fc91560
2024-08-21 18:09:50 +10:00
Amit Uniyal cd05be9738 Reproducer test for image property hw_architecture
scheduler.image_metadata_prefilter=True, fails with NoValidHost for image
property hw_architecture=x86_64

Related-Bug: #2062425

Change-Id: I30a76ca409fe7605d02e6f97ee7142017a05c236
2024-08-21 05:01:06 +00:00
Zuul a2cc66a377 Merge "Fix deepcopy usage for BlockDeviceMapping in get_root_info" 2024-08-21 02:33:27 +00:00
Takashi Kajinami 3169e7cebd libvirt: Launch instances with stateless firmware
This change implements the actual functionality to allow users to
launch instances with stateless firmware (read-only firmware image +
no NVRAM).

Note that this feature is supported by the libvirt virt driver, and
also requires libvirt >= 8.6.0.

Implements: blueprint libvirt-stateless-firmware
Change-Id: I7219bfa11ae98e65c326bec1a99c49d3e245cb9a
2024-08-21 10:52:05 +09:00
Zhang Hua 065bf99fc7 Fix deepcopy usage for BlockDeviceMapping in get_root_info
The method get_root_info sometimes receives a BlockDeviceMapping object,
which lacks a copy method. The previous code assumed root_bdm was always
an instance of DriverBlockDevice, a subclass of dict that supports the copy()
method. However, during testing, it was discovered that root_bdm could also
be a BlockDeviceMapping object, which does not have a copy method.

To address this, the change replaces the copy() call with copy.deepcopy()
according to the suggestion in the comment [1], which works for both
BlockDeviceMapping and DriverBlockDevice instances. The deepcopy method is
supported because oslo.versionedobjects implements the __deepcopy__ method.

This change ensures the function handles both object types correctly,
preventing the AttributeError observed during testing.

[1] https://review.opendev.org/c/openstack/nova/+/909611/4/nova/virt/libvirt/blockinfo.py

Change-Id: I9432718586855ff57e8e6a5cae064e0685dd01e8
2024-08-20 21:48:59 +00:00
Zuul 0b091179d5 Merge "[libvirt]log XML if nova fails to parse it" 2024-08-20 03:37:34 +00:00
Takashi Kajinami 5890c257be Add hw_firmware_stateless image property
Add the new image property to request stateless firmware. The property
will be used by the libvirt driver once the actual logic to enable
the feature is implemented.

Partially-Implements: blueprint libvirt-stateless-firmware
Change-Id: I05d4ff89d2b713b217b6c690e40fd4a16a397b63
2024-08-20 09:36:47 +09:00