This fixes the issue when a nested stack is serialized in
oslo.messaging and deserialization fails because we pass
a kwarg as an arg when we generate the exception remotely.
Story: #2010115
Task: #45695
Change-Id: Id75398d2ed2d4fab467df51057c4167cd77bb32f
If the auth_encryption_key changes We can possibly
ignore these errors when deleting stacks.
Task: 42056
Change-Id: I326e415db194a5b9c67acd038d7d2d993293ecb3
Templates can be complex and contain multiple instances of
map_merges. Debugging this can be complex, so this change
aims to improve the mapping and help users determine where
the problem has occured.
With this change, instead of just saying an error occured,
we will now return the object that the error occurred with
and a note about it's type. This will allow for quick
identification of what the problem was.
Change-Id: I1c4da88029bbf1a3cfb58f5e21da28ec2912f924
This change fixes the one remaining usage without the flag which was
missed by the previous attempt[1].
[1] 14d2d859ef
Change-Id: Ic0b34b11d669851e47cae670f5299f934f396257
During volume detachment an instance can be in error state or locked.
Nova returns error 409.
Instance can be unlocked or fixed a bit later, but heat doesn't retry to detach volume.
The patch makes heat to retry detachments untill stack update timeout.
story: 2010355
Change-Id: I9a08b938401cd71eddd0eb80782d10392f92bf45
Magnum has deprecated it's Bay API and BayModel API a long ago and
these resource types were deprecated and are hidden in Heat now.
Magnum has removed the old API during Zed cycle and the resources are
no longer supported, so we should remove the implementation now.
Change-Id: If4c6a83a83f9eb29407eb632f47c7229b5492ffd
oslo.db 12.1.0 has changed the default value for the 'autocommit'
parameter of 'LegacyEngineFacade' from 'True' to 'False'. This is a
necessary step to ensure compatibility with SQLAlchemy 2.0. However, we
are currently relying on the autocommit behavior and need changes to
explicitly manage sessions. Until that happens, we need to override the
default.
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
Change-Id: I57b8cce28c2ad7899b831067c94b9d913f3f1334
... because Nova requires the public_key property when creating
a keypair since api microversion 2.92.
Story: 2010201
Task: 45920
Change-Id: Iec6f1c570ec3bb19ca58b336e6e3401cc11c4c33
Since swiftclient 4.0.1, sha256 is used when generating tempurl
signature[1].
This change extends the regex pattern to assert signatues so that it
can accept both sha1(old) and sha256(current).
[1] https://review.opendev.org/c/openstack/python-swiftclient/+/845157
Change-Id: I063fb5faf3546e306f41821f14fc14a7b28c9743
that patch erroneously replaced dict.values() with dict.items(),
and now ExtraRouteSet can not be created due to AttributeError
('tuple' has no attribute 'has_interface').
Story: 2010142
Task: 45778
Change-Id: I2643b319f3a91f98097b96639f7298b25724aa62
ServerGroup resources work as scheduler hints for server
resources and replacement of it replaces the servers which
is undesirable in many circumstances.
- We don't allow update of ServerGroup resource properties
- If not created (CREATE_FAILED) without resource_id they will
be replaced
- If does not exist in nova they would be created
- If exist in nova, FAILED resource status would be just
changed to COMPLETE
Task: 45748
Change-Id: I096dff2b541a5aa8afbbbcea5161e7ca1c244039
Earlier users had to specify merge strategy for
a parameter/parameter_default in every environment
file where they are used(or the defaults for that
environment was used). However, the strategy
for a parameter in the first environment was
ignored as there is nothing to merge.
With Iec3367667248d0b46196a6d569f3cbb3b200d842, we
changed to use existing merge strategies, but the
strategies in the first environment were still
ignored. This patch fixes it.
Task: 45578
Change-Id: Ic6125c6af60c1007243523cc8510a17f49c7b5af
The importlib-metadata package was imported to the core Python since
Python 3.8, and stevedore uses the standard library implementation
instead of the 3rd party package in Python 3.8 and later. However
the implementation available in Python 3.8 is quite old and especially
it does not include the change which added the module attribute[1].
This change makes sure we avoid referring to that attribute if it does
not exist, to avoid AttributeError in Python 3.8.
[1] dfc96137ac
Story: 2010095
Task: 45650
Change-Id: Ieba5f353b0fe8a9b187bac1f6ff1b3a8f3b896b3
Since sqlalchemy 1.4.14[1], the following warning is raised unless
the cache_ok flag is explicitly set in classes inheriting
TypeDecorator.
SAWarning: TypeDecorator Json() will not produce a cache key because
the ``cache_ok`` attribute is not set to True. This can have
significant performance implications including some performance
degradations in comparison to prior SQLAlchemy versions.
Set this attribute to True if this type object's state is safe to use
in a cache key, or False to disable this warning. (Background on this
error at: https://sqlalche.me/e/14/cprf)
Because the flag was set to True by default in older releases, this
adds explicit cache_ok = True, to restore the previous behavior in
Wallaby and older. (wallaby u-c has SQLAlchemy===1.3.23 while xena u-c
has SQLAlchemy===1.4.23)
[1] 6967b45020
Change-Id: I6b84a626994543468f49373a554de44025576a9a
This patch adds a new resource to support ``minimum_packet_rate_rule``
QoS rule in Neutron.
Related-Bug: #1922237
Story: 2009686
Task: 43997
See-Also: https://review.opendev.org/785236
Change-Id: I29e205979b40e3e0d0746e1c22fa679736c853b7
We don't allow different parameter merge strategies
in different environment files for a parameter. If
a merge strategy has already been provided in one
environment file, let's use that for subsequent ones
unless a different merge strategy has been provided.
Task: 45578
Change-Id: Iec3367667248d0b46196a6d569f3cbb3b200d842
Using the healthcheck middleware as a filter is deprecated and
the middleware should be used as an application[1].
[1] 6feaa13610c450c8486f969703768db5319b4846
This change updates definition and usage of the healthcheck middleware
accordingly to avoid the following deprecation warning.
DeprecationWarning: Using function/method 'Healthcheck.factory()' is
deprecated: The healthcheck middleware must now be configured as
an application, not as a filter.
This also refactors composite definitions based on flavor by the new
pipeline factory.
Story: 2009071
Task: 42881
Change-Id: I75386dc4a7dc14b3c753dfff01f147ef8233bf94
This change adds validation of the limit query parameter in List
Software Config API, as was implemented for List Stack API, to avoid
internal error at database query.
story: 2009707
task: 44054
Change-Id: Ib57919faebbd4eb6aa13857e242eb5f3dc448a02
The CloudWatch API was removed during Queens cycle[1]. This change
removes the remaining parameters because these have been kept for
enough cycles to let users aware of the removal.
Change-Id: I4f57f02332cb1b61a0681794e519dd5ecfbec6c3
In some cases, some resources may require more than
one service_extension. In this case, we should allow
resources to define a list of required resources.
Change-Id: Iee0104a741cc050047824d23b8ab5ee9871c4f28