我在我的服務器上通過puppet配置syslog-ng。配置文件在版本2.x,3.1和3.3之間非常不同。在我的主機上,根據操作系統(centos5,centos6,debian 7,ubuntu),可用的syslog-ng版本會有所不同。預測軟件包版本
我有2個想法syslog-ng的的配置適應的正確版本:
- 自定義的事實:它很容易編寫自定義的事實,以測試syslog-ng的安裝版本。但是,如果syslog-ng尚未安裝,這個事實將毫無用處。
- 清單中的條件:我發現在清單中定義一個「case」有點難看,它將決定操作系統提供的syslog-ng的版本。
對我來說,最簡單的方法是在安裝前測試哪個版本的軟件包可以通過操作系統使用。 一個因素可以做到這一點,但我想這會有點困難。
有沒有一種傀儡方式來解決我的問題?
擁有每個案例的子類似乎乾淨。雖然你必須事先知道哪些發行版本的軟件包的版本,並且我希望避免這些知識。 – skizo