Подтвердить что ты не робот

Проверить, существует ли класс

Есть ли способ проверить файлы манифеста, если данный класс существует?

Я хочу сделать что-то вроде этого:

class foo {
    if exists( Class["foo::${lsbdistcodename}"] ) {
        include foo::${lsbdistcodename}
    }
}

Таким образом, я могу легко добавить классы с ограничениями/версиями, которые затем автоматически включаются.

4b9b3361

Ответ 1

Вы должны использовать определенный, а не существующий оператор. Для меня работает следующий фрагмент:

class foo {
    if defined( "foo::${lsbdistcodename}") {
            notify {'defined':}             
            include "foo::${lsbdistcodename}"
    }
}

class foo::precise {
    notify{'precise':}
}

[предполагая, что вы запускаете кукольную версию > 2.6.0]