mirror of
https://github.com/ceph/ceph-csi.git
synced 2024-12-22 04:50:23 +00:00
cleanup: cephfs resize code cleanup
The ceph fs subvolume resize support is available in all the active ceph releases. Hence removing the code to check the supportability of the feature. Signed-off-by: karthik-us <ksubrahm@redhat.com>
This commit is contained in:
parent
5d57fd3f70
commit
31aeaf7e5b
@ -199,15 +199,13 @@ func (s *subVolumeClient) GetSubVolumeInfo(ctx context.Context) (*Subvolume, err
|
||||
type operationState int64
|
||||
|
||||
const (
|
||||
unknown operationState = iota
|
||||
supported
|
||||
supported operationState = iota
|
||||
unsupported
|
||||
)
|
||||
|
||||
type localClusterState struct {
|
||||
// set the enum value i.e., unknown, supported,
|
||||
// set the enum value i.e., supported or
|
||||
// unsupported as per the state of the cluster.
|
||||
resizeState operationState
|
||||
subVolMetadataState operationState
|
||||
subVolSnapshotMetadataState operationState
|
||||
}
|
||||
@ -268,39 +266,21 @@ func (s *subVolumeClient) ExpandVolume(ctx context.Context, bytesQuota int64) er
|
||||
return err
|
||||
}
|
||||
|
||||
// ResizeVolume will try to use ceph fs subvolume resize command to resize the
|
||||
// subvolume. If the command is not available as a fallback it will use
|
||||
// CreateVolume to resize the subvolume.
|
||||
// ResizeVolume will use the ceph fs subvolume resize command to resize the
|
||||
// subvolume.
|
||||
func (s *subVolumeClient) ResizeVolume(ctx context.Context, bytesQuota int64) error {
|
||||
newLocalClusterState(s.clusterID)
|
||||
// resize subvolume when either it's supported, or when corresponding
|
||||
// clusterID key was not present.
|
||||
if clusterAdditionalInfo[s.clusterID].resizeState == unknown ||
|
||||
clusterAdditionalInfo[s.clusterID].resizeState == supported {
|
||||
fsa, err := s.conn.GetFSAdmin()
|
||||
if err != nil {
|
||||
log.ErrorLog(ctx, "could not get FSAdmin, can not resize volume %s:", s.FsName, err)
|
||||
fsa, err := s.conn.GetFSAdmin()
|
||||
if err != nil {
|
||||
log.ErrorLog(ctx, "could not get FSAdmin, can not resize volume %s:", s.FsName, err)
|
||||
|
||||
return err
|
||||
}
|
||||
_, err = fsa.ResizeSubVolume(s.FsName, s.SubvolumeGroup, s.VolID, fsAdmin.ByteCount(bytesQuota), true)
|
||||
if err == nil {
|
||||
clusterAdditionalInfo[s.clusterID].resizeState = supported
|
||||
|
||||
return nil
|
||||
}
|
||||
var invalid fsAdmin.NotImplementedError
|
||||
// In case the error is other than invalid command return error to the caller.
|
||||
if !errors.As(err, &invalid) {
|
||||
log.ErrorLog(ctx, "failed to resize subvolume %s in fs %s: %s", s.VolID, s.FsName, err)
|
||||
|
||||
return err
|
||||
}
|
||||
return err
|
||||
}
|
||||
_, err = fsa.ResizeSubVolume(s.FsName, s.SubvolumeGroup, s.VolID, fsAdmin.ByteCount(bytesQuota), true)
|
||||
if err != nil {
|
||||
log.ErrorLog(ctx, "failed to resize subvolume %s in fs %s: %s", s.VolID, s.FsName, err)
|
||||
}
|
||||
clusterAdditionalInfo[s.clusterID].resizeState = unsupported
|
||||
s.Size = bytesQuota
|
||||
|
||||
return s.CreateVolume(ctx)
|
||||
return err
|
||||
}
|
||||
|
||||
// PurgSubVolume removes the subvolume.
|
||||
|
Loading…
Reference in New Issue
Block a user