Saya memiliki beberapa ratus satu server yang memiliki file konfigurasi berbeda yang harus ada dalam direktori. Salinan file berada di master boneka.
Di dalam salah satu kelas saya, saya memiliki serangkaian konfigurasi default yang selalu didorong ke node, seperti:
file { "/etc/someprogram/config/000-default":
ensure => "present",
owner => "root",
group => "root",
mode => 0764,
source => "puppet:///modules/someprogram/000-default",
}
Yang ingin saya miliki adalah sesuatu seperti ini:
$filearray = directory listing of /etc/puppet/modules/someprogram/files/$fqdn
with each file as an element into array
$filearray.each(
file { "/etc/someprogram/config/$filename":
ensure => "present",
owner => "root",
group => "root",
mode => 0764,
source => "puppet:///modules/someprogram/files/$fqdn/$filename",
}
)
Saya tidak terlalu terbiasa dengan boneka tetapi saya mendapat kesan tidak ada cara untuk melakukan ini.
recurse => true
padafile
tipe), daripada mendeklarasikan setiap file sebagai sumber daya yang terpisah?Jawaban:
Anda dapat melakukan apa yang Anda coba dengan ini:
Ini akan menyalin semua file dalam $ fqdn ke / etc / someprogram / config, menimpa jika sudah ada.
sumber
recurse => remote
apakah direktori tersebut memiliki file lokal yang tidak didorong oleh server boneka.Jika Anda ingin mendefinisikan banyak file dalam suatu direktori tanpa mengulang seluruh direktori, Anda dapat menggunakan array - seperti ini:
Tentu saja, dengan jalur panjang ke "/ my / dir" atau banyak file, itu akan menjadi sedikit sulit, jadi dalam hal ini Anda akan lebih baik membuat mendefinisikan yang termasuk jalur direktori, dan hanya melewati array dari nama file untuk itu.
sumber
alias
set pada file: /$name
sini. Itu hanya berfungsi jika itu adalah tipe yang ditentukan.Berikut adalah contoh bagaimana saya melakukan ini:
Dalam contoh di atas, saya menetapkan batas waktu I / O scheduler untuk masing-masing disk pada server yang diberikan melalui Wayang.
sumber