aboutsummaryrefslogtreecommitdiff
path: root/pkg
diff options
context:
space:
mode:
authorwashcycle <litho23@gmail.com>2023-04-26 21:37:27 -0500
committerwashcycle <litho23@gmail.com>2023-04-26 21:37:27 -0500
commitceb40f2444d9b409b187a72ca8e8abeb437af62e (patch)
treea18517ebeeb16cecbf3d0d9b3397352691ae15d1 /pkg
parentb9cdc91ecb6008a33438d6a6407d5d4ddad9e361 (diff)
downloadseaweedfs-csi-driver-ceb40f2444d9b409b187a72ca8e8abeb437af62e.tar.xz
seaweedfs-csi-driver-ceb40f2444d9b409b187a72ca8e8abeb437af62e.zip
Implement CSI Test Suite
Fixes #115
Diffstat (limited to 'pkg')
-rw-r--r--pkg/driver/controllerserver.go5
-rw-r--r--pkg/driver/driver.go7
-rw-r--r--pkg/driver/utils.go15
3 files changed, 17 insertions, 10 deletions
diff --git a/pkg/driver/controllerserver.go b/pkg/driver/controllerserver.go
index b032542..b90a09c 100644
--- a/pkg/driver/controllerserver.go
+++ b/pkg/driver/controllerserver.go
@@ -95,11 +95,6 @@ func (cs *ControllerServer) ControllerPublishVolume(ctx context.Context, req *cs
return nil, status.Error(codes.InvalidArgument, "Volume ID missing in request")
}
- volumePath := req.GetVolumeContext()["volumePath"]
- if len(volumePath) == 0 {
- return nil, status.Error(codes.InvalidArgument, "Volume path missing in request")
- }
-
nodeId := req.NodeId
if len(nodeId) == 0 {
return nil, status.Error(codes.InvalidArgument, "Node ID missing in request")
diff --git a/pkg/driver/driver.go b/pkg/driver/driver.go
index 5a375e1..f26d59b 100644
--- a/pkg/driver/driver.go
+++ b/pkg/driver/driver.go
@@ -91,9 +91,12 @@ func (n *SeaweedFsDriver) initClient() error {
func (n *SeaweedFsDriver) Run() {
s := NewNonBlockingGRPCServer()
+
+ c, _ := NewControllerServer(n)
+
s.Start(n.endpoint,
NewIdentityServer(n),
- NewControllerServer(n),
+ c,
NewNodeServer(n))
s.Wait()
}
@@ -171,5 +174,5 @@ func (d *SeaweedFsDriver) AdjustedUrl(location *filer_pb.Location) string {
return location.Url
}
func (d *SeaweedFsDriver) GetDataCenter() string {
- return ""
+ return d.DataCenter
}
diff --git a/pkg/driver/utils.go b/pkg/driver/utils.go
index e103079..8343ae7 100644
--- a/pkg/driver/utils.go
+++ b/pkg/driver/utils.go
@@ -12,6 +12,7 @@ import (
"github.com/seaweedfs/seaweedfs/weed/glog"
"golang.org/x/net/context"
"google.golang.org/grpc"
+ "k8s.io/client-go/rest"
"k8s.io/utils/mount"
)
@@ -32,10 +33,18 @@ func NewIdentityServer(d *SeaweedFsDriver) *IdentityServer {
}
}
-func NewControllerServer(d *SeaweedFsDriver) *ControllerServer {
+func NewControllerServer(d *SeaweedFsDriver) (*ControllerServer, error) {
+
+ // Get the Kubernetes configuration
+ c, err := rest.InClusterConfig()
+ if err != nil {
+ fmt.Errorf("failed to get Kubernetes config: %v", err)
+ }
+
return &ControllerServer{
Driver: d,
- }
+ config: c,
+ }, nil
}
func NewControllerServiceCapability(cap csi.ControllerServiceCapability_RPC_Type) *csi.ControllerServiceCapability {
@@ -124,7 +133,7 @@ func (km *KeyMutex) RemoveMutex(key string) {
}
func CheckDataLocality(dataLocality *datalocality.DataLocality, dataCenter *string) error {
- if(*dataLocality != datalocality.None && *dataCenter == ""){
+ if *dataLocality != datalocality.None && *dataCenter == "" {
return fmt.Errorf("dataLocality set, but not all locality-definitions were set")
}
return nil