[#1] node: Use a proper validation of a substorage type
Signed-off-by: Evgenii Stratonikov <e.stratonikov@yadro.com>
This commit is contained in:
parent
f4c71cea65
commit
73a71a71b0
2 changed files with 5 additions and 14 deletions
|
@ -5,8 +5,6 @@ import (
|
|||
|
||||
"git.frostfs.info/TrueCloudLab/frostfs-node/cmd/frostfs-node/config"
|
||||
"git.frostfs.info/TrueCloudLab/frostfs-node/cmd/frostfs-node/config/engine/shard/blobstor/storage"
|
||||
"git.frostfs.info/TrueCloudLab/frostfs-node/pkg/local_object_storage/blobstor/blobovniczatree"
|
||||
"git.frostfs.info/TrueCloudLab/frostfs-node/pkg/local_object_storage/blobstor/fstree"
|
||||
)
|
||||
|
||||
// Config is a wrapper over the config section
|
||||
|
@ -25,14 +23,11 @@ func (x *Config) Storages() []*storage.Config {
|
|||
typ := config.String(
|
||||
(*config.Config)(x),
|
||||
strconv.Itoa(i)+".type")
|
||||
switch typ {
|
||||
case "":
|
||||
if typ == "" {
|
||||
return ss
|
||||
case fstree.Type, blobovniczatree.Type:
|
||||
sub := storage.From((*config.Config)(x).Sub(strconv.Itoa(i)))
|
||||
ss = append(ss, sub)
|
||||
default:
|
||||
panic("invalid type")
|
||||
}
|
||||
|
||||
sub := storage.From((*config.Config)(x).Sub(strconv.Itoa(i)))
|
||||
ss = append(ss, sub)
|
||||
}
|
||||
}
|
||||
|
|
|
@ -51,17 +51,13 @@ func validateConfig(c *config.Config) error {
|
|||
|
||||
blobstor := sc.BlobStor().Storages()
|
||||
if len(blobstor) != 2 {
|
||||
// TODO (@fyrcik): remove after #1522
|
||||
return fmt.Errorf("blobstor section must have 2 components, got: %d", len(blobstor))
|
||||
}
|
||||
for i := range blobstor {
|
||||
switch blobstor[i].Type() {
|
||||
case fstree.Type, blobovniczatree.Type:
|
||||
default:
|
||||
// FIXME #1764 (@fyrchik): this line is currently unreachable,
|
||||
// because we panic in `sc.BlobStor().Storages()`.
|
||||
return fmt.Errorf("unexpected storage type: %s (shard %d)",
|
||||
blobstor[i].Type(), shardNum)
|
||||
return fmt.Errorf("unexpected storage type: %s (shard %d)", blobstor[i].Type(), shardNum)
|
||||
}
|
||||
if blobstor[i].Perm()&0600 != 0600 {
|
||||
return fmt.Errorf("invalid permissions for blobstor component: %s, "+
|
||||
|
|
Loading…
Reference in a new issue