我想從我的配置文件config.PATH
添加變量到該織物運行命令:Python的織物插入一個變量來運行命令
run('cd $(config.PATH); mkdir releases; mkdir shared; mkdir packages;', fail='ignore')
但我得到的錯誤:
類型錯誤:運行()得到了一個意想不到的關鍵字參數'失敗'
我該如何實現我想要做的?或者,還有更好的方法?
我想從我的配置文件config.PATH
添加變量到該織物運行命令:Python的織物插入一個變量來運行命令
run('cd $(config.PATH); mkdir releases; mkdir shared; mkdir packages;', fail='ignore')
但我得到的錯誤:
類型錯誤:運行()得到了一個意想不到的關鍵字參數'失敗'
我該如何實現我想要做的?或者,還有更好的方法?
錯誤告訴你的是run
不接受名爲fail
的參數,事實上,如果你看fabric docs for the run()
function,你會發現沒有提到這樣的參數。
這與試圖在您的命令中插入變量無關。
如果您的目的是忽略錯誤,則應使用warn_only
或quiet
。從文檔:
To ignore non-zero return codes, specify
warn_only=True
. To both ignore non-zero return codes and force a command to run silently, specifyquiet=True
.
至於注入的配置變量,我不相信它會工作。在一般情況下,你可以使用Python的字符串格式化的設施,但是對於你的使用情況你最好使用布的cd
context manager:
with cd(config.PATH):
run('YOUR COMMAND HERE')
這將改變遠程工作目錄命令的持續時間(或命令)在塊中。
你是對的謝謝。 config.PATH變量實際上會工作嗎? – Prometheus
@Spike我不這麼認爲。我已更新我的回覆。 – tawmas
謝謝,你已經得到了巨大的幫助:) – Prometheus