aboutsummaryrefslogtreecommitdiff
path: root/pkg
diff options
context:
space:
mode:
authorRuakij <ruakij@ruekov.eu>2023-01-16 22:19:42 +0100
committerRuakij <ruakij@ruekov.eu>2023-01-16 22:19:42 +0100
commit63ac16c06307a59adca4da27ea2408de30050b50 (patch)
tree1597ce563e55c6759cb37110c72965fb7df777a9 /pkg
parent4899161d26d93496e15a293b8e8b99500d537fec (diff)
downloadseaweedfs-csi-driver-63ac16c06307a59adca4da27ea2408de30050b50.tar.xz
seaweedfs-csi-driver-63ac16c06307a59adca4da27ea2408de30050b50.zip
Add util-check for dataLocality and use it
Diffstat (limited to 'pkg')
-rw-r--r--pkg/driver/mounter_seaweedfs.go3
-rw-r--r--pkg/driver/utils.go8
2 files changed, 11 insertions, 0 deletions
diff --git a/pkg/driver/mounter_seaweedfs.go b/pkg/driver/mounter_seaweedfs.go
index 0fc4281..12142af 100644
--- a/pkg/driver/mounter_seaweedfs.go
+++ b/pkg/driver/mounter_seaweedfs.go
@@ -106,6 +106,9 @@ func (seaweedFs *seaweedFsMounter) Mount(target string) (Unmounter, error) {
dataLocality = dataLocalityRes
}
}
+ if err := CheckDataLocality(&dataLocality, &seaweedFs.driver.DataCenter); err != nil {
+ return nil, err
+ }
// Settings based on type
switch(dataLocality){
case datalocality.Write_preferLocalDc:
diff --git a/pkg/driver/utils.go b/pkg/driver/utils.go
index b629543..e103079 100644
--- a/pkg/driver/utils.go
+++ b/pkg/driver/utils.go
@@ -8,6 +8,7 @@ import (
"sync"
"github.com/container-storage-interface/spec/lib/go/csi"
+ "github.com/seaweedfs/seaweedfs-csi-driver/pkg/datalocality"
"github.com/seaweedfs/seaweedfs/weed/glog"
"golang.org/x/net/context"
"google.golang.org/grpc"
@@ -121,3 +122,10 @@ func (km *KeyMutex) GetMutex(key string) *sync.Mutex {
func (km *KeyMutex) RemoveMutex(key string) {
km.mutexes.Delete(key)
}
+
+func CheckDataLocality(dataLocality *datalocality.DataLocality, dataCenter *string) error {
+ if(*dataLocality != datalocality.None && *dataCenter == ""){
+ return fmt.Errorf("dataLocality set, but not all locality-definitions were set")
+ }
+ return nil
+}