2016-07-31 10 views
0

Ich spiele mit Salz, und ich kam in eine Sackgasse.Verwenden von Parametern innerhalb der Statusdatei

Meine Statusdatei sollte eine Sicherungskopie einer Datei erstellen, bevor Sie die Datei bearbeiten/ändern. Ich mag die eingebaute Backup-Funktion nicht, weil (wenn ich es verstanden habe), wenn ich Backup laufen lasse, kopiere die Datei nach/var/cache/salt/minion/.... wenn ich es noch einmal ausführen werde die Sicherung wird die letzte Version So überschreibt, ich ein Backup-Skript in bash erstellt das Skript behandelt zwei Parameter [Datei sichern] [Kommentar]

Mein Plan ist es, das Skript kurz vor jedem Staat zu laufen, dass mein Günstling ändert Dateien.

Das ist meine sls-Datei ist:

bck: 
    #Copy the backup script to minion 
    file.managed: 
     - name: /bin/bck 
     - source: salt://bin/bck 
     - template: jinja 
     - user: root 
     - group: root 
     - mode: 0773 

myscript: 
    cmd.run: 
    - name: /bin/bck 
    #- name: /bin/bck /etc/sysctl.conf GILI > /dev/null 2>&1 
    - cwd:/
# - stateful: True 

vm.swappiness: 
    sysctl.present: 
#  - cmd: myscript {{ GILI }} 
     - cmd: myscript /etc/sysctl.conf GILI 
#  - args: "/etc/sysctl.conf GILI > /dev/null 2>&1" 
#  - GILI: /etc/hosts GGGGGGG 
     - value: 20 

Kommentare nicht gearbeitet haben, und auch, dass die Probe nicht funktioniert (ich kann nicht sehen, dass mein BCK-Skript ausgeführt wird

Wenn ich entfernen. Kommentar von „# - Stateful True“ das Skript OK laufen, aber es unabhängig und nicht aus dem „vm.swappiness“

Hilfe bitte :)

läuft 210

Gili

Antwort

1

Sie wollen ein "require" verwenden, um diese miteinander zu verketten. Außerdem würde ich wahrscheinlich cmd.script für Ihr Backup-Skript verwenden. Es würde wie folgt aussehen:

my_backup_script: 
    cmd.script: 
    - source: salt://bin/bck 

vm.swappiness: 
    sysctl.present: 
    - value: 20 
    - require: 
     - cmd: my_backup_script 
+0

Danke, dass ich helfen :) My Backup-Skript zwei Parameter müssen zunächst - um die Datei zu sichern und die zweite ist ein Kommentar. Wie integriere ich Parameter? Ich habe versucht, wie folgt aus: - cmd: my_backup_script /etc/sysctl.conf Backup- Und es fehlschlägt (Funktion: cmd.script Ergebnis: False Kommentar: Befehl 'my_backup_script' laufen gestartet: 10: 44: 58,020214 Dauer: 37,31 ms) –

Verwandte Themen