The cause of problem is related with tricky method of Dependencies
class. So required_by method returns dictionary with resources which
have current resource in dependency. In the same time port resource
does not require floating ip, contrariwise floating ip require port.
As result required_by will not return depended port. There is one
way to solve issue: use dictionary of requires resources.
Also this patch fixes missed code error with incorrect using properties
attribute for value fixed_ip.
Notice that both these issues were not detected, because:
- method port_on_subnet is not executed, because required_by was always
empty dictionary.
- current test has shadow mistake. Dependencies for router_interface
always contain FloatingIP resource, because router gateway also was
presented in using templates and during creation graph FloatingIp
automatically was added to result dictionary.
Change-Id: Ida30e51d526a3f5d2a4d0a4102b1036f1c518302
Closes-Bug: #1384114
Fix the HeatTestCase import issue as required by H302,
a following patch of https://review.openstack.org/#/c/129846/
Change-Id: Iab9a508682e9fe2932b7d00b191c8a4cdea4738b
To avoid H302 check, add most common imports to import_exceptions.
from heat.common.i18n import _
from heat.common.i18n import _LE
from heat.common.i18n import _LI
from heat.common.i18n import _LW
Change-Id: I4e4d1462d4c351e08a09d935a5a177c1d8954e06
HARestarter is a primitive prototype that is barely maintained. Its
implementation still dates to the era when the resource name, physical
resource ID and RefId were regularly used interchangably.
This change substitutes Stack.resource_by_refid() for the previous
(incorrect) home-grown hack, so that at least the giant red flags will be
easy to grep for.
Change-Id: I9d81dfcd5d34282c8bd83bbd98350e75c1ec0eb2
Closes-Bug: #1381136
It seems to be common error to do the following:
LaunchConfigurationName: my_config
and not include a depends_on.
Largely because of the unfortunate property name.
So this patch tries to make sure the user has the
correct dependency in place.
Change-Id: I4f7d282d0af8681dc2c8cd265e16a27fe23a3bdb
Closes-bug: #1375777
A icehouse->juno migration issue has surfaced where
resource.properties_data is null for existing resource records.
This change fixes the Json db type to treat None the same as
the serialized JSON 'null'.
Change-Id: Ia0b9a23a7798c95fbbcba439ffb8203b50367e7c
Closes-Bug: #1383505
test_cinder_volume_create_backup_restore fails frequently due to issues
outside heat. Instead of failing, this change halts the test when the
error condition is triggered. This will allow some of the test to run
while making the check job voting.
Once logging is configured in heat_integrationtests an elastic-recheck
search can monitor for the frequency of this error to aid
nova/cinder/swift developers to fix it.
Change-Id: I09722ad725a8d23fb2028c17b0dd9fcab3957649
Related-Bug: #1382300
To cater for the requirement of TripleO (and others) to specify a
victim for removal from a Resource group ("eliding" in merge.py speak)
add a new property, which enables specific indexes to be passed on
update, which will force removal of those specific resources.
In future it may be that we add additional ways to specify the removal
policy, so this interface is a list of policies, with each policy being
a map taking an optional list of arguments.
'resource_list' policy added now, which takes one of the following:
1. Resource name (as specified in the nested stack, obtainable e.g via
heat resource-list --nested-depth $n <parent stack>, or by doing
resource-list directly using the nested stack ID obtainable via
physical_resource_id of the ResourceGroup resource.
2. The nested resource refid - this is typically (but not always,
particularly for AWS resources) the resource physical_resource_id,
and is obtainable via either get_resource or the "refs" attribute
of the ResourceGroup.
Note that once removed, the resource name is never reused, so the
%index%, where used, will always increment on replacement.
Change-Id: Icbc76b54bae3eb39efdaa704b036b1bbb94db206
blueprint: resourcegroup-force-remove
We could rename the local variables, but it's just as easy to not
use the resource module. Since the functions are not used, remove them.
Change-Id: I356fbe0042f24aba78fba5deebe7fa645a035d96
Since SoftwareComponent is derived from SoftwareConfig, the support
status 2014.1 inherited from SoftwareConfig was incorrectly shown for
the SoftwareComponent resource.
This patch fixes the problem by correctly setting support_status in
the SoftwareComponent resource.
Change-Id: I973755f11e21ccb4f8bbc532da4de964e07c65f1
This is a port of tempest.api.orchestration.stacks.stack_update
in an effort to reproduce the postgres race described in
bug #1370865.
Subsequent changes will create an experimental postgres check job and
a change to the test which runs test_stack_update_add_remove enough
times to triger the race.
Change-Id: I8aee26e29f242b11a5d3c8d56a859ae770be86c2
Related-Bug: #1370865
When an error occurs during a stack update operation,
don't immediately stop the operation. Instead,
wait up to 4 minutes for resources already in progress
to complete before forcibly cancelling them.
Change-Id: Ib089dbc675c519668a44d1b0e3214feca5079978
Closes-bug: #1381984
This change the default value of the option
'trusts_delegated_roles' to []. And delegate all of
the trustor roles when create the trust unless
user set the option to subset roles.
Change-Id: I3f1b70b78b91bfac9af5fadb71140679b208c999
Closes-bug: #1376562
Catch the EndpointNotFound exception raised by Keystone rather
than the one thrown by Cinder since keystoneclient raises keystone
exceptions and not cinder exceptions. Also update the fake
keystone client to mirror this behavior.
Change-Id: I9f4579cf55fc697470dd8803553d7968e22a6bec
Closes-Bug: #1382659
flake8 has support for cyclomatic complexity (Mccabe) currently our
worst offender has a complexity of 28 (25 is considered very bad). So
set our max-complexity to 29 so we at least don't make things any worse.
This is the first step in bringing this number down to 20 or so.
https://github.com/flintwork/mccabe
Change-Id: Ic90093ab80d9d3e27c257ea1a5cc393e09ebc7ee
Add a 'scheduler_hints' option for OS::Cinder::Volume objects, as is
it already done for OS::Nova::Server.
Implements: blueprint cinder-scheduler-hints
Change-Id: I090359c212df1d17b10e374d2e80e22344017aee
No need to set tabstop tons of times, this can be set in your vimrc
file instead.
Closes-Bug: #1229324
Change-Id: Ib859c0af8a29437540a0586dc0af77bb544ece23