Ecco un esempio di una ricetta funzionante che scorre attraverso una serie di nomi di siti Web e li crea in IIS utilizzando la funzione createIisWebsite().Come si modularizza una ricetta dello Chef?
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
Nella nostra soluzione reale questi dati vengono memorizzati altrove e accessibili tramite un'API Web.
websiteNames = ["website-2", "website-3", "website-4"]
for websiteName in websiteNames do
createIisWebsite websiteName
end
Ora voglio essere in grado di chiamare la funzione createIisWebsite() da più ricette all'interno di questo ricettario.
Ho provato a lanciarlo in un modulo di supporto (libreria). Non riesco a ottenere il riferimento a iis_site per funzionare.
Ho provato a spostare la funzione su default.rb
e quindi su include_recipe ":: default". Neanche sembra funzionare.
ottengo un "Impossibile trovare una risorsa per createIisWebsite sulla versione di Windows 6.2.9200"
La ragione per cui mi sto prendendo questo approccio è perché voglio avere una ricetta che contiene l'elenco dei siti web per cluster di server web . Ho la sensazione che non sto seguendo il percorso delle migliori pratiche.
Qualche idea?
Ohai! Hai mai trovato una soluzione a questo problema? Qualcuna delle risposte è stata di aiuto? Si prega di non dimenticare di contrassegnare uno come corretto :) – sethvargo