Commit 56100a1b authored by Romain Courteaud's avatar Romain Courteaud

slapos_upgrader: do not fixup instance tree virtual master if one software...

slapos_upgrader: do not fixup instance tree virtual master if one software instance is in the same virtual master
parent bb6439e5
......@@ -46,7 +46,6 @@ if aggregate_uid is None:
assert subscription_request.getDestinationDecision() == destination_value.getRelativeUrl()
assert subscription_request.getLedger() == "automated"
balance = destination_value.Entity_getDepositBalanceAmount(
[subscription_request]
)
if balance - price < 0:
......
......@@ -30,6 +30,22 @@ if root_software_instance is not None:
(root_instance_virtual_master_relative_url != instance_tree_virtual_master_relative_url) and
(not sla_xml_dict)):
instance_tree_migration_needed = True
# ensure no software instance is not on the instance tree
# virtual master. If so, keep the instance tree virtual master
for sql_result in portal.portal_catalog(
specialise__uid=instance_tree.getUid(),
portal_type='Software Instance'
):
instance = sql_result.getObject()
instance_partition = instance.getAggregateValue()
if instance_partition is not None:
instance_virtual_master_relative_url = instance_partition.getParentValue().getFollowUp(None)
if (instance_virtual_master_relative_url == instance_tree_virtual_master_relative_url):
instance_tree_migration_needed = False
if instance_tree_migration_needed:
edit_kw ={'follow_up_value': None}
activate_kw = {'tag': tag}
instance_tree.edit(**edit_kw)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment