lib/bolt/applicator.rb in bolt-1.19.0 vs lib/bolt/applicator.rb in bolt-1.20.0

- old
+ new

@@ -175,12 +175,10 @@ end def apply_ast(raw_ast, targets, options, plan_vars = {}) ast = Puppet::Pops::Serialization::ToDataConverter.convert(raw_ast, rich_data: true, symbol_to_string: true) - notify = proc { |_| nil } - r = @executor.log_action('apply catalog', targets) do futures = targets.map do |target| Concurrent::Future.execute(executor: @pool) do @executor.with_node_logging("Compiling manifest block", [target]) do compile(target, ast, plan_vars) @@ -198,10 +196,16 @@ 'catalog' => Puppet::Pops::Types::PSensitiveType::Sensitive.new(catalog), 'plugins' => Puppet::Pops::Types::PSensitiveType::Sensitive.new(plugins), '_noop' => options['_noop'] } - results = transport.batch_task(batch, catalog_apply_task, arguments, options, &notify) + callback = proc do |event| + if event[:type] == :node_result + event = event.merge(result: ApplyResult.from_task_result(event[:result])) + end + @executor.publish_event(event) + end + results = transport.batch_task(batch, catalog_apply_task, arguments, options, &callback) Array(results).map { |result| ApplyResult.from_task_result(result) } end end end