pieterlexis.json_file

Ansible Bibliothek: json_file

Ein Bibliotheksmodul, das das Ändern von JSON-Dateien ermöglicht.

Build Status

Anforderungen

Keine

Abhängigkeiten

Keine

Beispiele für die Verwendung

- hosts: all
  tasks:
    - name: Ändere Wert von 'foo' zu 'bar'
      json_file:
        dest: /etc/file.conf
        key: 'foo'
        value: 'bar'

Diese Bibliothek unterstützt das Nesting in JSON durch die Verwendung eines Punktes ('.') als Trenner im Schlüssel. Betrachten Sie die folgende Datei:

{ "foo": {
    "bar": "buzz"
  }
}

Der Wert von "bar" wird mit folgendem Befehl in "whatever" geändert:

- hosts: all
  tasks:
    - name: Ändere Wert von 'bar' zu 'whatever'
      json_file:
        dest: /etc/file.conf
        key: 'foo.bar'
        value: 'whatever'

Punkte in Schlüsseln müssen maskiert werden:

{ "foo.bar": "buzz" }

Kann wie folgt geändert werden:

- hosts: all
  tasks:
    - name: Ändere Wert von 'foo.bar' zu 'whatever'
      json_file:
        dest: /etc/file.conf
        key: 'foo\.bar'
        value: 'whatever'

Einen Wert auf null zu setzen ist etwas schwieriger als erwartet aufgrund eines Fehlers in Ansible. Setze value auf None, um dies zu erreichen:

- hosts: all
  tasks:
    - name: Setze 'foo' auf null
      json_file:
        dest: /etc/file.conf
        key: 'foo'
        value: None

Manchmal muss eine Zahl als String in der resultierenden JSON-Datei gespeichert werden. Das Setzen des Arguments as_string auf 'yes' stellt dies sicher:

- hosts: all
  tasks:
    - name: Setze 'foo' auf "25"
      json_file:
        dest: /etc/file.conf
        key: 'foo'
        value: 25
        as_string: yes

Dieses Modul unterstützt alle Argumente, die vom Ansible file Modul unterstützt werden (wie 'owner', 'group', 'mode' usw.).

Dank

Diese Bibliothek basiert stark auf dem ini_file Kernmodul und @FauxFauxs ghetto_json Bibliothek.

Einschränkungen

json_file funktioniert nur bei Dateien, die Wörterbücher sind (d.h. ein oberstes '{' haben).

Listen werden nicht unterstützt/getestet.

Lizenz

MIT

Autoreninformationen

Pieter Lexis (@lieter_)

Über das Projekt

Library module to manipulate JSON files without the use of templates or files

Installieren
ansible-galaxy install pieterlexis.json_file
Lizenz
mit
Downloads
854
Besitzer