Ich habe folgende Definitionen:
class nginx::install{
...
}
class nginx::service{
...
}
class nginx::config{
...
}
class nginx{
include nginx::install, nginx::service, nginx::config
}
class jenkins::nginx{
include nginx
file{'/etc/nginx/sites-enabled/jenkins':
source => ...,
require => Class['nginx'],
}
}
Aber wenn ich das mache, sagt mir Puppet, dass ich einen Zyklus habe:
err: Could not apply complete catalog: Found 1 dependency cycle:
(Class[Jenkins::Nginx] => File[/etc/nginx/sites-available/jenkins] => Class[Jenkins::Nginx])
Try the '--graph' option and opening the resulting '.dot' file in OmniGraffle or GraphViz
Der einfache Verweis auf nginx in jenkins :: nginx verweist auf sich selbst. Wie kann ich Puppet mitteilen, dass ich stattdessen von der Nginx-Klasse der obersten Ebene abhängig bin?
Ich habe versucht, meine Abhängigkeit in zu ändern Class['::nginx'](als wäre ich in Ruby), und Puppet sagt mir jetzt, dass die Abhängigkeit nicht gefunden werden kann.