画竜点睛を衝く@mapyo

日々やった事をつらつらと書くブログです

puppetでexecを使う時にunlessを使う

何気もなく、以下のような感じに書いてた

exec {
    'wget_php_source':
    command => "/usr/bin/wget http://museum.php.net/php5/php-5.5.6.tar.gz",
    cwd => '/vagrant/tmp/',
}

んで、他の部分をちょこちょこ直しながら実行する度に無駄だなぁと思ってたのだが、 unlessを使うと対応できる事を知った。んでもって、testというlinuxコマンドがあった事もしった。

exec {
    'wget_php_source':
    command => "/usr/bin/wget http://museum.php.net/php5/php-5.5.6.tar.gz",
    cwd => '/vagrant/tmp/',
    unless => "/usr/bin/test -e /vagrant/tmp/php-5.5.6.tar.gz",
}

でも、execを多用し過ぎるとメンテしずらくなるっぽいので、気をつけよう。

http://www.slideshare.net/mizzy/puppet-3258268


※実際にダウンロードしたphpのバージョンはめちゃめちゃ古いです。

thanks

http://suzuken.hatenablog.jp/entry/2013/11/26/135755