chef-- knife cookbook upload给出错误ERROR:Errno :: ENOENT:在Windows上没有这样的文件或目录

时间:2017-06-29 06:49:58

标签: chef knife cookbook

我是厨师新手,从Lynda学习,Robin Beck的教程。我正在使用Windows 10并按照教程中的说明安装了ChefDk。树结构如下:

C:.
├───.chef
├───cookbooks
│   └───apache
│       ├───.delivery
│       │   └───build_cookbook
│       │       ├───data_bags
│       │       │   └───keys
│       │       ├───recipes
│       │       ├───secrets
│       │       └───test
│       │           └───fixtures
│       │               └───cookbooks
│       │                   └───test
│       │                       └───recipes
│       ├───recipes
│       ├───spec
│       │   └───unit
│       │       └───recipes
│       ├───templates
│       │   └───default
│       └───test
│           └───recipes
└───roles

我正在尝试使用knife命令上传食谱:

knife cookbook upload apache

我正在从“chef-repo”目录运行命令,但是我收到如下错误:
ERROR: Errno::ENOENT: No such file or directory

请在下面的屏幕截图中找到更多信息。

enter image description here

请提前帮助,谢谢!

编辑:

请在下面找到knife.rb文件的输出。

#See http://docs.chef.io/config_rb_knife.html for more information on knife configuration options

current_dir = File.dirname(__FILE__)

log_level                :info

log_location             STDOUT

node_name                "hakiuser"

client_key               "#{current_dir}/hakiuser.pem"

chef_server_url          "https://api.chef.io/organizations/cheflynda"

cookbook_path            ["#{current_dir}/../cookbooks"]

2 个答案:

答案 0 :(得分:0)

您是否尝试从菜谱路径上传? 在你的情况下:

  

cd C:\ Users \ Akshay \ Downloads \ Compressed \ chef-repo \ cookbooks   刀菜谱上传apache

如果这不起作用,您也可以在上传中提供食谱的绝对路径。

  

刀上传-o PATH:PATH, - cook-path PATH:PATH

如果上面仍然无效,你能打印出knife.rb的输出吗? 应该有你的厨师回购路径。下

  

刀[:chef_repo_path]

答案 1 :(得分:0)

我在同一堂课上遇到了同样的问题。该类中包含的Apache一定有问题。 我从以下位置下载了另一个: https://supermarket.chef.io/cookbooks/apache2 我可以上传此文件。虽然不知道它将如何进行,但是至少我可以继续下一课。