Sha256: ad07c3e102a9316ee7509ff1bbf8bddd02e9b8b94cd64d3e297372e4c26883df

Contents?: true

Size: 899 Bytes

Versions: 4

Compression:

Stored size: 899 Bytes

Contents

# frozen_string_literal: true

require 'bolt/logger'
require 'bolt/transport/simple'

module Bolt
  module Transport
    class Local < Simple
      def connected?(_target)
        true
      end

      def with_connection(target)
        if target.transport_config['bundled-ruby'] || target.name == 'localhost'
          target.set_local_defaults
        end

        if target.name != 'localhost' &&
           !target.transport_config.key?('bundled-ruby')
          msg = "The local transport will default to using Bolt's Ruby interpreter and "\
            "setting the 'puppet-agent' feature in Bolt 3.0. Enable or disable these "\
            "defaults by setting 'bundled-ruby' in the local transport config."
          Bolt::Logger.warn_once('local default config', msg)
        end

        yield Connection.new(target)
      end
    end
  end
end

require 'bolt/transport/local/connection'

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
bolt-2.42.0 lib/bolt/transport/local.rb
bolt-2.40.2 lib/bolt/transport/local.rb
bolt-2.40.1 lib/bolt/transport/local.rb
bolt-2.38.0 lib/bolt/transport/local.rb