Repository: test-kitchen/test-kitchen

Issue #1307: Test-kitchen should not `require berkshelf` and should use berks as a CLI tool and not a ruby library
Created: 2017-10-27T20:58:05Z
Using external code as a ruby library is correct for the 80% case, but entirely fails with berkshelf.
By requiring berkshelf it produces a hard dep on all the dependencies of berkshelf and pulls all of them into the project.  By shelling out another ruby process will be fired up which decouples the dependencies.
It also simplifies the berkshelf API to the public CLI rather than anything someone can poke in the Berkshelf namespace (and for example, we're ripping all of the Ridley namespace out of berkshelf in a minor release).

Duplicate issue #1568: Test Kitchen Concurrency Fails
Created: 2019-06-28T19:48:25Z
Description
Test Kitchen concurrent job is failing.
Kitchen Version
2.2.5

ChefDK Version
4.0.60

Ruby Version
2.6.3p62

Platform Version
RHEL 7.6
Replication Case
Create a kitchen yaml configuration that creates at least two instances, leveraging the kitchen-vcenter driver.  Run kitchen test -c.
Kitchen Output
D      ------Exception-------
D      Class: Kitchen::ActionFailed
D      Message: 2 actions failed.
>>>>>>     Failed to complete #converge action: [An error occurred while reading the Berksfile:

  No such file or directory @ rb_sysopen - s1-in-chf-l301_ad_merlin_net.crt] on unregister-luna-client-rhel7
>>>>>>     Failed to complete #converge action: [An error occurred while reading the Berksfile:

  No such file or directory @ rb_sysopen - s1-in-chf-l301_ad_merlin_net.crt] on default-luna-client-rhel7
D      ----------------------
D      ------Backtrace-------
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/command.rb:183:in `report_errors'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/command.rb:174:in `run_action'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/command/test.rb:42:in `block in call'
D      /opt/chefdk/embedded/lib/ruby/2.6.0/benchmark.rb:293:in `measure'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/command/test.rb:38:in `call'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/cli.rb:52:in `perform'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/cli.rb:245:in `test'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/thor-0.20.3/lib/thor/command.rb:27:in `run'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/thor-0.20.3/lib/thor/invocation.rb:126:in `invoke_command'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/thor-0.20.3/lib/thor.rb:387:in `dispatch'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/thor-0.20.3/lib/thor/base.rb:466:in `start'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/bin/kitchen:13:in `block in <top (required)>'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/errors.rb:171:in `with_friendly_errors'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/bin/kitchen:13:in `<top (required)>'
D      /opt/chefdk/bin/kitchen:316:in `load'
D      /opt/chefdk/bin/kitchen:316:in `<main>'
D      ----End Backtrace-----
D      -Composite Exception--
D      Class: Kitchen::ActionFailed
D      Message: Failed to complete #converge action: [An error occurred while reading the Berksfile:

  No such file or directory @ rb_sysopen - s1-in-chf-l301_ad_merlin_net.crt] on unregister-luna-client-rhel7
D      ----------------------
D      ------Backtrace-------
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/berkshelf-7.0.8/lib/berkshelf/ssl_policies.rb:36:in `read'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/berkshelf-7.0.8/lib/berkshelf/ssl_policies.rb:36:in `block (2 levels) in set_custom_certs'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/berkshelf-7.0.8/lib/berkshelf/ssl_policies.rb:35:in `each'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/berkshelf-7.0.8/lib/berkshelf/ssl_policies.rb:35:in `block in set_custom_certs'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/berkshelf-7.0.8/lib/berkshelf/ssl_policies.rb:34:in `chdir'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/berkshelf-7.0.8/lib/berkshelf/ssl_policies.rb:34:in `set_custom_certs'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/berkshelf-7.0.8/lib/berkshelf/ssl_policies.rb:15:in `initialize'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/berkshelf-7.0.8/lib/berkshelf/source.rb:57:in `new'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/berkshelf-7.0.8/lib/berkshelf/source.rb:57:in `ssl_policy'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/berkshelf-7.0.8/lib/berkshelf/source.rb:52:in `initialize'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/berkshelf-7.0.8/lib/berkshelf/berksfile.rb:208:in `new'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/berkshelf-7.0.8/lib/berkshelf/berksfile.rb:208:in `source'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/cleanroom-1.0.0/lib/cleanroom.rb:130:in `public_send'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/cleanroom-1.0.0/lib/cleanroom.rb:130:in `block (3 levels) in cleanroom'
D      /Users/lewisdx5/code/chef/cookbooks/infrastructure/luna_client/Berksfile:1:in `evaluate'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/cleanroom-1.0.0/lib/cleanroom.rb:70:in `instance_eval'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/cleanroom-1.0.0/lib/cleanroom.rb:70:in `evaluate'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/cleanroom-1.0.0/lib/cleanroom.rb:56:in `evaluate_file'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/cleanroom-1.0.0/lib/cleanroom.rb:173:in `evaluate_file'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/berkshelf-7.0.8/lib/berkshelf/berksfile.rb:27:in `from_file'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/provisioner/chef/berkshelf.rb:62:in `block in resolve'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/thor-0.20.3/lib/thor/shell/basic.rb:22:in `mute'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/provisioner/chef/berkshelf.rb:61:in `resolve'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/provisioner/chef/common_sandbox.rb:318:in `block in resolve_with_berkshelf'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/provisioner/chef/common_sandbox.rb:315:in `synchronize'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/provisioner/chef/common_sandbox.rb:315:in `resolve_with_berkshelf'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/provisioner/chef/common_sandbox.rb:252:in `prepare_cookbooks'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/provisioner/chef/common_sandbox.rb:48:in `populate'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/provisioner/chef_base.rb:289:in `create_sandbox'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/provisioner/chef_zero.rb:50:in `create_sandbox'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/provisioner/base.rb:71:in `call'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/instance.rb:409:in `block in converge_action'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/instance.rb:552:in `synchronize_or_call'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/instance.rb:514:in `block in action'
D      /opt/chefdk/embedded/lib/ruby/2.6.0/benchmark.rb:293:in `measure'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/instance.rb:513:in `action'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/instance.rb:404:in `converge_action'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/instance.rb:382:in `block (2 levels) in transition_to'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/lifecycle_hooks.rb:45:in `run_with_hooks'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/instance.rb:381:in `block in transition_to'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/instance.rb:380:in `each'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/instance.rb:380:in `transition_to'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/instance.rb:162:in `verify'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/instance.rb:191:in `block in test'
D      /opt/chefdk/embedded/lib/ruby/2.6.0/benchmark.rb:293:in `measure'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/instance.rb:187:in `test'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/command.rb:197:in `public_send'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/command.rb:197:in `run_action_in_thread'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/command.rb:169:in `block (2 levels) in run_action'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/logging-2.2.2/lib/logging/diagnostic_context.rb:474:in `block in create_with_logging_context'
D      ----End Backtrace-----
D      ---Nested Exception---
D      Class: Kitchen::ActionFailed
D      Message: Failed to complete #converge action: [An error occurred while reading the Berksfile:

  No such file or directory @ rb_sysopen - s1-in-chf-l301_ad_merlin_net.crt]
D      ----------------------
D      ------Backtrace-------
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/berkshelf-7.0.8/lib/berkshelf/ssl_policies.rb:36:in `read'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/berkshelf-7.0.8/lib/berkshelf/ssl_policies.rb:36:in `block (2 levels) in set_custom_certs'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/berkshelf-7.0.8/lib/berkshelf/ssl_policies.rb:35:in `each'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/berkshelf-7.0.8/lib/berkshelf/ssl_policies.rb:35:in `block in set_custom_certs'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/berkshelf-7.0.8/lib/berkshelf/ssl_policies.rb:34:in `chdir'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/berkshelf-7.0.8/lib/berkshelf/ssl_policies.rb:34:in `set_custom_certs'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/berkshelf-7.0.8/lib/berkshelf/ssl_policies.rb:15:in `initialize'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/berkshelf-7.0.8/lib/berkshelf/source.rb:57:in `new'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/berkshelf-7.0.8/lib/berkshelf/source.rb:57:in `ssl_policy'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/berkshelf-7.0.8/lib/berkshelf/source.rb:52:in `initialize'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/berkshelf-7.0.8/lib/berkshelf/berksfile.rb:208:in `new'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/berkshelf-7.0.8/lib/berkshelf/berksfile.rb:208:in `source'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/cleanroom-1.0.0/lib/cleanroom.rb:130:in `public_send'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/cleanroom-1.0.0/lib/cleanroom.rb:130:in `block (3 levels) in cleanroom'
D      /Users/lewisdx5/code/chef/cookbooks/infrastructure/luna_client/Berksfile:1:in `evaluate'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/cleanroom-1.0.0/lib/cleanroom.rb:70:in `instance_eval'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/cleanroom-1.0.0/lib/cleanroom.rb:70:in `evaluate'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/cleanroom-1.0.0/lib/cleanroom.rb:56:in `evaluate_file'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/cleanroom-1.0.0/lib/cleanroom.rb:173:in `evaluate_file'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/berkshelf-7.0.8/lib/berkshelf/berksfile.rb:27:in `from_file'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/provisioner/chef/berkshelf.rb:62:in `block in resolve'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/thor-0.20.3/lib/thor/shell/basic.rb:22:in `mute'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/provisioner/chef/berkshelf.rb:61:in `resolve'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/provisioner/chef/common_sandbox.rb:318:in `block in resolve_with_berkshelf'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/provisioner/chef/common_sandbox.rb:315:in `synchronize'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/provisioner/chef/common_sandbox.rb:315:in `resolve_with_berkshelf'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/provisioner/chef/common_sandbox.rb:252:in `prepare_cookbooks'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/provisioner/chef/common_sandbox.rb:48:in `populate'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/provisioner/chef_base.rb:289:in `create_sandbox'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/provisioner/chef_zero.rb:50:in `create_sandbox'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/provisioner/base.rb:71:in `call'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/instance.rb:409:in `block in converge_action'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/instance.rb:552:in `synchronize_or_call'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/instance.rb:514:in `block in action'
D      /opt/chefdk/embedded/lib/ruby/2.6.0/benchmark.rb:293:in `measure'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/instance.rb:513:in `action'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/instance.rb:404:in `converge_action'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/instance.rb:382:in `block (2 levels) in transition_to'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/lifecycle_hooks.rb:45:in `run_with_hooks'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/instance.rb:381:in `block in transition_to'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/instance.rb:380:in `each'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/instance.rb:380:in `transition_to'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/instance.rb:162:in `verify'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/instance.rb:191:in `block in test'
D      /opt/chefdk/embedded/lib/ruby/2.6.0/benchmark.rb:293:in `measure'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/instance.rb:187:in `test'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/command.rb:197:in `public_send'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/command.rb:197:in `run_action_in_thread'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/command.rb:169:in `block (2 levels) in run_action'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/logging-2.2.2/lib/logging/diagnostic_context.rb:474:in `block in create_with_logging_context'
D      ----End Backtrace-----
D      -Composite Exception--
D      Class: Kitchen::ActionFailed
D      Message: Failed to complete #converge action: [An error occurred while reading the Berksfile:

  No such file or directory @ rb_sysopen - s1-in-chf-l301_ad_merlin_net.crt] on default-luna-client-rhel7
D      ----------------------
D      ------Backtrace-------
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/berkshelf-7.0.8/lib/berkshelf/ssl_policies.rb:36:in `read'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/berkshelf-7.0.8/lib/berkshelf/ssl_policies.rb:36:in `block (2 levels) in set_custom_certs'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/berkshelf-7.0.8/lib/berkshelf/ssl_policies.rb:35:in `each'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/berkshelf-7.0.8/lib/berkshelf/ssl_policies.rb:35:in `block in set_custom_certs'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/berkshelf-7.0.8/lib/berkshelf/ssl_policies.rb:34:in `chdir'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/berkshelf-7.0.8/lib/berkshelf/ssl_policies.rb:34:in `set_custom_certs'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/berkshelf-7.0.8/lib/berkshelf/ssl_policies.rb:15:in `initialize'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/berkshelf-7.0.8/lib/berkshelf/source.rb:57:in `new'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/berkshelf-7.0.8/lib/berkshelf/source.rb:57:in `ssl_policy'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/berkshelf-7.0.8/lib/berkshelf/source.rb:52:in `initialize'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/berkshelf-7.0.8/lib/berkshelf/berksfile.rb:208:in `new'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/berkshelf-7.0.8/lib/berkshelf/berksfile.rb:208:in `source'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/cleanroom-1.0.0/lib/cleanroom.rb:130:in `public_send'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/cleanroom-1.0.0/lib/cleanroom.rb:130:in `block (3 levels) in cleanroom'
D      /Users/lewisdx5/code/chef/cookbooks/infrastructure/luna_client/Berksfile:1:in `evaluate'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/cleanroom-1.0.0/lib/cleanroom.rb:70:in `instance_eval'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/cleanroom-1.0.0/lib/cleanroom.rb:70:in `evaluate'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/cleanroom-1.0.0/lib/cleanroom.rb:56:in `evaluate_file'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/cleanroom-1.0.0/lib/cleanroom.rb:173:in `evaluate_file'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/berkshelf-7.0.8/lib/berkshelf/berksfile.rb:27:in `from_file'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/provisioner/chef/berkshelf.rb:62:in `block in resolve'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/thor-0.20.3/lib/thor/shell/basic.rb:22:in `mute'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/provisioner/chef/berkshelf.rb:61:in `resolve'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/provisioner/chef/common_sandbox.rb:318:in `block in resolve_with_berkshelf'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/provisioner/chef/common_sandbox.rb:315:in `synchronize'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/provisioner/chef/common_sandbox.rb:315:in `resolve_with_berkshelf'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/provisioner/chef/common_sandbox.rb:252:in `prepare_cookbooks'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/provisioner/chef/common_sandbox.rb:48:in `populate'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/provisioner/chef_base.rb:289:in `create_sandbox'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/provisioner/chef_zero.rb:50:in `create_sandbox'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/provisioner/base.rb:71:in `call'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/instance.rb:409:in `block in converge_action'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/instance.rb:552:in `synchronize_or_call'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/instance.rb:514:in `block in action'
D      /opt/chefdk/embedded/lib/ruby/2.6.0/benchmark.rb:293:in `measure'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/instance.rb:513:in `action'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/instance.rb:404:in `converge_action'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/instance.rb:382:in `block (2 levels) in transition_to'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/lifecycle_hooks.rb:45:in `run_with_hooks'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/instance.rb:381:in `block in transition_to'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/instance.rb:380:in `each'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/instance.rb:380:in `transition_to'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/instance.rb:162:in `verify'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/instance.rb:191:in `block in test'
D      /opt/chefdk/embedded/lib/ruby/2.6.0/benchmark.rb:293:in `measure'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/instance.rb:187:in `test'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/command.rb:197:in `public_send'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/command.rb:197:in `run_action_in_thread'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/command.rb:169:in `block (2 levels) in run_action'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/logging-2.2.2/lib/logging/diagnostic_context.rb:474:in `block in create_with_logging_context'
D      ----End Backtrace-----
D      ---Nested Exception---
D      Class: Kitchen::ActionFailed
D      Message: Failed to complete #converge action: [An error occurred while reading the Berksfile:

  No such file or directory @ rb_sysopen - s1-in-chf-l301_ad_merlin_net.crt]
D      ----------------------
D      ------Backtrace-------
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/berkshelf-7.0.8/lib/berkshelf/ssl_policies.rb:36:in `read'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/berkshelf-7.0.8/lib/berkshelf/ssl_policies.rb:36:in `block (2 levels) in set_custom_certs'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/berkshelf-7.0.8/lib/berkshelf/ssl_policies.rb:35:in `each'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/berkshelf-7.0.8/lib/berkshelf/ssl_policies.rb:35:in `block in set_custom_certs'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/berkshelf-7.0.8/lib/berkshelf/ssl_policies.rb:34:in `chdir'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/berkshelf-7.0.8/lib/berkshelf/ssl_policies.rb:34:in `set_custom_certs'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/berkshelf-7.0.8/lib/berkshelf/ssl_policies.rb:15:in `initialize'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/berkshelf-7.0.8/lib/berkshelf/source.rb:57:in `new'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/berkshelf-7.0.8/lib/berkshelf/source.rb:57:in `ssl_policy'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/berkshelf-7.0.8/lib/berkshelf/source.rb:52:in `initialize'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/berkshelf-7.0.8/lib/berkshelf/berksfile.rb:208:in `new'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/berkshelf-7.0.8/lib/berkshelf/berksfile.rb:208:in `source'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/cleanroom-1.0.0/lib/cleanroom.rb:130:in `public_send'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/cleanroom-1.0.0/lib/cleanroom.rb:130:in `block (3 levels) in cleanroom'
D      /Users/lewisdx5/code/chef/cookbooks/infrastructure/luna_client/Berksfile:1:in `evaluate'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/cleanroom-1.0.0/lib/cleanroom.rb:70:in `instance_eval'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/cleanroom-1.0.0/lib/cleanroom.rb:70:in `evaluate'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/cleanroom-1.0.0/lib/cleanroom.rb:56:in `evaluate_file'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/cleanroom-1.0.0/lib/cleanroom.rb:173:in `evaluate_file'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/berkshelf-7.0.8/lib/berkshelf/berksfile.rb:27:in `from_file'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/provisioner/chef/berkshelf.rb:62:in `block in resolve'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/thor-0.20.3/lib/thor/shell/basic.rb:22:in `mute'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/provisioner/chef/berkshelf.rb:61:in `resolve'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/provisioner/chef/common_sandbox.rb:318:in `block in resolve_with_berkshelf'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/provisioner/chef/common_sandbox.rb:315:in `synchronize'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/provisioner/chef/common_sandbox.rb:315:in `resolve_with_berkshelf'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/provisioner/chef/common_sandbox.rb:252:in `prepare_cookbooks'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/provisioner/chef/common_sandbox.rb:48:in `populate'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/provisioner/chef_base.rb:289:in `create_sandbox'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/provisioner/chef_zero.rb:50:in `create_sandbox'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/provisioner/base.rb:71:in `call'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/instance.rb:409:in `block in converge_action'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/instance.rb:552:in `synchronize_or_call'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/instance.rb:514:in `block in action'
D      /opt/chefdk/embedded/lib/ruby/2.6.0/benchmark.rb:293:in `measure'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/instance.rb:513:in `action'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/instance.rb:404:in `converge_action'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/instance.rb:382:in `block (2 levels) in transition_to'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/lifecycle_hooks.rb:45:in `run_with_hooks'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/instance.rb:381:in `block in transition_to'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/instance.rb:380:in `each'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/instance.rb:380:in `transition_to'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/instance.rb:162:in `verify'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/instance.rb:191:in `block in test'
D      /opt/chefdk/embedded/lib/ruby/2.6.0/benchmark.rb:293:in `measure'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/instance.rb:187:in `test'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/command.rb:197:in `public_send'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/command.rb:197:in `run_action_in_thread'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/test-kitchen-2.2.5/lib/kitchen/command.rb:169:in `block (2 levels) in run_action'
D      /opt/chefdk/embedded/lib/ruby/gems/2.6.0/gems/logging-2.2.2/lib/logging/diagnostic_context.rb:474:in `block in create_with_logging_context'
D      ----End Backtrace-----

I am not sure if this is related to the driver, but there is no indication that it would be the issue.

Closing comment (2019-07-10T17:54:50Z): closing this as a dup of #1307