2016-09-26 163 views
0

我想使用谷歌雲蟒API來創建從快照磁盤來創建快照磁盤:無法使用谷歌雲引擎API

def createDisk(compute, project, zone): 
    config = { 
    'name': disk_name 
    } 

    return compute.disks().insert(
    project=project, 
    zone=zone, 
    sourceSnapshot='global/snapshots/' + snap_name, 
    body=config).execute() 

但它拋出:

TypeError: Got an unexpected keyword argument "sourceSnapshot" 

根據到docs它應該是可能的:

使用re中的數據在指定項目中創建永久磁盤尋求。您可以使用sourceImage,sourceSnapshot創建磁盤,或者通過省略所有屬性來創建一個空的500 GB數據磁盤。您還可以通過指定sizeGb屬性來創建大於默認大小的磁盤。

我需要它來自動化我想基於'虛擬'實例的圖像創建。然後應該使用該圖像創建一個磁盤,然後該磁盤將用於實例模板中的自動縮放。

那一個的任何提示?可能嗎?如果不是,sourceSnapshot參考文檔是真的有誤導性嗎?

預先感謝您。

+0

儘管文字說,參數框只顯示'sourceImage'。 – Barmar

+0

也許你對這兩個參數都使用'sourceImage'參數,並且它會自動判斷它是圖像還是快照。 – Barmar

+0

@Barmar:我也試過,但是:'「字段'resource.sourceImage'的值無效:''。必須是有效圖像資源的URL。」' –

回答

0

它出來了,sourceSnapshot應該是身體請求的一部分,而不是一個參數。所以這將工作:

def createDisk(compute, project, zone): 
    config = { 
    'name': disk_name, 
    'sourceSnapshot': 'global/snapshots/' + snap_name, 
    } 

    return compute.disks().insert(
    project=project, 
    zone=zone, 
    body=config).execute() 
相關問題