2016-12-12 2 views
0

Ich versuche, Berechtigungen für alle "* .key" Dateien in einem einzigen Verzeichnis festzulegen. Ich möchte die "Find" und "Dateien" zusammen verwenden, aber nicht herausfinden, wie Prozess über das Ergebnis des Fundes.Verwenden von Ansible finden und Datei zusammen, um Berechtigungen zu setzen

- find: 
    paths: "/etc/nginx/ssl" 
    patterns: "*.key" 

# not sure how to do this 
- files: group=ssl-cert mode=640 

Wie kann ich diese beiden Befehle zusammenarbeiten?

Vielen Dank im Voraus, Travis

@helloV hier ist der letzte Code Folgende:

- name: list private key files 
    find: 
    paths: "/etc/nginx/ssl" 
    patterns: "*.key" 
    register: keys 

- name: set private key permissions 
    file: path="{{item.path}}" group=ssl-cert mode=640 
    with_items: "{{keys.files}}" 

Antwort

1

Registrieren Sie den Ausgang finden und es dann drucken, so dass Sie wissen, was genau von find zurückgeführt wird. Sie werden feststellen, dass in der Ausgabe ein Objekt files enthalten ist, das Informationen über alle Dateien enthält. Sie müssen es durchlaufen und die path aus jeder Datei extrahieren. Ungeprüfter Code:

tasks: 
    - find: 
     paths: "/etc/nginx/ssl" 
     patterns: "*.key" 
    register: keys 
    #- debug: var=keys 

    - file: path="{{item.path}}" group=ssl-cert mode=640 
    with_items: keys.files 
+0

Danke, das hat perfekt funktioniert! –

Verwandte Themen