diff --git a/lib/kitchen/driver/dokken.rb b/lib/kitchen/driver/dokken.rb index e956de3..1b6415c 100644 --- a/lib/kitchen/driver/dokken.rb +++ b/lib/kitchen/driver/dokken.rb @@ -45,7 +45,9 @@ class Dokken < Kitchen::Driver::Base default_config :dns, nil default_config :dns_search, nil default_config :docker_host_url, default_docker_host - default_config :docker_info, docker_info + default_config :docker_info do |driver| + docker_info(driver[:docker_host_url]) + end default_config :docker_registry, nil default_config :entrypoint, nil default_config :env, nil diff --git a/lib/kitchen/helpers.rb b/lib/kitchen/helpers.rb index c301bfd..f1ab2aa 100644 --- a/lib/kitchen/helpers.rb +++ b/lib/kitchen/helpers.rb @@ -117,8 +117,8 @@ def default_docker_host end end - def docker_info - ::Docker.url = default_docker_host + def docker_info(docker_host) + ::Docker.url = docker_host @docker_info ||= ::Docker.info rescue Excon::Error::Socket diff --git a/lib/kitchen/provisioner/dokken.rb b/lib/kitchen/provisioner/dokken.rb index 222becf..2426f8f 100644 --- a/lib/kitchen/provisioner/dokken.rb +++ b/lib/kitchen/provisioner/dokken.rb @@ -35,7 +35,9 @@ class Dokken < Kitchen::Provisioner::ChefZero default_config :chef_log_level, "warn" default_config :chef_output_format, "doc" default_config :profile_ruby, false - default_config :docker_info, docker_info + default_config :docker_info do |provisioner| + docker_info(provisioner[:docker_host_url]) + end default_config :docker_host_url, default_docker_host # Dokken is weird - the provisioner inherits from ChefZero but does not install diff --git a/lib/kitchen/transport/dokken.rb b/lib/kitchen/transport/dokken.rb index 9e0b75e..c22b6e7 100644 --- a/lib/kitchen/transport/dokken.rb +++ b/lib/kitchen/transport/dokken.rb @@ -39,7 +39,9 @@ class Dokken < Kitchen::Transport::Base plugin_version Kitchen::VERSION - default_config :docker_info, docker_info + default_config :docker_info do |transport| + docker_info(transport[:docker_host_url]) + end default_config :docker_host_url, default_docker_host default_config :read_timeout, 3600 default_config :write_timeout, 3600