Ich habe versucht, eine Möglichkeit zu finden, um zu testen, ob eine Ressource bereits in einer anderen Datei definiert ist, und ob sie nicht erstellt wird. Ein kurzes Beispiel:
if File[$local_container] {
alert("Testing - It existed $local_container")
} else {
file{ "$local_container":
ensure => directory,
}
}
Allerdings - File[$local_container]
scheint immer wahr zu bewerten. Gibt es eine Möglichkeit, dies zu tun?
Meinen Sie "testen, ob eine Ressource bereits definiert ist "? Wenn Sie eine Ressource definieren (z. B.
file {}
usw.), erstellt Puppet das, was Sie beschreiben, wenn es noch nicht existiert (vorausgesetzt, Sie haben bestandenensure => present
).So überprüfen Sie, ob eine Ressource bereits im Katalog definiert ist:
Hinweis:
defined()
ist abhängig von Parsing - Reihenfolge .quelle
Oder....
Und behalten Sie diese Anführungszeichen und geschweiften Klammern im Auge ...
quelle
einfach,
quelle
"$local_container"
Datei bereits an einer anderen Stelle definiert wurde (z. B. durch etwas, das die Berechtigungen / den Eigentümer kontrollieren wollte), können Sie dieselbe Ressource nicht zweimal definieren.