Skip to content

Commit 6e21a4a

Browse files
authored
Merge pull request #257 from alexander-ding/enh/migrate-v2
Remove compatibility methods for old API versions
2 parents 9a01a14 + 217b17a commit 6e21a4a

File tree

7 files changed

+0
-287
lines changed

7 files changed

+0
-287
lines changed

pkg/disk/api/api.go

-7
Original file line numberDiff line numberDiff line change
@@ -38,8 +38,6 @@ type API interface {
3838
CreateBasicPartition(diskNumber uint32) error
3939
// Rescan updates the host storage cache (re-enumerates disk, partition and volume objects)
4040
Rescan() error
41-
// GetDiskNumberByName gets a disk number by page83 ID (disk name)
42-
GetDiskNumberByName(page83ID string) (uint32, error)
4341
// ListDiskIDs list all disks by disk number.
4442
ListDiskIDs() (map[uint32]DiskIDs, error)
4543
// GetDiskStats gets the disk stats of the disk `diskNumber`.
@@ -171,11 +169,6 @@ func (DiskAPI) CreateBasicPartition(diskNumber uint32) error {
171169
return nil
172170
}
173171

174-
func (imp DiskAPI) GetDiskNumberByName(page83ID string) (uint32, error) {
175-
diskNumber, err := imp.GetDiskNumberWithID(page83ID)
176-
return diskNumber, err
177-
}
178-
179172
func (DiskAPI) GetDiskNumber(disk syscall.Handle) (uint32, error) {
180173
var bytes uint32
181174
devNum := StorageDeviceNumber{}

pkg/disk/disk.go

-80
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,6 @@ package disk
22

33
import (
44
"context"
5-
"fmt"
6-
"strconv"
75

86
diskapi "github.com/kubernetes-csi/csi-proxy/pkg/disk/api"
97
"k8s.io/klog/v2"
@@ -14,9 +12,6 @@ type Disk struct {
1412
}
1513

1614
type Interface interface {
17-
DiskStats(context.Context, *DiskStatsRequest) (*DiskStatsResponse, error)
18-
GetAttachState(context.Context, *GetAttachStateRequest) (*GetAttachStateResponse, error)
19-
GetDiskNumberByName(context.Context, *GetDiskNumberByNameRequest) (*GetDiskNumberByNameResponse, error)
2015
// GetDiskState gets the offline/online state of a disk.
2116
GetDiskState(context.Context, *GetDiskStateRequest) (*GetDiskStateResponse, error)
2217

@@ -36,7 +31,6 @@ type Interface interface {
3631

3732
// Rescan refreshes the host's storage cache.
3833
Rescan(context.Context, *RescanRequest) (*RescanResponse, error)
39-
SetAttachState(context.Context, *SetAttachStateRequest) (*SetAttachStateResponse, error)
4034

4135
// SetDiskState sets the offline/online state of a disk.
4236
SetDiskState(context.Context, *SetDiskStateRequest) (*SetDiskStateResponse, error)
@@ -123,19 +117,6 @@ func (d *Disk) Rescan(context context.Context, request *RescanRequest) (*RescanR
123117
return response, nil
124118
}
125119

126-
func (d *Disk) GetDiskNumberByName(context context.Context, request *GetDiskNumberByNameRequest) (*GetDiskNumberByNameResponse, error) {
127-
klog.V(4).Infof("Request: GetDiskNumberByName with diskName %q", request.DiskName)
128-
response := &GetDiskNumberByNameResponse{}
129-
diskName := request.DiskName
130-
number, err := d.hostAPI.GetDiskNumberByName(diskName)
131-
if err != nil {
132-
klog.Errorf("GetDiskNumberByName failed: %v", err)
133-
return nil, err
134-
}
135-
response.DiskNumber = number
136-
return response, nil
137-
}
138-
139120
func (d *Disk) ListDiskIDs(context context.Context, request *ListDiskIDsRequest) (*ListDiskIDsResponse, error) {
140121
klog.V(4).Infof("Request: ListDiskIDs")
141122

@@ -158,26 +139,6 @@ func (d *Disk) ListDiskIDs(context context.Context, request *ListDiskIDsRequest)
158139
return response, nil
159140
}
160141

161-
func (d *Disk) DiskStats(context context.Context, request *DiskStatsRequest) (*DiskStatsResponse, error) {
162-
klog.V(2).Infof("Request: DiskStats: diskNumber=%d", request.DiskID)
163-
// forward to GetDiskStats
164-
diskNumber, err := strconv.ParseUint(request.DiskID, 10, 64)
165-
if err != nil {
166-
return nil, fmt.Errorf("Failed to format DiskStatsRequest.DiskID with err: %w", err)
167-
}
168-
getDiskStatsRequest := &GetDiskStatsRequest{
169-
DiskNumber: uint32(diskNumber),
170-
}
171-
getDiskStatsResponse, err := d.GetDiskStats(context, getDiskStatsRequest)
172-
if err != nil {
173-
klog.Errorf("Forward to GetDiskStats failed: %+v", err)
174-
return nil, err
175-
}
176-
return &DiskStatsResponse{
177-
DiskSize: getDiskStatsResponse.TotalBytes,
178-
}, nil
179-
}
180-
181142
func (d *Disk) GetDiskStats(context context.Context, request *GetDiskStatsRequest) (*GetDiskStatsResponse, error) {
182143
klog.V(2).Infof("Request: GetDiskStats: diskNumber=%d", request.DiskNumber)
183144
diskNumber := request.DiskNumber
@@ -191,26 +152,6 @@ func (d *Disk) GetDiskStats(context context.Context, request *GetDiskStatsReques
191152
}, nil
192153
}
193154

194-
func (d *Disk) SetAttachState(context context.Context, request *SetAttachStateRequest) (*SetAttachStateResponse, error) {
195-
klog.V(2).Infof("Request: SetAttachState: %+v", request)
196-
197-
// forward to SetDiskState
198-
diskNumber, err := strconv.ParseUint(request.DiskID, 10, 64)
199-
if err != nil {
200-
return nil, fmt.Errorf("Failed to format SetAttachStateRequest.DiskID with err: %w", err)
201-
}
202-
setDiskStateRequest := &SetDiskStateRequest{
203-
DiskNumber: uint32(diskNumber),
204-
IsOnline: request.IsOnline,
205-
}
206-
_, err = d.SetDiskState(context, setDiskStateRequest)
207-
if err != nil {
208-
klog.Errorf("Forward to SetDiskState failed with: %+v", err)
209-
return nil, err
210-
}
211-
return &SetAttachStateResponse{}, nil
212-
}
213-
214155
func (d *Disk) SetDiskState(context context.Context, request *SetDiskStateRequest) (*SetDiskStateResponse, error) {
215156
klog.V(2).Infof("Request: SetDiskState with diskNumber=%d and isOnline=%v", request.DiskNumber, request.IsOnline)
216157
err := d.hostAPI.SetDiskState(request.DiskNumber, request.IsOnline)
@@ -221,27 +162,6 @@ func (d *Disk) SetDiskState(context context.Context, request *SetDiskStateReques
221162
return &SetDiskStateResponse{}, nil
222163
}
223164

224-
func (d *Disk) GetAttachState(context context.Context, request *GetAttachStateRequest) (*GetAttachStateResponse, error) {
225-
klog.V(2).Infof("Request: GetAttachState: %+v", request)
226-
227-
// forward to GetDiskState
228-
diskNumber, err := strconv.ParseUint(request.DiskID, 10, 64)
229-
if err != nil {
230-
return nil, fmt.Errorf("Failed to format GetAttachStateRequest.DiskID with err: %w", err)
231-
}
232-
getDiskStateRequest := &GetDiskStateRequest{
233-
DiskNumber: uint32(diskNumber),
234-
}
235-
getDiskStateResponse, err := d.GetDiskState(context, getDiskStateRequest)
236-
if err != nil {
237-
klog.Errorf("Forward to GetDiskState failed with: %+v", err)
238-
return nil, err
239-
}
240-
return &GetAttachStateResponse{
241-
IsOnline: getDiskStateResponse.IsOnline,
242-
}, nil
243-
}
244-
245165
func (d *Disk) GetDiskState(context context.Context, request *GetDiskStateRequest) (*GetDiskStateResponse, error) {
246166
klog.V(4).Infof("Request: GetDiskState with diskNumber=%d", request.DiskNumber)
247167
isOnline, err := d.hostAPI.GetDiskState(request.DiskNumber)

pkg/disk/types.go

-40
Original file line numberDiff line numberDiff line change
@@ -29,15 +29,6 @@ type RescanRequest struct {
2929
type RescanResponse struct {
3030
}
3131

32-
type GetDiskNumberByNameRequest struct {
33-
// Disk name is the page83 ID of the disk
34-
DiskName string
35-
}
36-
37-
type GetDiskNumberByNameResponse struct {
38-
DiskNumber uint32
39-
}
40-
4132
type ListDiskIDsRequest struct {
4233
}
4334

@@ -80,34 +71,3 @@ type GetDiskStateResponse struct {
8071
// Online state of the disk. true for online, false for offline
8172
IsOnline bool
8273
}
83-
84-
// These structs are used in pre v1beta3 API versions
85-
86-
type DiskStatsRequest struct {
87-
DiskID string
88-
}
89-
90-
type DiskStatsResponse struct {
91-
DiskSize int64
92-
}
93-
94-
type SetAttachStateRequest struct {
95-
// Disk device ID of the disk which state will change
96-
DiskID string
97-
98-
// Online state to set for the disk. true for online, false for offline
99-
IsOnline bool
100-
}
101-
102-
type SetAttachStateResponse struct {
103-
}
104-
105-
type GetAttachStateRequest struct {
106-
// Disk device ID of the disk
107-
DiskID string
108-
}
109-
110-
type GetAttachStateResponse struct {
111-
// Online state of the disk. true for online, false for offline
112-
IsOnline bool
113-
}

pkg/filesystem/filesystem.go

-30
Original file line numberDiff line numberDiff line change
@@ -16,11 +16,9 @@ type Interface interface {
1616
// in the host filesystem (target_path is the name of the symbolic link created,
1717
// source_path is the existing path).
1818
CreateSymlink(context.Context, *CreateSymlinkRequest) (*CreateSymlinkResponse, error)
19-
IsMountPoint(context.Context, *IsMountPointRequest) (*IsMountPointResponse, error)
2019

2120
// IsSymlink checks if a given path is a symlink.
2221
IsSymlink(context.Context, *IsSymlinkRequest) (*IsSymlinkResponse, error)
23-
LinkPath(context.Context, *LinkPathRequest) (*LinkPathResponse, error)
2422

2523
// Mkdir creates a directory at the requested path in the host filesystem.
2624
Mkdir(context.Context, *MkdirRequest) (*MkdirResponse, error)
@@ -121,19 +119,6 @@ func (f *Filesystem) RmdirContents(ctx context.Context, request *RmdirContentsRe
121119
return nil, err
122120
}
123121

124-
func (f *Filesystem) LinkPath(ctx context.Context, request *LinkPathRequest) (*LinkPathResponse, error) {
125-
klog.V(2).Infof("Request: LinkPath with targetPath=%q sourcePath=%q", request.TargetPath, request.SourcePath)
126-
createSymlinkRequest := &CreateSymlinkRequest{
127-
SourcePath: request.SourcePath,
128-
TargetPath: request.TargetPath,
129-
}
130-
if _, err := f.CreateSymlink(ctx, createSymlinkRequest); err != nil {
131-
klog.Errorf("Failed to forward to CreateSymlink: %v", err)
132-
return nil, err
133-
}
134-
return &LinkPathResponse{}, nil
135-
}
136-
137122
func (f *Filesystem) CreateSymlink(ctx context.Context, request *CreateSymlinkRequest) (*CreateSymlinkResponse, error) {
138123
klog.V(2).Infof("Request: CreateSymlink with targetPath=%q sourcePath=%q", request.TargetPath, request.SourcePath)
139124
err := ValidatePathWindows(request.TargetPath)
@@ -154,21 +139,6 @@ func (f *Filesystem) CreateSymlink(ctx context.Context, request *CreateSymlinkRe
154139
return &CreateSymlinkResponse{}, nil
155140
}
156141

157-
func (f *Filesystem) IsMountPoint(ctx context.Context, request *IsMountPointRequest) (*IsMountPointResponse, error) {
158-
klog.V(2).Infof("Request: IsMountPoint with path=%q", request.Path)
159-
isSymlinkRequest := &IsSymlinkRequest{
160-
Path: request.Path,
161-
}
162-
isSymlinkResponse, err := f.IsSymlink(ctx, isSymlinkRequest)
163-
if err != nil {
164-
klog.Errorf("Failed to forward to IsSymlink: %v", err)
165-
return nil, err
166-
}
167-
return &IsMountPointResponse{
168-
IsMountPoint: isSymlinkResponse.IsSymlink,
169-
}, nil
170-
}
171-
172142
func (f *Filesystem) IsSymlink(ctx context.Context, request *IsSymlinkRequest) (*IsSymlinkResponse, error) {
173143
klog.V(2).Infof("Request: IsSymlink with path=%q", request.Path)
174144
isSymlink, err := f.hostAPI.IsSymlink(request.Path)

pkg/filesystem/types.go

-43
Original file line numberDiff line numberDiff line change
@@ -139,46 +139,3 @@ type IsSymlinkRequest struct {
139139
type IsSymlinkResponse struct {
140140
IsSymlink bool
141141
}
142-
143-
// Compatibility for pre v1beta2 APIs
144-
145-
type LinkPathRequest struct {
146-
// The path where the symlink is created in the host's filesystem.
147-
// All special characters allowed by Windows in path names will be allowed
148-
// except for restrictions noted below. For details, please check:
149-
// https://docs.microsoft.com/en-us/windows/win32/fileio/naming-a-file
150-
//
151-
// Restrictions:
152-
// Only absolute path (indicated by a drive letter prefix: e.g. "C:\") is accepted.
153-
// UNC paths of the form "\\server\share\path\file" are not allowed.
154-
// All directory separators need to be backslash character: "\".
155-
// Characters: .. / : | ? * in the path are not allowed.
156-
// source_path cannot already exist in the host filesystem.
157-
// Maximum path length will be capped to 260 characters.
158-
SourcePath string
159-
// Target path in the host's filesystem used for the symlink creation.
160-
// All special characters allowed by Windows in path names will be allowed
161-
// except for restrictions noted below. For details, please check:
162-
// https://docs.microsoft.com/en-us/windows/win32/fileio/naming-a-file
163-
//
164-
// Restrictions:
165-
// Only absolute path (indicated by a drive letter prefix: e.g. "C:\") is accepted.
166-
// UNC paths of the form "\\server\share\path\file" are not allowed.
167-
// All directory separators need to be backslash character: "\".
168-
// Characters: .. / : | ? * in the path are not allowed.
169-
// target_path needs to exist as a directory in the host that is empty.
170-
// target_path cannot be a symbolic link.
171-
// Maximum path length will be capped to 260 characters.
172-
TargetPath string
173-
}
174-
175-
type LinkPathResponse struct {
176-
}
177-
178-
type IsMountPointRequest struct {
179-
Path string
180-
}
181-
182-
type IsMountPointResponse struct {
183-
IsMountPoint bool
184-
}

pkg/volume/types.go

-27
Original file line numberDiff line numberDiff line change
@@ -87,30 +87,3 @@ type GetClosestVolumeIDFromTargetPathRequest struct {
8787
type GetClosestVolumeIDFromTargetPathResponse struct {
8888
VolumeId string
8989
}
90-
91-
// These structs are used in APIs less than v1beta3 and rerouted internally
92-
93-
type DismountVolumeRequest struct {
94-
VolumeId string
95-
Path string
96-
}
97-
type DismountVolumeResponse struct{}
98-
type VolumeDiskNumberRequest struct {
99-
VolumeId string
100-
}
101-
type VolumeDiskNumberResponse struct {
102-
DiskNumber int64
103-
}
104-
type VolumeIDFromMountRequest struct {
105-
Mount string
106-
}
107-
type VolumeIDFromMountResponse struct {
108-
VolumeId string
109-
}
110-
type VolumeStatsRequest struct {
111-
VolumeId string
112-
}
113-
type VolumeStatsResponse struct {
114-
VolumeSize int64
115-
VolumeUsedSize int64
116-
}

0 commit comments

Comments
 (0)