1

Puppet .erb ファイルで次のようなことをしたいと思います。

<% if (version_of_apache_package_installed =~ /1.5.82/) then -%>
do one thing
<% else -%>
do a different thing 
<% end -%>

インストールされたパッケージのバージョン文字列を変数に入れて上記を機能させるにはどうすればよいversion_of_apache_package_installedですか?

4

2 に答える 2

3

puppet でその apacheパッケージ リソースを管理していますか? その場合、インストールするバージョンを指定できるため、パッケージ リソースとこの if/else ブロックで同じバージョン変数から読み取るだけです。

あなたのinitファイルの1つで...

$package_version = '1.0'

ノードで...

package { 'your_package':
  ensure => $package_version,
}

「このマシンが何であれ、処理する必要がある」ではなく、「このマシンを自分が期待するものにする」というのが、操り人形で考える正しい方法です。

リソースを管理せずに exec を使用して条件を処理することもできますが、これはまったく理想的ではありません。

于 2013-02-12T23:14:10.383 に答える