Bir dizini ve içeriğini kukla ile özyinelemeli olarak nasıl yansıtırım?


14

Diyelim ki bir modülüm var files/etc/foo/{conf0, conf1, conf2, conf3, etc}. Bu dosyaların her biri az sayıda olduğunda yerleştirmek yeterince basittir:

file { 'conf0':
    path => '/etc/foo/conf0',
    ensure => true,
    source => 'puppet:///.../etc/foo/conf0',
}

ve tekrar et. Ancak, oldukça fazla çoğaltma söz konusudur ve birkaç yapılandırma dosyası olup olmadığını korumak sıkıcıdır. Bunun files/etc/foo/belirli bir yola yansıtılmasını sağlamak istiyorum . Demek ki,

file { 'etc foo confs':
   path => '/etc/foo',
   ensure => recursive,
   source => 'puppet:///.../etc/foo',
}

yaratacak /etc/foo/conf0, /etc/foo/conf1ve bu kadar. Mümkün mü?

Yanıtlar:


22

Elbette - filestürün bir recurseseçeneği vardır (ve recurselimitdizinin ne kadar derinine sınırlanmasını istiyorsanız).

file { 'etc foo confs':
   path => '/etc/foo',
   source => 'puppet:///.../etc/foo',
   recurse => true,
}

5
Bunu yaparken akılda tutulması gereken diğer bir şey, Kukla'nın bağlantılarını sürdürmek zorunda kalacağı dosya sayısıdır. Dosya tanımlayıcılarının bitmesi uzun sürmez ve kukla sorun yaşamaya başlar. Bu görevi yerine getirmeden önce bu problemle karşılaştım.
Jeremy Bouse

@JeremyBouse Teşekkür ederim; bu çok faydalı bir bilgi.
troutwine
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.