Назад | Перейти на главную страницу

Марионеточное наследование параметризованных классов

У меня есть ситуация в марионетке, когда я хочу унаследовать от параметризованного класса:

class base ($basepath) {
  ...
}

class extends_base ($ext_param) inherits base {
  ...
}

Теперь, пытаясь создать экземпляр класса extends_base, я получаю следующее сообщение об ошибке:

Must pass basepath to Class[Base]

Однако я не вижу способа передать параметр basepath в базовый класс. Я попытался передать параметр в определении Class [Extends_base], марионетке это тоже не нравится.

Puppet не поддерживает наследование с параметризованными базовыми классами, то есть базовый класс не должен параметризоваться, чтобы наследование работало. Итак, то, что вы пытаетесь сделать, в настоящее время невозможно.

Подробнее см. Здесь: http://docs.puppetlabs.com/puppet/2.7/reference/lang_classes.html#inheritance