В настройката, с която работя, променливата $var1 е декларирана на няколко места. Не съм сигурен обаче кой ред е приложен последно. Структурата е следната.
Модулът за марионетки, module1, съдържа клас vars.pp, който е наследен от неговия манифест init.pp. В манифеста vars.pp var1 е деклариран като "value-vars".
#vars.pp
$var1 = "value-vars"
Този модул се прилага към всеки възел, който съответства на определен регулярен израз, който е дефиниран в nodes.pp.
#nodes.pp
node "/nodepattern/" inherits base {
require module1
}
nodes.pp наследява от base.pp, който декларира var1 като "value-base".
#base.pp
$var1 = "value-base"
Сега, когато модулът се приложи към определен възел, каква стойност ще съдържа var1?
Дали е „value-vars“, защото блокът на възел се прилага преди класа?
АКТУАЛИЗИРАНЕ
├── puppet3
│ ├──**manifests**
│ │ └───**nodes**
│ │ └──base.pp (node "base", $var1 = "value-base")
│ ├──nodes.pp (various nodes inheriting base node, contains module1 node)
│ ├──**modules**
│ │ ├──**module1**
│ │ │ ├──**manifests**
│ │ ├──vars.pp (class "vars", $var1 = "value-vars")
│ │ ├──init.pp (class "module1", inherits vars class)
notify {"value: ${var1}":}
, за да покажете стойността при тестване сpuppet agent -t
илиnotice("value: ${var1}")
, за да добавите съобщението към регистрационния файл на главния - person webNeat   schedule 26.08.2014