LINUX.ORG.RU

История изменений

Исправление router, (текущая версия) :

1) Ты, похоже, не понимаешь что такое «наследование». У тебя нода mail-new.example.local наследуется от «default» ( ИМХО, я бы вообще так не делал, но не суть важно ). И получает все классы, определённые в node default, в т.ч. class fedora-nginx.

2) Классы - всего лишь средство ИМЕНОВАТЬ часть конфига, а не определить без реализации. Т.е. если ты в ноде написал

package {«nginx» : [.....] }

и

class fedora-nginx { package {«nginx» : [.....] } }

, то это одно и тоже. НО. Если ты используешь ноды, а не один общий конфиг, то классы, определённы на БЕЗНОДОВОМ уровне, не применяются к нодам. Т.е. если ты просто хочешь подключить описания классов, но не применять их, import'ы и include'ы делай вне описания нод:

import 'dist/fedora.pp'

node default {
 [... ]
}

node "nginx.example.local" {
 [...]
  include fedora-nginx
}

Исправление router, :

1) Ты, похоже, не понимаешь что такое «наследование». У тебя нода mail-new.example.local наследуется от «default» ( ИМХО, я бы вообще так не делал, но не суть важно ). И получает все классы, определённые в node default, в т.ч. class fedora-nginx.

2) Классы - всего лишь средство ИМЕНОВАТЬ часть конфига, а не определить без реализации. Т.е. если ты в ноде написал

package {«nginx» : [.....] }

и

class fedora-nginx { package {«nginx» : [.....] } }

, то это одно и тоже. НО. Если ты используешь ноды, а не один общий конфиг, то классы, определённы на БЕЗНОДОВОМ уровне, не применяются к нодам. Т.е. если ты просто хочешь подключить описания классов, но не применять их, import'ы и include'ы делай вне описания нод:

import 'dist/fedora.pp'

node default {
 [... ]
}

node nginx.example.local {
 [...]
  include fedora-nginx
}

Исправление router, :

1) Ты, похоже, не понимаешь что такое «наследование». У тебя нода mail-new.example.local наследуется от «default» ( ИМХО, я бы вообще так не делал, но не суть важно ). И получает все классы, определённые в node default, в т.ч. class fedora-nginx.

2) Классы - всего лишь средство ИМЕНОВАТЬ часть конфига, а не определить без реализации. Т.е. если ты в ноде написал

package {«nginx» : [.....] }

и

class fedora-nginx { package {«nginx» : [.....] } }

, то это одно и тоже. НО. Если ты используешь ноды, а не один общий конфиг, то классы, определённы на БЕЗНОДОВОМ уровне, не применяются к нодам. Т.е. если ты просто хочешь подключить описания классов, но не применять их, import'ы и include'ы делай вне описания нод:

import 'dist/fedora.pp'

node default { [... ] }

node nginx.example.local { [...] include fedora-nginx }

Исходная версия router, :

1) Ты, похоже, не понимаешь что такое «наследование». У тебя нода mail-new.example.local наследуется от «default» ( ИМХО, я бы вообще так не делал, но не суть важно ). И получает все классы, определённые в node default, в т.ч. class fedora-nginx.

2) Классы - всего лишь средство ИМЕНОВАТЬ часть конфига, а не определить без реализации. Т.е. если ты в ноде написал

package {«nginx» : [.....] }

и

class fedora-nginx { package {«nginx» : [.....] } }

, то это одно и тоже. НО. Если ты используешь ноды, а не один общий конфиг, то классы, определённы на БЕЗНОДОВОМ уровне, не применяются к нодам. Т.е. если ты просто хочешь подключить описания классов, но не применять их, import'ы и include'ы делай вне описания нод:

import 'dist/fedora.pp'

node default { [... ]