MCPcopy Create free account
hub / github.com/apache/cloudstack / create_from_snapshot

Method create_from_snapshot

tools/marvin/marvin/lib/base.py:1236–1270  ·  view source on GitHub ↗

Create Volume from snapshot

(cls, apiclient, snapshot_id, services,
                             account=None, domainid=None, projectid=None, zoneid=None, disk_offering=None, size=None)

Source from the content-addressed store, hash-verified

1234
1235 @classmethod
1236 def create_from_snapshot(cls, apiclient, snapshot_id, services,
1237 account=None, domainid=None, projectid=None, zoneid=None, disk_offering=None, size=None):
1238 """Create Volume from snapshot"""
1239 cmd = createVolume.createVolumeCmd()
1240 cmd.name = "-".join([services["diskname"], random_gen()])
1241 cmd.snapshotid = snapshot_id
1242 if zoneid:
1243 cmd.zoneid = zoneid
1244 elif "zoneid" in services:
1245 cmd.zoneid = services["zoneid"]
1246 if "size" in services:
1247 cmd.size = services["size"]
1248 if "ispublic" in services:
1249 cmd.ispublic = services["ispublic"]
1250 else:
1251 cmd.ispublic = False
1252 if account:
1253 cmd.account = account
1254 elif "account" in services:
1255 cmd.account = services["account"]
1256 if domainid:
1257 cmd.domainid = domainid
1258 elif "domainid" in services:
1259 cmd.domainid = services["domainid"]
1260
1261 if projectid:
1262 cmd.projectid = projectid
1263
1264 if disk_offering:
1265 cmd.diskofferingid = disk_offering
1266
1267 if size:
1268 cmd.size = size
1269
1270 return Volume(apiclient.createVolume(cmd).__dict__)
1271
1272 @classmethod
1273 def revertToSnapshot(cls, apiclient, volumeSnapshotId):

Callers

nothing calls this directly

Implementers 1

VolumeVOengine/schema/src/main/java/com/cloud/

Calls 4

random_genFunction · 0.90
VolumeClass · 0.70
createVolumeMethod · 0.65
joinMethod · 0.45

Tested by

no test coverage detected