--before argument is currently described in ambiguous way: it
is not actually used to filter entries ARCHIVED before specified
date. Instead, it compares provided data with "deleted_at" value
for most rows and "updated_at" or "created_at" for remaining ones.
Since we already talk about time of deletion when describing
--before argument of "nova-manage db archive_deleted_rows" rows,
it make sense to not provide extra details here as well.
Change-Id: Ib5940e88a52dc8d32303e27237e567c3481fc3dc
change I6de86f3e3e283ba404f927ea4c8164f791df3989
added the py312 funtional job definition but did not
update the tox.ini to define it.
As a result it is runing the unit tests not the functional tests.
This change simpley corrects that.
Change-Id: Id6ee76e0190469ac09baf0bc56a9022317c6f881
This reverts us back to using the standard disk image for most of our
tests, which is more representative of how people actually use nova.
This leaves the UEC image on a few jobs for the sake of comparison
data for the time being, and because we should actually test that
code path if we're going to say we support it.
Change-Id: I16ed92d342464325d4bef33c1e22b328bcfbe7d6
This uses the OCaaS feature in devstack which saves *minutes* of time
running devstack by effectively caching the openstackclient startup
instead of taking that hit for every invocation.
Change-Id: I78308128c6249f7f871e0231ce717b1ec0f88509
The admin docs are missing some details about enabling unified limits,
like oslo.limit configuration and Keystone roles. This adds more
information about what roles are needed for what actions, how to set
quota limits, quota enforcement, and unified limits in general.
This also removes a couple of tables from the user docs that show
obsolete/deprecated quota limits because they may be more confusing
than helpful considering we don't want new deployments to use them and
they add more clutter to the page.
More info is also added regarding the CLI commands for unified limits
and makes it consistent between the user and admin docs.
Change-Id: Id93f9997d1b217e0c2151c88323564f7a7fefc02
This hacking test has a syntax error in it. On older pythons, this
does not prevent us from finding the second popen() use, but on
python 3.12 it does.
Change-Id: Ib74dc030118e0cb9fab548b112d32ce080969a15
Python 3.12 changes the repr() syntax for the OrderedDict object,
which causes us to calculate different hashes for the notification
objects across the version gap. The get_extra_data() function wraps
a dict in OrderedDict after sorting the elements of the original dict,
but that is not entirely necessary. The sorted() list of dict.items()
is a perfectly reasonable representation of the things it is capturing,
so we can just eliminate the use of OrderedDict there and thus end
up calculating the same hashes on <3.12 and >3.12.
NOTE: This changes a bunch of the hashes of notification objects
without bumping or changing versions. This is expected purely because
we are changing the hashing method, and thus this is not a violation
or upgrade concern.
Change-Id: I242150138deed7fe74b13d9c44b333293cd24ffa
The str(url) function in SQLAlchemy hides the password.
For a URL string that is to be re-used, use
render_as_string(hide_password=False).
Change-Id: I2ab28da5cc2b9ed3a1588259b2e94320662816bb
After this patch nova rejects the add host to aggregate API action
if the host has instances and the new aggregate for the host would
mean that these instances need to move from one AZ (even from the
default one) to another. Such AZ change is not implemented in nova
and currently leads to stuck instances.
Similarly nova will reject remove host from aggregate API action if the
host has instances and the aggregate removal would mean that the
instances need to change AZ.
Depends-On: https://review.opendev.org/c/openstack/tempest/+/821732
Change-Id: I19c4c6d34aa2cc1f32d81e8c1a52762fa3a18580
Closes-Bug: #1907775
Right now we'll fail to calculate the boot order of a set of BDMs if
one of them is a device_type=lun. This fixes that and teaches us
that it's just a "hd" from qemu's perspective.
Closes-Bug: #2065084
Change-Id: Ic1340918738d503fc797c9373fe2e1dd16b27a09
Libvirt now enforces that device="lun" (i.e. raw device passthrough)
disks must not have the <serial> property set. We recently enabled
the ability to manage devices by alias instead of serial, but to
fully enable this use-case we need to avoid putting serial in the
XML to appease libvirt.
Related-Bug: #2065084
Change-Id: Ifa2df89f27e58e1e64ce046edeaf6e49a7c89490
These are detected as errors since the clean up was done[1] in
the requirements repository.
[1] 314734e938f107cbd5ebcc7af4d9167c11347406
Bump the minimum versions to avoid installing these known bad versions.
Change-Id: I5ab0c3a1ac208e3967e65c298573079283a7b6cd
The addresses field containes delayed (cached) information,
due to internal implementation details.
This used to be considered API contact breakage,
but apperently no plan for fixing it.
Change-Id: I8db2800ede0276d60138369ec2d60c55a1791040
This commit removes the previous limitation on the number of tenants
that can be filtered using the `filter_tenant_id` aggregate property
in the AggregateMultitenancyIsolation scheduler filter.
The `filter_tenant_id` can now be used as a suffix, allowing for an
unlimited number of tenant ID properties to be set on the
aggregate. This update maintains backward compatibility.
Implements: blueprint aggregatemultitenancyisolation-to-support-unlimited-tenant
Signed-off-by: Sahid Orentino Ferdjaoui <sahid.ferdjaoui@industrialdiscipline.com>
Change-Id: Ic87d142647774b62a6af2cc5eb7a3cd66f9afeb7
The GlanceClientWrapper._get_verifier method may fail already on the
metadata, so we better call it early before we open files and start
downloads, which we then abort uncleanly.
This also likely how the bug #1948706 was triggered in the first place:
- The file gets opened
- _get_verifier fails *before* we even iterate over the data
- glance_utils.IterableWithLength won't close the underlying iterator.
The added close statement, now guarded with `may_close_iterator` is
likely superfluous.
If we return the image chunk iterator, then we should rather not
close the underlying iterable, as it will kill the transfer.
Closes-Bug: #2053027
Change-Id: Ia247af39a96fbed90b027ad30158e66dd2f0bd5e
Live migrating to a host with cpu_shared_set configured will now
update the VM's configuration accordingly.
Example: live migrating a VM from source host with cpu_shared_set=0,1
to destination host with cpu_shared_set=2,3 will now update the
VM configuration.
(<vcpu cpuset="0-1"> will be updated to <vcpu cpuset="2-3">).
Related-Bug: #1869804
Change-Id: I7c717503eba58088094fac05cb99b276af9a3460
Live migrating to a host with cpu_shared_set configured will now
update the VM's configuration accordingly.
Example: live migrating a VM from source host with cpu_shared_set=0,1
to destination host with cpu_shared_set=2,3 will now update the
VM configuration.
(<vcpu cpuset="0-1"> will be updated to <vcpu cpuset="2-3">).
This update adds a new field, dst_cpu_shared_set_info, to the
LibvirtLiveMigrateData object, which requires an increase in the
object's version. As a result, this patch cannot be backported.
Related-Bug: #1869804
Change-Id: I806da0958fe436c989e09a52ca6b6f1bbd25a865