我正在尝试使用厨师烹饪书来安装硒网格。
我有两个食谱 1)hub.rb - 安装集线器 2)node.rb - 用集线器注册节点。
在hub.rb中,我所做的就是下载selenium grid java文件并运行命令来启动集线器。
java –jar selenium-server-standalone-2.30.0.jar –role hub
在特定的vm(或节点)中启动集线器
在node.rb中,我需要使用命令
将节点注册到上面创建的集线器 java –jar selenium-server-standalone-2.30.0.jar –role node -hub http://ipofhub:port/grid/register
现在的问题是如何动态获取要在节点配方中提供的集线器的IP。
我可以在hub.rb中将节点[ipaddress]分配给变量说hub_ip并在node.rb中使用它吗?
hub.rb中的
hub_ip = node[ipaddress]
然后在node.rb
java –jar selenium-server-standalone-2.30.0.jar –role node -hub http://#{hub_ip}:port/grid/register
我不确定上述是否会起作用,因为我没有测试过它(等待vms测试它)但是还有其他方法吗?
答案 0 :(得分:0)
是的,这是理想的做法。您需要修复的唯一语法项是:
hub_ip = node[:ipaddress]
或者你可以完成以下所有事情:
hub_url = "http://" + node[:ipaddress] + ":port/grid/register"
execute "adding node" do
command "java –jar selenium-server-standalone-2.30.0.jar –role node -hub #{hub_url}"
end