Chef infra 获取错误:Errno::enoint:没有这样的文件或目录

Chef infra 获取错误:Errno::enoint:没有这样的文件或目录,chef-infra,Chef Infra,我对本地chef repo上的一个角色进行了一些更改,并希望使用刀子上载角色将更改上载到chef服务器,但收到此错误消息 ERROR: Errno::ENOENT: No such file or directory - /home/danny/git/chef-repo/cookbooks/~/git/chef-repo 所有刀上载命令都会出现此错误 我能够成功使用bundle exec knife cookbook upload-a 你知道怎么回事吗 更多信息 我试过的命令就是 刀上传/角

我对本地chef repo上的一个角色进行了一些更改,并希望使用刀子上载角色将更改上载到chef服务器,但收到此错误消息

ERROR: Errno::ENOENT: No such file or directory - /home/danny/git/chef-repo/cookbooks/~/git/chef-repo
所有刀上载命令都会出现此错误

我能够成功使用
bundle exec knife cookbook upload-a

你知道怎么回事吗

更多信息 我试过的命令就是
刀上传/角色
只需从您的厨师repo根目录运行
刀上传角色
。没有斜杠,没有子目录


另外,如果您想使用
knife-upload
,您的角色应该是JSON。否则,您需要使用文件中的
刀角色

您的
刀.rb的内容是什么?你从哪里弄来的?您运行了什么确切的命令?我添加了一个更多信息部分来回答您的问题。我仍然收到相同的错误消息,关于没有文件或目录您的角色是ruby还是json?
knife upload
不支持ruby文件真的!如果是这种情况,我将运行什么命令将我修改的角色从文件(文件名)上载到chef serveroh so knife角色
log_level                :info
log_location             STDOUT
node_name                'admin'
client_key               '~/.chef/admin.pem'
validation_client_name   'chef-validator'
validation_key           '~/.chef/chef-validator.pem'
chef_server_url          'https://chef.example.org'
chef_server_ip           '10.32.2.53'
syntax_check_cache_path  '~/.chef/syntax_check_cache'
cookbook_path        [ '~/git/chef-repo/cookbooks', '~/git/chef-repo/site-cookbooks' ]

knife[:use_sudo] = true
knife[:ssh_user] = "emn"
knife[:use_sudo_password] = true
knife[:identity_file] = '~/.chef/emn.pem'