我想运行knife configure --initial
命令而不提示我输入任何用户。
到目前为止,我有这个:
knife configure --initial --server-url https://chefserver.example.com --user workstation-user --admin-client-name admin --admin-client-key /home/ec2-user/chef-repo/.chef/admin.pem --validation-client-name chef-validator --validation-key /home/ec2-user/chef-repo/.chef/chef-validator.pem --repository /home/ec2-user/chef-repo
然而它仍然促使我:
WARNING: No knife configuration file found
Where should I put the config file? [/home/ec2-user/.chef/knife.rb]
默认是不可接受的 - 我希望它在/home/ec2-user/chef-repo/.chef/knife.rb
中。如果我尝试使用--config
开关,它会抱怨knife.rb
文件不存在,所以显然它试图从中读取,而不是写入它。
它还提示我输入新用户的密码:
Creating initial API user...
Please enter a password for the new user:
我是否可以将这两个值传递给命令,以便命令以非交互方式运行完成?
由于
答案 0 :(得分:0)
我不确定这是否足以满足您的需求,但以下命令可以正常工作。
knife cookbook upload helloworld -c /home/ec2-user/chef-repo/.chef/knife.rb
在运行上述命令之前,您需要提供此文件“/home/ec2-user/chef-repo/.chef/knife.rb”,而knife.rb将具有所有主厨服务器特定信息。