2015-10-02 86 views
0

小任務:如何刪除「複製/模板」模塊中的所有其他文件?

- name: Configure hosts 
    template: src=host.cfg.j2 dest=/etc/shinken/hosts/{{item.host_name}}.cfg 
    with_items: shinken_hosts 
    when: shinken_hosts is defined 
    notify: reload config 

我想刪除所有其他CONFIGS(文件)在/ etc /進研/主機/此任務配置。

我該怎麼做?

(如果我修復了'shinken_hosts'中的拼寫錯誤,並且想要在名稱中錯誤地自動刪除舊配置,這真的很重要。

+0

請提供示例。哪些文件必須被刪除,哪些不是 –

+0

shinken_hosts:host1,host2。 /etc/shinken/hosts/host1.cfg的內容host2.cfg other_host.cfg,garbage.cfg。 host1和host2應該保留,other_host和垃圾應該被刪除。 –

回答

1

您可能需要檢查this,幻燈片19. 這假設您知道特定目錄中需要存在哪些文件,然後刪除所有其他文件。

# tidy_expected: [‘conf1.cfg’, conf2.cfg’] 
- find: paths={{tidy_path}} #/etc/myapp 
    register: existing 

- file: path={{item.path}} state=absent 
    when: item.path|basename not in tidy_expected 
    with_items: 「{{existing.files|default([ ])}}」 
    register: removed 

- mail: body=「{{removed}}」 
+0

是的。看起來像一個很好的解決方案。 –

相關問題