4
Puppet:ファイル(またはパッケージ)が更新されたときにシェルコマンドを実行する
(Ubuntuサーバー上の)tzinfoパッケージが変更さmysql_tzinfo_to_sqlれるたびに実行したいと思います。私は人形がこれを処理できると考えました。 Puppetはパッケージバージョンの変更に反応するか、そうでなければパッケージに含まれるファイルのタイムスタンプの変更に反応すると思いました。 これを実行するために私が見ることができる唯一の方法は、直接的なアクションのないリソースを持ち、それに依存するexecを持つことです。 私が持っている質問は: 別のリソース(execなど)に通知するためだけに使用されるファイルを定義することはできますか? パッケージが変更または更新されたときに別のリソース(execなど)がアクティブになるようにパッケージリソースを定義することは可能ですか? ファイルシステムからのコマンドの代わりに、シェルコマンドライン(パイプとリダイレクトなど)を実行するexecリソースを定義することはできますか? まとめると、圧倒的です。 フォローアップ:素晴らしい答え!完全性のために(そして記録のために)、次のことに注意してください。 関心のある完全なシェルコマンドは mysql_tzinfo_to_sql | mysql -u root -p password (MySQLを使用するためにtzinfoをMySQLデータベースにロードする)です。 /etc/tzinfoこれは単なるローカルタイムゾーン構成であるため、の監査は無駄です。目的は、tzinfoデータ自体の変化を監視することです(したがって、の監視/usr/share/zoneinfo)。 同様に、内容が変化することはほとんどないため、内容を見るのは間違っています。tzinfoを更新するたびにファイル時間が変更されるため、mtimeまたはallを監視するのが最善です。 また、James Turnbull は、監査が導入されたときに監査についてすべて書きました。メタパラメータリファレンスの働きの簡単な説明が含まれauditたパラメータを。
8
puppet