Amazon ec2 刀子/厨师-如何捕获命令行参数并传递给厨师菜谱

Amazon ec2 刀子/厨师-如何捕获命令行参数并传递给厨师菜谱,amazon-ec2,chef-infra,chef-recipe,knife,Amazon Ec2,Chef Infra,Chef Recipe,Knife,是否有方法捕获命令行参数并传递给厨师菜谱? 我想做的是将主机名自动填充到不同的位置。一个位于/etc/sysconfig/network域字段中 因此,如果启动服务器的命令是 knife ec2 server create -Z us-east-1c --image ami-fd375894 -E stage -d fedora17 -f c1.medium -i ~/.ssh/myKey -r "role[myserver]" -G myGroup -x ec2-user -T Name=my

是否有方法捕获命令行参数并传递给厨师菜谱? 我想做的是将主机名自动填充到不同的位置。一个位于
/etc/sysconfig/network
域字段中

因此,如果启动服务器的命令是

knife ec2 server create -Z us-east-1c --image ami-fd375894 -E stage -d fedora17 -f c1.medium -i ~/.ssh/myKey -r "role[myserver]" -G myGroup -x ec2-user -T Name=myserverName -N myserverName.001 --ephemeral /dev/sdc=ephemeral0
我想捕获“myserverName”,并将其传递给各种配方,这些配方在引导时可能需要它来构建FQDN


这不是通过JSON选项实现的,而是直接从命令行实现的。

使用一个配方,该配方基于
Chef::Config[:node\u name]
设置机器的主机名,因为您可以通过命令行上的
--name
选项设置此值。

不,您不能。JSON是唯一的方法。