我使用以下网址开始使用Chef。
https://medium.com/@chandra25ms/running-a-chef-cookbook-using-chef-solo-bb4b2773acb8
我在我的Windows机器上安装了ChefDK
0,00000000000000183700
web.json -
PS C:\Users\bhavek\Desktop\br-test\recipes> chef --v
Chef Development Kit Version: 2.4.17
chef-client version: 13.6.4
default.rb
{
"run_list": [ "recipe[first_cookbook]" ]
}
solo.rb
#
# Cookbook:: br-test
# Recipe:: default
#
# Copyright:: 2018, The Authors, All Rights Reserved.
file "C:\br.txt" do
content "This is my text content"
action :create
end
在ChefDK
中执行此操作file_cache_path "/home/user/cache"
cookbook_path "C:\DevOps COE"
错误 -
chef-solo -c "C:\Users\bhavek\Desktop\br-test\solo.rb" -j "C:\Users\bhavek\Desktop\br-test\web.json"
答案 0 :(得分:2)
两个问题,首先,食谱路径必须是包含多个烹饪书的文件夹的路径,而不仅仅是像你在那里的一本食谱。其次,您需要创建节点文件夹,因为它将存储节点数据。默认情况下,将其放置在相对于cookbook路径的位置。
答案 1 :(得分:0)
以下是更新的食谱,独奏和网络文件。
web.json
{
"run_list": [ "recipe[first_cookbook::default]" ]
}
solo.rb
file_cache_path "C:/DevOpsCOE/cache"
cookbook_path "C:/DevOpsCOE"
default.rb
#
# Cookbook:: br-test
# Recipe:: default
#
# Copyright:: 2018, The Authors, All Rights Reserved.
file "C:/br.txt" do
content "This is my test text content"
action :create
end
答案 2 :(得分:0)
我也遇到了同样的错误。使用下面提到的变量更新了knife.rb 文件并且它起作用了:
file_cache_path nil
file_backup_path nil
这是一个特定于版本的问题。在另一个具有不同 Chefdk 版本(旧版本)的工作站上,相同的食谱工作正常。
我的工作站版本详情:
C:\chef-starter\chef-repo> chef -v
ChefDK version: 4.9.7
Chef Infra Client version: 15.12.22
Chef InSpec version: 4.21.3
Test Kitchen version: 2.5.2
Foodcritic version: 16.3.0
Cookstyle version: 5.23.0