def handle_snapshot(config_spec, object_ref, reloc_spec, template, vm_):
 if ('snapshot' not in vm_):
  return None
 allowed_types = [FLATTEN_DISK_FULL_CLONE, COPY_ALL_DISKS_FULL_CLONE, CURRENT_STATE_LINKED_CLONE, QUICK_LINKED_CLONE]
 clone_spec = get_clonespec_for_valid_snapshot(config_spec, object_ref, reloc_spec, template, vm_)
 if (not clone_spec):
  raise SaltCloudSystemExit('Invalid disk move type specified supported types are {0}'.format(' '.join(allowed_types)))
 return clone_spec

def handle_snapshot ( config_spec , object_ref , reloc_spec , template , vm_ ) : if ( 'snapshot' not in vm_ ) : return None allowed_types = [ FLATTEN_DISK_FULL_CLONE , COPY_ALL_DISKS_FULL_CLONE , CURRENT_STATE_LINKED_CLONE , QUICK_LINKED_CLONE ] clone_spec = get_clonespec_for_valid_snapshot ( config_spec , object_ref , reloc_spec , template , vm_ ) if ( not clone_spec ) : raise SaltCloudSystemExit ( 'Invalid disk move type specified supported types are {0}' . format ( ' ' . join ( allowed_types ) ) ) return clone_spec
returns a clone spec for cloning from shapshots :rtype vim .