lxd/storage_btrfs.go
func (s *storageBtrfs) ContainerSnapshotRename(snapshotContainer container, newName string) error {
	logger.Debugf("Renaming BTRFS storage volume for snapshot \"%s\" from %s to %s", s.volume.Name, s.volume.Name, newName)

	// The storage pool must be mounted.
	_, err := s.StoragePoolMount()
	if err != nil {
		return err
	}

	// Unmount the snapshot if it is mounted otherwise we'll get EBUSY.
	// Rename the subvolume on the storage pool.
	oldSnapshotSubvolumeName := getSnapshotMountPoint(snapshotContainer.Project(), s.pool.Name, snapshotContainer.Name())
	newSnapshotSubvolumeName := getSnapshotMountPoint(snapshotContainer.Project(), s.pool.Name, newName)
	err = os.Rename(oldSnapshotSubvolumeName, newSnapshotSubvolumeName)
	if err != nil {
		return err
	}

	logger.Debugf("Renamed BTRFS storage volume for snapshot \"%s\" from %s to %s", s.volume.Name, s.volume.Name, newName)
	return nil
}
func (s *storageBtrfs) ContainerSnapshotRename(snapshotContainer container, newName string) error {
	logger.Debugf("Renaming BTRFS storage volume for snapshot \"%s\" from %s to %s", s.volume.Name, s.volume.Name, newName)

	// The storage pool must be mounted.
	_, err := s.StoragePoolMount()
	if err != nil {
		return err
	}

	// Unmount the snapshot if it is mounted otherwise we'll get EBUSY.
	// Rename the subvolume on the storage pool.
	oldSnapshotSubvolumeName := getSnapshotMountPoint(snapshotContainer.Project(), s.pool.Name, snapshotContainer.Name())
	newSnapshotSubvolumeName := getSnapshotMountPoint(snapshotContainer.Project(), s.pool.Name, newName)
	err = os.Rename(oldSnapshotSubvolumeName, newSnapshotSubvolumeName)
	if err != nil {
		return err
	}

	logger.Debugf("Renamed BTRFS storage volume for snapshot \"%s\" from %s to %s", s.volume.Name, s.volume.Name, newName)
	return nil
}
func ( s * storageBtrfs ) ContainerSnapshotRename ( snapshotContainer container , newName string ) error { logger . Debugf ( " \" \" " , s . volume . Name , s . volume . Name , newName ) // The storage pool must be mounted. _ , err := s . StoragePoolMount ( ) if err != nil { return err } // Unmount the snapshot if it is mounted otherwise we'll get EBUSY. // Rename the subvolume on the storage pool. oldSnapshotSubvolumeName := getSnapshotMountPoint ( snapshotContainer . Project ( ) , s . pool . Name , snapshotContainer . Name ( ) ) newSnapshotSubvolumeName := getSnapshotMountPoint ( snapshotContainer . Project ( ) , s . pool . Name , newName ) err = os . Rename ( oldSnapshotSubvolumeName , newSnapshotSubvolumeName ) if err != nil { return err } logger . Debugf ( " \" \" " , s . volume . Name , s . volume . Name , newName ) return nil }
// ContainerSnapshotRename renames a snapshot of a container.
ContainerSnapshotRename renames a snapshot of a container .