我有一個爲Linux系統編寫的大型模塊。但我需要它爲Windows工作,所以我想重寫它來處理兩者。如何在puppet模塊中處理linux和windows?
有很多清單,從我目前可以看到的內容來看,大多數應該可以與Windows一樣好,因爲木偶會看到它在Windows上運行並選擇最佳提供程序。
但是有些部分不起作用。作爲一個例子這Exec將無法在Windows
exec { 'touch_file' :
command => 'touch /etc/test.txt',
path => ['/bin', '/usr/bin'],
cwd => '/tmp',
creates => '/etc/test.txt',
}
工作,這將在Linux下工作,但在Windows我會改變這一個PowerShell命令,改變造成的,CWD和路徑。我可以將每個部分更改爲$ {variable},並在Exec語句上方有一個case語句,它根據:: osgroup選擇正確的變量,但我不確定這是否是處理此問題的最佳方法。有更好的方法來處理多個OS模塊嗎?
聽起來不錯。我會以木偶代理人爲例。乾杯 – Glef