Wie kann ich sicherstellen, dass das Verzeichnis vorhanden ist, wenn eine Vorlage erstellt wird? Zum Beispiel:
template "#{node[:app][:deploy_to]}/#{node[:app][:name]}/shared/config/database.yml" do
source 'database.yml.erb'
owner node[:user][:username]
group node[:user][:username]
mode 0644
variables({
:environment => node[:app][:environment],
:adapter => node[:database][:adapter],
:database => node[:database][:name],
:username => node[:database][:username],
:password => node[:database][:password],
:host => node[:database][:host]
})
end
Dies schlägt fehl, da /var/www/example/shared/config
es nicht database.yml
zum Kopieren gibt. Ich denke darüber nach, wie Puppet es Ihnen ermöglicht, sicherzustellen, dass ein Verzeichnis existiert.
recursive
Option nicht ;-)Mir ist keine andere Möglichkeit bekannt, als die
directory
Ressource vor dertemplate
Ressource zu verwenden:quelle