2016-07-31 26 views
0

我在玩鹽,而我進入了一個死衚衕。在狀態文件中使用參數

我的狀態文件應該在編輯/更改文件之前對文件進行備份。 我不喜歡內置備份功能,因爲(據我瞭解),當我運行備份時,它將文件複製到/ var/cache/salt/minion/....如果我再次運行它備份將覆蓋的最後一個版本 所以,我創建在bash 備份腳本,腳本處理兩個參數[文件備份] [評論]

我的計劃就是每一個改變我的奴才狀態之前運行的腳本文件。

這是我的SLS文件:

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 

評論沒有工作過,也該樣品沒有工作(我看不到我的BCK腳本運行

如果我刪除。從註釋「# - 狀態:真」腳本運行正常,但它從「vm.swappiness」獨立,而不是運行

請幫助:)

Gili

回答

1

你會想要使用「require」來將這些鏈接在一起。另外,我可能會使用cmd.script作爲您的備份腳本。這將是這個樣子:

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

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

謝謝你幫助我:) 我的備份腳本需要兩個參數,第一個 - 文件備份和第二個是一條評論。 我如何整合參數? 我想這樣的: - CMD:my_backup_script的/etc/sysctl.conf備份 它失敗(功能:cmd.script 結果:假 點評:運行 命令 'my_backup_script' 開始:10:44:58.020214 時間: 37.31毫秒) –

相關問題