下面是一个工作配方示例,它循环访问一系列网站名称,并使用函数createIisWebsite()在IIS中创建它们。你如何模仿厨师食谱?
def createIisWebsite(websiteName)
iis_site websiteName do
protocol :http
port 80
path "#{node['iis']['docroot']}/#{websiteName}"
host_header "#{websiteName}.test.kermit.a-aws.co.uk"
action [:add,:start]
end
end
在我们的实际解决方案中,这些数据存储在别处并通过web API访问。
websiteNames = ["website-2", "website-3", "website-4"]
for websiteName in websiteNames do
createIisWebsite websiteName
end
现在我希望能够从本食谱中的多个食谱调用函数createIisWebsite()。
我已经尝试将它投入辅助模块(库)。在那里,我无法获得iis_site的参考。
我试着将函数移动到default.rb
,然后做include_recipe“:: default”。这似乎也不起作用。
我得到一个“无法找到createIisWebsite资源上的Windows版本6.2.9200”
我采取这种做法的原因是因为我想有一个包含每个Web服务器集群网站列表中的配方。我感觉我没有采取最佳的练习路线。
任何想法?
Ohai!你有没有找到解决这个问题的办法?任何答案都有帮助吗?请不要忘记将其中一个标记为正确:) – sethvargo 2014-02-01 18:34:21