Override storage-driver roots with storage-metadata root flag

This commit is contained in:
Ilja Neumann committed 2020-09-29 16:35:50 +02:00
1 parent 1f8d702416
commit 319a27a298
2 files changed
+18 -8

No files matched your search

+11 -1
View File
@@ -25,9 +25,19 @@ func StorageMetadata(cfg *config.Config) *cli.Command {
Usage: "Start reva storage-metadata service",
Flags: flagset.StorageMetadata(cfg),
Category: "Extensions",
Before: func(c *cli.Context) error {
storageRoot := c.String("storage-root")
cfg.Reva.Storages.OwnCloud.Root = storageRoot
cfg.Reva.Storages.EOS.Root = storageRoot
cfg.Reva.Storages.Local.Root = storageRoot
cfg.Reva.Storages.S3.Root = storageRoot
cfg.Reva.Storages.Home.Root = storageRoot
return nil
},
Action: func(c *cli.Context) error {
logger := NewLogger(cfg)
if cfg.Tracing.Enabled {
switch t := cfg.Tracing.Type; t {
case "agent":
+7 -7
View File
@@ -3,7 +3,6 @@ package flagset
import (
"github.com/micro/cli/v2"
"github.com/owncloud/ocis/ocis-reva/pkg/config"
"path"
)
// StorageMetadata applies cfg to the root flagset
@@ -58,6 +57,13 @@ func StorageMetadata(cfg *config.Config) []cli.Flag {
EnvVars: []string{"REVA_STORAGE_METADATA_DATA_PROVIDER_DRIVER"},
Destination: &cfg.Reva.StorageMetadataData.Driver,
},
&cli.StringFlag{
Name: "storage-root",
Value: "/var/tmp/ocis/metadata",
Usage: "the path to the metadata storage root",
EnvVars: []string{"REVA_STORAGE_METADATA_ROOT"},
Destination: &cfg.Reva.Storages.Common.Root,
},
}
flags = append(flags, TracingWithConfig(cfg)...)
@@ -68,12 +74,6 @@ func StorageMetadata(cfg *config.Config) []cli.Flag {
flags = append(flags, DriverOwnCloudWithConfig(cfg)...)
flags = append(flags, DriverOCISWithConfig(cfg)...)
// Metadata storage needs its own root
cfg.Reva.Storages.Common.Root = path.Join(cfg.Reva.Storages.Common.Root, "metadata")
cfg.Reva.Storages.OwnCloud.Root = path.Join(cfg.Reva.Storages.OwnCloud.Root, "metadata")
cfg.Reva.Storages.EOS.Root = path.Join(cfg.Reva.Storages.EOS.Root, "metadata")
cfg.Reva.Storages.Local.Root = path.Join(cfg.Reva.Storages.Local.Root, "metadata")
return flags
}