2014-05-17 17 views
19

Nginx hizmetinin, /etc/nginx/conf.d dizinindeki herhangi bir dosya oluşturulduğunda veya değiştirildiğinde yeniden başlatılmasını isterim.SaltStack: Watch deyiminde, tüm dosyaların izlenmesi gereken bir dizini nasıl belirtebilirim?

Bu dizinde çok sayıda dosya var ve belirli dosyaları belirtmek yerine, tüm değişiklikleri izlemek istiyorum.

Bu denedim:

nginx: 
    pkg.installed: 
    - name: nginx 
    service: 
    - running 
    - enable: True 
    - restart: True 
    - watch: 
     - file: /etc/nginx/nginx.conf 
     - file: /etc/nginx/conf.d 
     - pkg: nginx 

ama hat - file: /etc/nginx/conf.d istediğimi yapmıyor.

 ID: nginx 
Function: service.running 
    Result: False 
Comment: The following requisites were not found: 
          watch: 
           file: /etc/nginx/conf.d 
Changes: 

Ben de bir eğik çizgiyle dahil varyasyonları bir dizi denedim ama bunların hiçbiri işe:

Bu

hatadır.

ne olmalıdır? Ben eşleştirme için bir topak kullanıyorum

+0

Ne yaptığınızı hiç denemedim, ancak hedef dosya sisteminiz için kesin bağlama seçeneklerinin ne olduğunu merak ediyorum. 'grep root/proc/mounts' –

+0

rootfs/rootfs rw 0 –

cevap

22

: Burada

file: /etc/nginx/conf.d/* 

düzeltilmiş parçacık İşte:

nginx: 
    pkg.installed: 
    - name: nginx 
    service: 
    - running 
    - enable: True 
    - restart: True 
    - watch: 
     - file: /etc/nginx/nginx.conf 
     - file: /etc/nginx/conf.d/* 
     - pkg: nginx 

Ayrıca sadece zaten devlet dosyasında belirtilen diğer devletleri izleyebilirsiniz tuz dikkat do Bu yüzden sadece tuz tarafından yönetilen dosyaları izler.

bu sizin için işe yaramazsa, ardından farklı bir çözüm için aşağıdaki linki başvurmak için deneyin: http://intothesaltmine.org/blog/html/2012/12/18/using_watch_with_file_recurse.html

+1

OP ile aynı konumdayım ve aynı nedenden dolayı. Ve senin sunduğun gibi bir çözüm kullanıyorum. Ama hala doğru çalışmıyor. Özellikle 'watch',' conf.d' içindeki bir dosya değiştirildiğinde, dosyanın 'conf.d' dosyasına eklendiğinde değil, yalnızca bir yeniden yüklemeyi tetikler. Bence. Bunu hala hata ayıklamaya çalışıyorum. – nomen

2

Şubat 2012'de kapalı issue 663 göre, /path/* bir izleme yinelemeli izlemelisin.