Commit Graph

12064 Commits (22237d390f12b27e304d84d86e14036e89824d4d)

Author SHA1 Message Date
Zuul 22237d390f Merge "Deploy healthcheck middleware as app instead of filter" 2023-02-01 07:25:09 +00:00
Zuul a49526c278 Merge "Honor 'hidden' parameter in 'stack environment show' command" 2023-01-27 17:30:30 +00:00
Zuul d3ce7baf32 Merge "Use new get_rpc_client API from oslo.messaging" 2023-01-27 16:36:59 +00:00
Zuul 8b14ff2f34 Merge "Explicitly pass error kwarg in nested StackValidationFailed" 2023-01-25 19:43:16 +00:00
Zuul a7ac8f00a2 Merge "Replace deprecated Query.as_scalar()" 2023-01-24 09:08:00 +00:00
Tobias Urdin 29eaf4ef71 Use new get_rpc_client API from oslo.messaging
Use the new API that is consistent with
the existing API instead of instantiating the client
class directly.

This was introduced in release 14.1.0 here [1] and
added into oslo.messaging here [2]


Change-Id: Ia48de36e3cb97378785bb4946b1a387c0da1ff81
2023-01-19 20:25:47 +00:00
Zane Bitter a0ff4b98b7 Decode UTF-8 body data in SwiftSignal
Change-Id: Ie12c2df93f846629a7c8b7c6415cebc31eaba1bc
Story: #2010485
Task: 47053
2023-01-19 13:38:59 +13:00
Chengen Du 1305a3152f Honor 'hidden' parameter in 'stack environment show' command
Related-Bug: #1999665
Story: 2010484
Task: 47052
Change-Id: Ifc51ff6a4deab05002ccded59383416f9a586aa0
2023-01-11 17:51:14 +09:00
Tobias Urdin 53fa8c3749 Explicitly pass error kwarg in nested StackValidationFailed
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
2022-12-19 06:42:52 +00:00
ramishra 9407b4897e Ignore resource_data decryption errors
If the auth_encryption_key changes We can possibly
ignore these errors when deleting stacks.

Task: 42056
Change-Id: I326e415db194a5b9c67acd038d7d2d993293ecb3
2022-11-15 09:45:07 +05:30
ramishra ceef7869e0 Don't load all resources for policy check
We only need the resource types for the check. Let's
avoid loading all resources.

Change-Id: Iaf5650b2ae972064292cfe0d17f98b5635c51bad
2022-11-15 09:35:38 +05:30
OpenStack Proposal Bot 5451b9854b Imported Translations from Zanata
For more information about this automatic import see:

Change-Id: I5db9cc7f9a13db05a7d0ab0320e53bfdf4b419d9
2022-11-13 04:01:00 +00:00
Zuul f87d3efe70 Merge "Retry to detach volume if nova returned error 409" 2022-11-11 06:36:34 +00:00
Zuul 9d9ec29944 Merge "Improve map_merge logging" 2022-11-09 18:26:10 +00:00
Brendan Shephard 56d99bf658 Improve map_merge logging
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
2022-11-03 15:47:01 +10:00
Takashi Kajinami ddbf9db52e Set cache_ok to avoid further SAWarning
This change fixes the one remaining usage without the flag which was
missed by the previous attempt[1].

[1] 14d2d859ef

Change-Id: Ic0b34b11d669851e47cae670f5299f934f396257
2022-11-01 15:27:24 +09:00
Mitya_Eremeev 0ea1ee087a Retry to detach volume if nova returned error 409
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
2022-10-12 15:46:13 +03:00
Zuul f71308319a Merge "Allow deleting user_creds when can't be decrypted" 2022-10-04 06:18:46 +00:00
Takashi Kajinami 87bdbfdcab Drop implementation for OS::Magnum::Bay/BayModel
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
2022-09-21 16:40:03 +09:00
OpenStack Proposal Bot 7b1b373d24 Imported Translations from Zanata
For more information about this automatic import see:

Change-Id: I791e0ca3ccd221411f0ec9222a4c3f8ed9126f99
2022-09-11 03:20:24 +00:00
ramishra af5ffbe019 Replace deprecated Query.as_scalar()
This has been deprecated since SQLAlchemy 1.4.

Change-Id: Id3edcc188bb44d9752fe1bd7625308c5abed4d9c
2022-09-06 10:37:03 +09:00
Stephen Finucane ba81ce0cb1 Fix compatibility with oslo.db 12.1.0
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

Signed-off-by: Stephen Finucane <>
Change-Id: I57b8cce28c2ad7899b831067c94b9d913f3f1334
2022-09-05 17:40:38 +01:00
Zuul f98d164be9 Merge "Floating IP port forwarding resource" 2022-08-17 06:14:33 +00:00
Zuul 3d228d0449 Merge "Remove remaining implementation for Heat CloudWatch API" 2022-08-17 05:49:39 +00:00
Brendan Shephard 79f5868e04 Floating IP port forwarding resource
Add a new heat resource for Floating IP port
forwarding extension.

Story: 2009321
Task: 43742
Change-Id: I729f11873940a83e77038c5ba8e8eb50965623f6
2022-08-16 13:50:52 +10:00
Takashi Kajinami f8426b0f0b OS::Nova::KeyPair: Require public_key when api version >= 2.92
... because Nova requires the public_key property when creating
a keypair since api microversion 2.92.

Story: 2010201
Task: 45920
Change-Id: Iec6f1c570ec3bb19ca58b336e6e3401cc11c4c33
2022-08-01 14:18:29 +09:00
Zuul bb97ed77ae Merge "Set cache_ok to avoid SAWarning" 2022-07-18 14:11:04 +00:00
Takashi Kajinami d55001c1d5 Accept sha256 hash for swift tempurl
Since swiftclient 4.0.1, sha256 is used when generating tempurl
This change extends the regex pattern to assert signatues so that it
can accept both sha1(old) and sha256(current).


Change-Id: I063fb5faf3546e306f41821f14fc14a7b28c9743
2022-07-18 05:38:37 +00:00
Zuul a8fce1d09d Merge "Followup to I7736373d03c23884158e4a1d41defafb4e2b8a4c" 2022-07-14 05:37:31 +00:00
Pavlo Shchelokovskyy 65a68d97d0 Followup to I7736373d03c23884158e4a1d41defafb4e2b8a4c
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
2022-07-13 13:27:59 +00:00
Rabi Mishra a0e072b320 Don't always replace FAILED ServerGroup resources
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
2022-07-13 09:30:42 +00:00
Rabi Mishra d9fe7301b3 Fix parameter merging with merge strategies
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
2022-07-01 08:38:49 +05:30
OpenStack Proposal Bot 567615f6fc Imported Translations from Zanata
For more information about this automatic import see:

Change-Id: I4cb705afce20982d92fbc0ba4baefcc210771f38
2022-06-29 02:50:09 +00:00
rabi 38238b88f7 Fix tests for fixtures 4.0.0
This fixes ForeignKeyConstraintFixture for the db
tests. Also drops install_command from tox.ini.

Change-Id: I3d0abf68cae89566f4d346cd16919a6050168130
2022-06-27 22:41:52 +05:30
Zuul c37ea72a6b Merge "Add REBUILD option to user_data_update_policy" 2022-06-23 06:37:35 +00:00
Zuul 0778bd3422 Merge "Add OS::Neutron::QoSMinimumPacketRateRule resource" 2022-06-22 11:17:06 +00:00
Zuul 1080490d94 Merge "Fix AttributeError in Python 3.8" 2022-06-21 08:13:41 +00:00
Takashi Kajinami eec1f92bc0 Fix AttributeError in Python 3.8
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
2022-06-20 21:32:08 +09:00
Takashi Kajinami 14d2d859ef Set cache_ok to avoid SAWarning
Since sqlalchemy 1.4.14[1], the following warning is raised unless
the cache_ok flag is explicitly set in classes inheriting

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:

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
2022-06-15 10:35:35 +09:00
Zuul 5fb00fc9c8 Merge "Log parameters merged" 2022-06-13 17:29:01 +00:00
Zuul 27f7a81650 Merge "Use previous parameter merge strategy" 2022-06-13 14:12:43 +00:00
Przemyslaw Szczerbik 0e70383d08 Add OS::Neutron::QoSMinimumPacketRateRule resource
This patch adds a new resource to support ``minimum_packet_rate_rule``
QoS rule in Neutron.

Related-Bug: #1922237
Story: 2009686
Task: 43997
Change-Id: I29e205979b40e3e0d0746e1c22fa679736c853b7
2022-06-13 14:39:57 +02:00
Zuul 0b6d5e07a7 Merge "Supports 'availability_zone_hints' for Neutron networks and routers" 2022-06-10 01:53:50 +00:00
rabi c0be1f01fd Log parameters merged
This can help in troubleshooting.

Task: 45579
Change-Id: I6aee0719b0cdef2b17666a43074c5c18645fc180
2022-06-09 11:11:27 +05:30
rabi 94f32ee39f Use previous parameter merge strategy
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
2022-06-09 11:06:24 +05:30
Takashi Kajinami e17f68a83b Deploy healthcheck middleware as app instead of filter
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
2022-06-06 23:47:16 +09:00
Takashi Kajinami ef67b861dd Validate limit query parameter for List Software Config API
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
2022-05-25 13:09:19 +09:00
Takashi Kajinami ba15d70e19 Remove remaining implementation for Heat CloudWatch API
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
2022-05-06 19:43:56 +09:00
Brendan Shephard 5e14163f9c Allow multiple required_service_extension
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
2022-04-26 06:37:05 +00:00
Alejandro García 77c6681278 Supports 'availability_zone_hints' for Neutron networks and routers
This patch adds the property 'availability_zone_hints' for OS::Neutron::Router,
OS::Neutron::Net and OS::Neutron::ProviderNet resources.

Story: 1644974
Task: 17156
Signed-off-by: Alejandro <>
Change-Id: I71caefae01560dc106badbefd3859813d8417b2a
2022-04-14 20:30:35 +00:00