我对当地的chef-repo上的角色进行了一些更改,并希望使用刀上传角色将我的更改上传到chef-server但是我收到此错误消息
ERROR: Errno::ENOENT: No such file or directory - /home/danny/git/chef-repo/cookbooks/~/git/chef-repo
所有刀上传命令都会出现此错误
我能够成功使用bundle exec knife cookbook upload -a
知道出了什么问题
更多信息
我试过的命令是
knife upload /roles
< ---在我当地的厨师回购顶部
&安培;
来自角色目录的knife upload roles
< -
my knife.rb
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'
答案 0 :(得分:0)
只需从Chef repo的根目录运行knife upload roles
即可。没有斜杠,没有子目录。
此外,如果您想使用knife upload
,您的角色可能是JSON。否则,您需要使用knife role from file
。