Ich habe eine Softlayer VM mit einer benutzerdefinierten Bildvorlage erstellt. Ich bin in der Lage, SAN-Festplatten zu meinem vm mit curl hinzufügen, aber ich bin nicht erfolgreich versuchen, dies mit der Python SoftLayer-Bibliothek zu tun. Ich erhalte den folgenden Fehler:Verwenden von SoftLayer Python API placeOrder zum Hinzufügen von Festplatten zu vm
SoftLayer.exceptions.SoftLayerAPIError: SoftLayerAPIError(SoftLayer_Exception_Order_InvalidContainer): Invalid container specified: SoftLayer_Container_Product_Order. Ordering a server or service requires a specific container type, not the generic base order container.
Hier ist mein Code:
self.client = SoftLayer.Client(username='[email protected]', api_key='key')
console_id = 11111111
order = {
"parameters": [{
"virtualGuests": [{"id": console_id}],
"prices": [{
"id": 113031,
"categories": [{
"categoryCode": "guest_disk1",
"complexType": "SoftLayer_Product_Item_Category"
}],
"complexType": "SoftLayer_Product_Item_Price"
},
{
"id": 112707,
"categories": [{
"categoryCode": "guest_disk2",
"complexType": "SoftLayer_Product_Item_Category"
}],
"complexType": "SoftLayer_Product_Item_Price"
}
],
"properties": [
{"name": "NOTE_GENERAL", "value": "adding disks"},
{"name": "MAINTENANCE_WINDOW", "value": "now"}
],
"complexType": "SoftLayer_Container_Product_Order_Virtual_Guest_Upgrade"
}]
}
# response = self.client['Product_Order'].placeOrder(order, False)
response = self.client.call('Product_Order', 'placeOrder', order)
print response
Wenn ich den folgenden curl Befehl jedoch meine vm Updates sind erfolgreich laufen:
curl -X POST --data @updatefile https://myusername%40email%2Ecom:[email protected]/rest/v3.1/SoftLayer_Product_Order/placeOrder
Inhalt der Updatedatei:
{
"parameters": [{
"virtualGuests":[{"id":11111111}],
"prices": [{
"id": 113031,
"categories": [{
"categoryCode": "guest_disk1",
"complexType": "SoftLayer_Product_Item_Category"
}],
"complexType": "SoftLayer_Product_Item_Price"
},
{
"id": 112707,
"categories": [{
"categoryCode": "guest_disk2",
"complexType": "SoftLayer_Product_Item_Category"
}],
"complexType": "SoftLayer_Product_Item_Price"
}
],
"properties": [
{"name": "NOTE_GENERAL","value": "adding disks"},
{"name": "MAINTENANCE_WINDOW","value": "now"}
],
"complexType": "SoftLayer_Container_Product_Order_Virtual_Guest_Upgrade"
}]
}
Irgendeine Idee, was ich falsch mache?