func (d *Driver) MountVolume(id string, opts map[string]string) (string, error) { d.mutex.Lock() defer d.mutex.Unlock() volume := d.blankVolume(id) if err := util.ObjectLoad(volume); err != nil { return "", err } specifiedPoint := opts[convoydriver.OPT_MOUNT_POINT] if specifiedPoint != "" { return "", fmt.Errorf("VFS doesn't support specified mount point") } if volume.MountPoint == "" { volume.MountPoint = volume.Path } if volume.PrepareForVM { if err := util.MountPointPrepareImageFile(volume.MountPoint, volume.Size); err != nil { return "", err } } if err := util.ObjectSave(volume); err != nil { return "", err } return volume.MountPoint, nil }
func (d *Driver) MountVolume(req Request) (string, error) { d.mutex.Lock() defer d.mutex.Unlock() id := req.Name opts := req.Options volume := d.blankVolume(id) if err := util.ObjectLoad(volume); err != nil { return "", err } specifiedPoint := opts[OPT_MOUNT_POINT] if specifiedPoint != "" { return "", fmt.Errorf("GlusterFS doesn't support specified mount point") } if volume.MountPoint == "" { volume.MountPoint = volume.Path } if volume.PrepareForVM { if err := util.MountPointPrepareImageFile(volume.MountPoint, volume.Size); err != nil { return "", err } } if err := util.ObjectSave(volume); err != nil { return "", err } return volume.MountPoint, nil }
func (d *Driver) MountVolume(id string, opts map[string]string) (string, error) { volume := d.blankVolume(id) if err := util.ObjectLoad(volume); err != nil { return "", err } if err := volume.Stack(d).MoveController(); err != nil { log.Errorf("Failed to move controller to %s", d.containerName) return "", err } mountPoint, err := util.VolumeMount(volume, opts[convoydriver.OPT_MOUNT_POINT], false) if err != nil { return "", err } if volume.PrepareForVM { if err := util.MountPointPrepareImageFile(mountPoint, volume.Size); err != nil { return "", err } } if err := util.ObjectSave(volume); err != nil { return "", err } return mountPoint, nil }