lib/bolt/executor.rb in bolt-3.5.0 vs lib/bolt/executor.rb in bolt-3.6.0
- old
+ new
@@ -10,38 +10,41 @@
require 'bolt/result'
require 'bolt/config'
require 'bolt/result_set'
require 'bolt/puppetdb'
# Load transports
-require 'bolt/transport/ssh'
-require 'bolt/transport/winrm'
-require 'bolt/transport/orch'
+require 'bolt/transport/docker'
require 'bolt/transport/local'
require 'bolt/transport/lxd'
-require 'bolt/transport/docker'
+require 'bolt/transport/orch'
+require 'bolt/transport/podman'
require 'bolt/transport/remote'
+require 'bolt/transport/ssh'
+require 'bolt/transport/winrm'
require 'bolt/yarn'
module Bolt
TRANSPORTS = {
- ssh: Bolt::Transport::SSH,
- winrm: Bolt::Transport::WinRM,
- pcp: Bolt::Transport::Orch,
+ docker: Bolt::Transport::Docker,
local: Bolt::Transport::Local,
lxd: Bolt::Transport::LXD,
- docker: Bolt::Transport::Docker,
- remote: Bolt::Transport::Remote
+ pcp: Bolt::Transport::Orch,
+ podman: Bolt::Transport::Podman,
+ remote: Bolt::Transport::Remote,
+ ssh: Bolt::Transport::SSH,
+ winrm: Bolt::Transport::WinRM
}.freeze
class Executor
- attr_reader :noop, :transports, :in_parallel
+ attr_reader :noop, :transports, :in_parallel, :future
attr_accessor :run_as
def initialize(concurrency = 1,
analytics = Bolt::Analytics::NoopClient.new,
noop = false,
- modified_concurrency = false)
+ modified_concurrency = false,
+ future = {})
# lazy-load expensive gem code
require 'concurrent'
@analytics = analytics
@logger = Bolt::Logger.logger(self)
@@ -62,9 +65,10 @@
@publisher.post { Thread.current[:name] = 'event-publisher' }
@noop = noop
@run_as = nil
@in_parallel = false
+ @future = future
@pool = if concurrency > 0
Concurrent::ThreadPoolExecutor.new(name: 'exec', max_threads: concurrency)
else
Concurrent.global_immediate_executor
end