2012-08-07 34 views
1

下載時如何維護權限如果我有這樣的代碼:在面料

import fabric.operations 
from fabric.api import settings  

def begin(): 
    with settings(host_string='blar', user='blar', password='blar'): 
      fabric.operations.get('/remote/file', '/local/file') 

如何維護文件傳輸過程中的權限,如果某些文件是可執行的,有些則不是?

回答

2

你不能。您的本地文件將由發起結構腳本並遵守其umask的用戶擁有。但是,您可以在下一個蟒蛇呼叫中更改它:)

+0

這就是我喜歡的明確答案。謝謝 :) – Fuhton 2012-08-09 01:43:55

0

就API而言,它似乎there's currently no way。奇怪的是,there's not even a feature request for this

+0

感謝您的信息。奇怪的是,您可以使用.put()選項,但不能使用.get()。謝謝! – Fuhton 2012-08-09 01:46:37

+1

我確定這是因爲'put'比'get'更受歡迎,因爲結構主要是一個部署工具。 – Tshepang 2012-08-09 16:18:59

+1

將所有內容打包成'.tar.gz'文件保留了權限。爲我節省了一些麻煩和小帶寬。我應該想象,但我不會像我應該那樣經常使用Fabric。 – Fuhton 2012-08-09 18:48:55