/ / szef kuchni przewiń definicję pliku książki kucharskiej z przepisu owijanej książki kucharskiej - przeładowanie, szef kuchni, openldap, przepis szefa kuchni, książka kucharska

szef kuchni przewija definicję cookbook_file z przepisu książki kucharskiej - przeciążenie, szef kuchni, openldap, przepis szefa kuchni, książka kucharska

Korzystam z książki kucharskiej github.com opscode-cookbooks / openldap. Napisałem książkę kucharską „lab_openldap”, która zawiera przepis „openldap :: server”.

Przepis server.rb wykorzystuje następującą klauzulę do przesłania pliku PEM z plików książek kucharskich / ssl / *. Pem na serwer do węzła lokalizacji [„openldap”] [„ssl_cert”].

if node["openldap"]["tls_enabled"] && node["openldap"]["manage_ssl"]
cookbook_file node["openldap"]["ssl_cert"] do
source "ssl/#{node["openldap"]["server"]}.pem"
mode 00644
owner "root"
group "root"
end
end

Próbowano odczytać PEM z pliku książki kucharskiej „openldap” / ssl / # {node [„openldap”] [„server”]}. Pem.

Mam plik PEM w opakowującym pliku „lab_openldap” książka kucharska / ssl / # {node [„openldap”] [„server”]}. Pem ”.

Czy można zmodyfikować przepis „lab_openldap :: server.rb”, aby załadować PEM z opakowującej książki kucharskiej?

Uwagi: Jestem świadomy https://github.com/bryanwb/chef-rewind ale nie radzi sobie z tą sytuacją.

Aktualizacja

Podana odpowiedź za pomocą r.resource jest poprawne.

W rzeczywistości problem z konkretnym kodem dotyczy słowa kluczowego „source” według http://docs.opscode.com/resource_cookbook_file.html odnosi się do lokalizacji pliku w katalogu / files w książce kucharskiej znajdującej się w repozytorium szefów kuchni.

r = resources("cookbook_file[#{node["openldap"]["ssl_cert"]}]")
r.cookbook("lab_openldap")

cookbook_file node["openldap"]["ssl_cert"] do
source "ssl/#{node["openldap"]["server"]}.pem"
mode 00644
owner "root"
group "root"
end

Odpowiedzi:

1 dla odpowiedzi № 1

Oczywiście, że jest! Musisz tylko ustawić cookbook atrybut zasobu po jego zawinięciu. Domyślnie jest to „bieżąca książka kucharska”, ale można ją zmienić:

r = resources("cookbook_file[#{node["openldap"]["ssl_cert"]}]")
r.cookbook("my_wrapper_cookbook")

Jeśli spojrzysz na „Rewind szefa kuchni Bryana”, zobaczysz to robi to samo