12
Gibt es eine Möglichkeit, Manifest-Dateien einzuchecken, wenn eine bestimmte Klasse existiert?Überprüfen Sie, ob eine Klasse existiert
möchte ich so etwas wie dies zu tun:
class foo {
if exists(Class["foo::${lsbdistcodename}"]) {
include foo::${lsbdistcodename}
}
}
So kann ich leicht distrubution/versionsspezifische Klassen hinzufügen, die dann automatisch enthalten.
Dank Nun, aber das wird nicht funktionieren ‚bewirken, dass die Klasse noch nicht definiert ist. Das ist der springende Punkt meiner Frage. Ich möchte überprüfen, ob die Klasse existiert und ich kann sie einschließen. Der Code, den du gepostet hast, wird effektiv überhaupt nichts tun. Wenn die Klasse nicht enthalten ist, ist die Bedingung falsch, und wenn sie enthalten war, wird include sie nicht erneut einschließen ... –
das ist nicht wahr, siehe dieses Problem - http://projects.puppetlabs.com/issues/3490 – LiorH
funktioniert nicht für mich. Ich bin mit Puppe 2.7.18: 'wenn definiert (Klasse [ 'gemeinsamen']) {Hinweis ('Ja')}' ausgeben wird nichts, während 'umfassen common'' falls definiert (Klasse ['common']) {notice ('ja')} ' Ausgänge 'ja' –