0
votes

I want to test out the Ark cookbook. In order to do so, I have created a cookbook called test_ark and included a recipe default.rb:

# Copyright (c) 2017 The Authors, All Rights Reserved.
ark 'example' do
  url "http://apache.claz.org/kafka/0.10.2.1/kafka_2.10-0.10.2.1.tgz"
end

When I run "chef-apply test_ark/default.rb" to execute the default.rb recipe, I get the error in the title:

[2017-06-02T10:48:18-04:00] FATAL: Stacktrace dumped to /Users/nackerman/.chef/cache/chef-stacktrace.out
[2017-06-02T10:48:18-04:00] FATAL: Please provide the contents of the stacktrace.out file if you file a bug report
[2017-06-02T10:48:18-04:00] FATAL: NoMethodError: No resource or method named `ark' for `Chef::Recipe "(chef-apply recipe)"'

I have included the 'ark' cookbook in my Berksfile:

cookbook 'ark'

And I have included it as a dependency in the metadata.rb file:

depends 'ark'

What more do I need to do for the 'ark' block from the 'ark' cookbook to be visible from within the default.rb recipe?

1

1 Answers

1
votes

chef-apply is a very basic tool only intended for training or simple scripts. It doesn't process dependencies or really any loading beyond the single file it is given. You'll want to use chef-solo for local testing, probably via Test Kitchen.