@ -147,8 +147,7 @@ class StrategyModule(StrategyBase):
if len ( included_files ) > 0 :
all_blocks = dict ( ( host , [ ] ) for host in hosts_left )
for included_file in included_files :
# included hosts get the task list while those excluded get an equal-length
# list of noop tasks, to make sure that they continue running in lock-step
display . debug ( " collecting new blocks for %s " % included_file )
try :
new_blocks = self . _load_included_file ( included_file , iterator = iterator )
except AnsibleError as e :
@ -157,17 +156,18 @@ class StrategyModule(StrategyBase):
display . warning ( str ( e ) )
continue
display . debug ( " generating all_blocks data " )
display . debug ( " done generating all_blocks data " )
for new_block in new_blocks :
task_vars = self . _variable_manager . get_vars ( loader = self . _loader , play = iterator . _play , task = included_file . _task )
final_block = new_block . filter_tagged_tasks ( play_context , task_vars )
for host in hosts_left :
if host in included_file . _hosts :
all_blocks [ host ] . append ( final_block )
display . debug ( " done collecting new blocks for %s " % included_file )
display . debug ( " adding all collected blocks from %d included file(s) to iterator " % len ( included_files ) )
for host in hosts_left :
iterator . add_tasks ( host , all_blocks [ host ] )
display . debug ( " done adding collected blocks to iterator " )
# pause briefly so we don't spin lock
time . sleep ( 0.05 )