This enables choice over the current behavior which is to always append
to the resource data blacklist, or overwrite it (which is sometimes needed
e.g if you decide you want to reuse that group index)
The default behavior is unchanged, but the new behavior can be selected
via the "update" value.
Change-Id: I1157627b07d98dd079657c320ad783a3ba5bce81
Closes-Bug: #1741053
The patch https://review.openstack.org/#/c/527001/ bypassed the None
list but did not consider the case where all the for_each lists are
getting their values from attributes and therefore are None.
This patch set fix it by also skipping the check if all the values
are None -- as len(value_lens) would be 0 in that case.
Closes-bug: #1732934
Change-Id: Iba574bbd3877f9ca1ca755c384b3ddb47aec711c
* Add subnet to interface managed keys when updating nets matching
interface port
* Add tests to verify that matching on "poor" nets with only
subnet works.
Change-Id: I3c2a251088fafef78c69aa4a758137907f414a60
Related-Bug: #1696483
Related-Bug: #1702279
* Implement _find_best_match() using subset intersection.
* Reduce number of expensive external neutron calls to get net_id by
moving this outside the inner loop.
Unit test updated, we now do a better job at matching and populate more
data when updating.
Partial-Bug: #1696483
Partial-Bug: #1702279
Change-Id: I2157d35e1c58f3960d5b6aa86199d93bb5b88401
* Consolidate unit test fake_interface to one global.
Instead of three implementations of the fake_interface. Use
one shared globally defined implementation.
* Use create_old_net() instead of just writing the dict.
* Adds the subnet_id property in fixed_ips of fake interfaces.
* Use 'network' instead of deprecated 'uuid'
Related-Bug: #1696483
Change-Id: Ifa7728402e1189348b1c4fcc0bbbd1eec8c0deaf
Don't raise InvalidTemplateAttribute in StackResource.get_output() when an
output does not exist - it's not the case that get_output() is only used
for fetching attributes. Instead, raise NotFound from get_output(), and
translate that to InvalidTemplateAttribute in the caller when we are
actually fetching an attribute.
Change-Id: I4f883e4b583a965785d0a595c8c33b47dc94118c
Related-Bug: #1719333
we should enable heat to specify network for trove cluster
after [1] merged
[1] https://review.openstack.org/#/c/179443/
Change-Id: I161b7cc1c4824f6aa4a4667bf2d909a2ead81cb4
Release notes are version independent, so remove version/release
values. We've found that projects now require the service package
to be installed in order to build release notes, and this is entirely
due to the current convention of pulling in the version information.
Release notes should not need installation in order to build, so this
unnecessary version setting needs to be removed.
This is needed for new release notes publishing, see
I56909152975f731a9d2c21b2825b972195e48ee8 and the discussion starting
at
http://lists.openstack.org/pipermail/openstack-dev/2017-November/124480.html
.
Closes-Bug: #1737955
Change-Id: I981c5a6476b40bf9f7fcd35ae0c638e77912f060
Attributes may return "None" before the resource is created,
so the length check for for_each lists in repeat function will fail.
Bybass the length check for the None list
Change-Id: Ida81060e62340b3ea37ba0fdd7443dc88ba6c5aa
Closes-bug: #1732934
Since we're moving all policy into code and documenting it there we
should generate those docs automatically, so they are less likely to
be out-of-date.
Also add releasenote for ops to aware that Heat is now using
policies in code and their Orchestration service needs to avoid
depends on policy.json file if file not exist, since there is no
such file by default after this patch.
Partially-Implements: bp policy-in-code
Change-Id: I25fc5a110b1fe515918e042f220c23ac9a7e811f
Add cloudformation and cloudwatch policy in code rules.
Remove policy.json. We don't keep any default policy rules in
policy.json from now. Still they can create policy.json file and
add any rules they try to override.
Partially-Implements: bp policy-in-code
Change-Id: I610115dc1974b2182ce673bb086a1da15b022de3
This issue was due to Nova changes it's volume attach workflow
(https://review.openstack.org/#/c/330285) which allows `reserved`
status.
Closes-Bug: #1737343
Change-Id: I13f1906f53a89586bb51c0b70fa768a9500dfa26
Silence PolicyNotRegistered exception when checking resource type.
We do not consider PolicyNotRegistered as an error when checking
resource type, so we shouldn't log the exception as well.
Depends-On: I13f1906f53a89586bb51c0b70fa768a9500dfa26
Change-Id: I111ea7ffa43a46d2a6fe360fb0c20d672df5771c
When we consolidated resource locking with resource state transitions in
a7376f7494b310e9367ebe5dcb43b432a4053023, prepare_update_replace() moved
outside of the locked section, so that other update operations could
potentially conflict with it. This change ensures that we call it while the
lock is still held (if we have transitioned the resource to
UPDATE_IN_PROGRESS, and thus acquired the lock), or that we acquire the
lock before calling it (if UpdateReplace is raised before attempting to
update the resource).
To avoid unnecessary locking and unlocking, we only take the lock if the
Resource plugin has overridden the default handler method (either
restore_prev_rsrc() or prepare_for_replace()), since the defaults do
nothing.
Change-Id: Ie32836ed643e440143bde8b83aeb4d6159acd034
Closes-Bug: #1727127