File tree Expand file tree Collapse file tree 3 files changed +11
-4
lines changed
lib/syskit/network_generation Expand file tree Collapse file tree 3 files changed +11
-4
lines changed Original file line number Diff line number Diff line change @@ -89,6 +89,7 @@ def initialize(
8989 event_logger : event_logger ,
9090 resolution_control : resolution_control
9191 )
92+ @used_deployments = { }
9293 @required_instances = { }
9394 end
9495
@@ -127,10 +128,11 @@ def compute_deployed_network(
127128 resolution_control : @resolution_control
128129 )
129130
130- @ used_deployments, = deployer . deploy (
131+ used_deployments , = deployer . deploy (
131132 error_handler : error_handler , validate : validate_deployed_network ,
132133 lazy : lazy_deploy
133134 )
135+ @used_deployments = @used_deployments . merge ( used_deployments )
134136 resolution_errors = error_handler . process_failures (
135137 required_instances , cleanup_failed_tasks : true
136138 )
@@ -392,7 +394,7 @@ def compute_system_network(
392394 instance_requirements
393395 )
394396
395- system_network_generator . resolve_system_network (
397+ _ , @used_deployments = system_network_generator . resolve_system_network (
396398 garbage_collect : garbage_collect ,
397399 validate_abstract_network : validate_abstract_network ,
398400 validate_generated_network : validate_generated_network ,
Original file line number Diff line number Diff line change @@ -470,6 +470,7 @@ def adapt_existing_deployed_task(
470470 task , existing_tasks , existing_deployment_task
471471 )
472472 existing_task = find_current_deployed_task ( existing_tasks )
473+ return if task == existing_task
473474
474475 if !existing_task || !task . can_be_deployed_by? ( existing_task )
475476 new_task = adapt_existing_create_new (
Original file line number Diff line number Diff line change @@ -268,6 +268,7 @@ def resolve_system_network(
268268 validate_deployed_network : true
269269 )
270270 deployment_tasks = { }
271+ @used_deployments = { }
271272 early_deploy ( deployment_tasks )
272273
273274 merge_solver . merge_identical_tasks
@@ -322,13 +323,16 @@ def resolve_system_network(
322323 early_deploy? && validate_deployed_network
323324 )
324325 interruption_point ( "syskit-netgen:validation" )
325- @toplevel_tasks
326+
327+ @used_deployments . transform_keys! { @merge_solver . replacement_for ( _1 ) }
328+ [ @toplevel_tasks , @used_deployments ]
326329 end
327330
328331 def early_deploy ( deployment_tasks )
329332 return unless early_deploy?
330333
331- deploy ( deployment_tasks )
334+ used_deployments , = deploy ( deployment_tasks )
335+ @used_deployments . merge! ( used_deployments )
332336 interruption_point "syskit-netgen:early-deploy"
333337 end
334338
You can’t perform that action at this time.
0 commit comments