14

特定のクラスが存在する場合、マニフェストファイルをチェックインする方法はありますか?

私はこのようなことをしたい:

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

そのため、配布/バージョン固有のクラスを簡単に追加して、自動的に含めることができます。

4

1 に答える 1

15

存在ステートメントの代わりに定義済みステートメントを使用する必要があります。次のスニペットは私のために機能します:

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

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

[puppetバージョン>2.6.0を実行していると仮定します]

于 2013-02-27T18:08:39.587 に答える