Clarify storage driver env vars

Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>
This commit is contained in:
Jörn Friedrich Dreyer
2020-10-23 22:48:02 +02:00
parent 542b5a2b1b
commit 8eb0864c93
12 changed files with 92 additions and 294 deletions
+18 -18
View File
@@ -15,118 +15,118 @@ func DriverEOSWithConfig(cfg *config.Config) []cli.Flag {
Name: "storage-eos-namespace",
Value: "/eos/dockertest/reva",
Usage: "Namespace for metadata operations",
EnvVars: []string{"STORAGE_STORAGE_EOS_NAMESPACE"},
EnvVars: []string{"STORAGE_DRIVER_EOS_NAMESPACE"},
Destination: &cfg.Reva.Storages.EOS.Root,
},
&cli.StringFlag{
Name: "storage-eos-shadow-namespace",
// Defaults to path.Join(c.Namespace, ".shadow")
Usage: "Shadow namespace where share references are stored",
EnvVars: []string{"STORAGE_STORAGE_EOS_SHADOW_NAMESPACE"},
EnvVars: []string{"STORAGE_DRIVER_EOS_SHADOW_NAMESPACE"},
Destination: &cfg.Reva.Storages.EOS.ShadowNamespace,
},
&cli.StringFlag{
Name: "storage-eos-share-folder",
Value: "/Shares",
Usage: "name of the share folder",
EnvVars: []string{"STORAGE_STORAGE_EOS_SHARE_FOLDER"},
EnvVars: []string{"STORAGE_DRIVER_EOS_SHARE_FOLDER"},
Destination: &cfg.Reva.Storages.EOS.ShareFolder,
},
&cli.StringFlag{
Name: "storage-eos-binary",
Value: "/usr/bin/eos",
Usage: "Location of the eos binary",
EnvVars: []string{"STORAGE_STORAGE_EOS_BINARY"},
EnvVars: []string{"STORAGE_DRIVER_EOS_BINARY"},
Destination: &cfg.Reva.Storages.EOS.EosBinary,
},
&cli.StringFlag{
Name: "storage-eos-xrdcopy-binary",
Value: "/usr/bin/xrdcopy",
Usage: "Location of the xrdcopy binary",
EnvVars: []string{"STORAGE_STORAGE_EOS_XRDCOPY_BINARY"},
EnvVars: []string{"STORAGE_DRIVER_EOS_XRDCOPY_BINARY"},
Destination: &cfg.Reva.Storages.EOS.XrdcopyBinary,
},
&cli.StringFlag{
Name: "storage-eos-master-url",
Value: "root://eos-mgm1.eoscluster.cern.ch:1094",
Usage: "URL of the Master EOS MGM",
EnvVars: []string{"STORAGE_STORAGE_EOS_MASTER_URL"},
EnvVars: []string{"STORAGE_DRIVER_EOS_MASTER_URL"},
Destination: &cfg.Reva.Storages.EOS.MasterURL,
},
&cli.StringFlag{
Name: "storage-eos-slave-url",
Value: "root://eos-mgm1.eoscluster.cern.ch:1094",
Usage: "URL of the Slave EOS MGM",
EnvVars: []string{"STORAGE_STORAGE_EOS_SLAVE_URL"},
EnvVars: []string{"STORAGE_DRIVER_EOS_SLAVE_URL"},
Destination: &cfg.Reva.Storages.EOS.SlaveURL,
},
&cli.StringFlag{
Name: "storage-eos-cache-directory",
Value: os.TempDir(),
Usage: "Location on the local fs where to store reads",
EnvVars: []string{"STORAGE_STORAGE_EOS_CACHE_DIRECTORY"},
EnvVars: []string{"STORAGE_DRIVER_EOS_CACHE_DIRECTORY"},
Destination: &cfg.Reva.Storages.EOS.CacheDirectory,
},
&cli.BoolFlag{
Name: "storage-eos-enable-logging",
Usage: "Enables logging of the commands executed",
EnvVars: []string{"STORAGE_STORAGE_EOS_ENABLE_LOGGING"},
EnvVars: []string{"STORAGE_DRIVER_EOS_ENABLE_LOGGING"},
Destination: &cfg.Reva.Storages.EOS.EnableLogging,
},
&cli.BoolFlag{
Name: "storage-eos-show-hidden-sysfiles",
Usage: "show internal EOS files like .sys.v# and .sys.a# files.",
EnvVars: []string{"STORAGE_STORAGE_EOS_SHOW_HIDDEN_SYSFILES"},
EnvVars: []string{"STORAGE_DRIVER_EOS_SHOW_HIDDEN_SYSFILES"},
Destination: &cfg.Reva.Storages.EOS.ShowHiddenSysFiles,
},
&cli.BoolFlag{
Name: "storage-eos-force-singleuser-mode",
Usage: "force connections to EOS to use SingleUsername",
EnvVars: []string{"STORAGE_STORAGE_EOS_FORCE_SINGLEUSER_MODE"},
EnvVars: []string{"STORAGE_DRIVER_EOS_FORCE_SINGLEUSER_MODE"},
Destination: &cfg.Reva.Storages.EOS.ForceSingleUserMode,
},
&cli.BoolFlag{
Name: "storage-eos-use-keytab",
Usage: "authenticate requests by using an EOS keytab",
EnvVars: []string{"STORAGE_STORAGE_EOS_USE_KEYTAB"},
EnvVars: []string{"STORAGE_DRIVER_EOS_USE_KEYTAB"},
Destination: &cfg.Reva.Storages.EOS.UseKeytab,
},
&cli.BoolFlag{
Name: "storage-eos-enable-home",
Usage: "enable the creation of home directories",
EnvVars: []string{"STORAGE_STORAGE_EOS_ENABLE_HOME"},
EnvVars: []string{"STORAGE_DRIVER_EOS_ENABLE_HOME"},
Destination: &cfg.Reva.Storages.EOS.EnableHome,
},
&cli.StringFlag{
Name: "storage-eos-sec-protocol",
Usage: "the xrootd security protocol to use between the server and EOS",
EnvVars: []string{"STORAGE_STORAGE_EOS_SEC_PROTOCOL"},
EnvVars: []string{"STORAGE_DRIVER_EOS_SEC_PROTOCOL"},
Destination: &cfg.Reva.Storages.EOS.SecProtocol,
},
&cli.StringFlag{
Name: "storage-eos-keytab",
Usage: "the location of the keytab to use to authenticate to EOS",
EnvVars: []string{"STORAGE_STORAGE_EOS_KEYTAB"},
EnvVars: []string{"STORAGE_DRIVER_EOS_KEYTAB"},
Destination: &cfg.Reva.Storages.EOS.Keytab,
},
&cli.StringFlag{
Name: "storage-eos-single-username",
Usage: "the username to use when SingleUserMode is enabled",
EnvVars: []string{"STORAGE_STORAGE_EOS_SINGLE_USERNAME"},
EnvVars: []string{"STORAGE_DRIVER_EOS_SINGLE_USERNAME"},
Destination: &cfg.Reva.Storages.EOS.SingleUsername,
},
&cli.StringFlag{
Name: "storage-eos-layout",
Value: "{{substr 0 1 .Username}}/{{.Username}}",
Usage: `"layout of the users home dir path on disk, in addition to {{.Username}}, {{.UsernameLower}} and {{.Provider}} also supports prefixing dirs: "{{.UsernamePrefixCount.2}}/{{.UsernameLower}}" will turn "Einstein" into "Ei/Einstein" `,
EnvVars: []string{"STORAGE_STORAGE_EOS_LAYOUT"},
EnvVars: []string{"STORAGE_DRIVER_EOS_LAYOUT"},
Destination: &cfg.Reva.Storages.EOS.UserLayout,
},
&cli.StringFlag{
Name: "storage-eos-gatewaysvc",
Value: "localhost:9142",
Usage: "URL to use for the storage gateway service",
EnvVars: []string{"STORAGE_STORAGE_EOS_GATEWAYSVC"},
EnvVars: []string{"STORAGE_DRIVER_EOS_GATEWAYSVC"},
Destination: &cfg.Reva.Storages.EOS.GatewaySVC,
},
}
+1 -1
View File
@@ -12,7 +12,7 @@ func DriverLocalWithConfig(cfg *config.Config) []cli.Flag {
Name: "storage-local-root",
Value: "/var/tmp/ocis/local",
Usage: "the path to the local storage root",
EnvVars: []string{"STORAGE_STORAGE_LOCAL_ROOT"},
EnvVars: []string{"STORAGE_DRIVER_LOCAL_ROOT"},
Destination: &cfg.Reva.Storages.Local.Root,
},
}
+3 -3
View File
@@ -12,21 +12,21 @@ func DriverOCISWithConfig(cfg *config.Config) []cli.Flag {
Name: "storage-ocis-root",
Value: "/var/tmp/ocis/storage/users",
Usage: "the path to the local storage root",
EnvVars: []string{"STORAGE_STORAGE_OCIS_ROOT"},
EnvVars: []string{"STORAGE_DRIVER_OCIS_ROOT"},
Destination: &cfg.Reva.Storages.Common.Root,
},
&cli.BoolFlag{
Name: "storage-ocis-enable-home",
Value: false,
Usage: "enable the creation of home storages",
EnvVars: []string{"STORAGE_STORAGE_OCIS_ENABLE_HOME"},
EnvVars: []string{"STORAGE_DRIVER_OCIS_ENABLE_HOME"},
Destination: &cfg.Reva.Storages.Common.EnableHome,
},
&cli.StringFlag{
Name: "storage-ocis-layout",
Value: "{{.Id.OpaqueId}}",
Usage: `"layout of the users home dir path on disk, in addition to {{.Username}}, {{.Mail}}, {{.Id.OpaqueId}}, {{.Id.Idp}} also supports prefixing dirs: "{{substr 0 1 .Username}}/{{.Username}}" will turn "Einstein" into "Ei/Einstein" `,
EnvVars: []string{"STORAGE_STORAGE_OCIS_LAYOUT"},
EnvVars: []string{"STORAGE_DRIVER_OCIS_LAYOUT"},
Destination: &cfg.Reva.Storages.Common.UserLayout,
},
}
+7 -7
View File
@@ -12,49 +12,49 @@ func DriverOwnCloudWithConfig(cfg *config.Config) []cli.Flag {
Name: "storage-owncloud-datadir",
Value: "/var/tmp/ocis/owncloud",
Usage: "the path to the owncloud data directory",
EnvVars: []string{"STORAGE_STORAGE_OWNCLOUD_DATADIR"},
EnvVars: []string{"STORAGE_DRIVER_OWNCLOUD_DATADIR"},
Destination: &cfg.Reva.Storages.OwnCloud.Root,
},
&cli.StringFlag{
Name: "storage-owncloud-uploadinfo-dir",
Value: "/var/tmp/ocis/uploadinfo",
Usage: "the path to the tus upload info directory",
EnvVars: []string{"STORAGE_STORAGE_OWNCLOUD_UPLOADINFO_DIR"},
EnvVars: []string{"STORAGE_DRIVER_OWNCLOUD_UPLOADINFO_DIR"},
Destination: &cfg.Reva.Storages.OwnCloud.UploadInfoDir,
},
&cli.StringFlag{
Name: "storage-owncloud-share-folder",
Value: "/Shares",
Usage: "name of the shares folder",
EnvVars: []string{"STORAGE_STORAGE_OWNCLOUD_SHARE_FOLDER"},
EnvVars: []string{"STORAGE_DRIVER_OWNCLOUD_SHARE_FOLDER"},
Destination: &cfg.Reva.Storages.OwnCloud.ShareFolder,
},
&cli.BoolFlag{
Name: "storage-owncloud-scan",
Value: true,
Usage: "scan files on startup to add fileids",
EnvVars: []string{"STORAGE_STORAGE_OWNCLOUD_SCAN"},
EnvVars: []string{"STORAGE_DRIVER_OWNCLOUD_SCAN"},
Destination: &cfg.Reva.Storages.OwnCloud.Scan,
},
&cli.StringFlag{
Name: "storage-owncloud-redis",
Value: ":6379",
Usage: "the address of the redis server",
EnvVars: []string{"STORAGE_STORAGE_OWNCLOUD_REDIS_ADDR"},
EnvVars: []string{"STORAGE_DRIVER_OWNCLOUD_REDIS_ADDR"},
Destination: &cfg.Reva.Storages.OwnCloud.Redis,
},
&cli.BoolFlag{
Name: "storage-owncloud-enable-home",
Value: false,
Usage: "enable the creation of home storages",
EnvVars: []string{"STORAGE_STORAGE_OWNCLOUD_ENABLE_HOME"},
EnvVars: []string{"STORAGE_DRIVER_OWNCLOUD_ENABLE_HOME"},
Destination: &cfg.Reva.Storages.OwnCloud.EnableHome,
},
&cli.StringFlag{
Name: "storage-owncloud-layout",
Value: "{{.Id.OpaqueId}}",
Usage: `"layout of the users home dir path on disk, in addition to {{.Username}}, {{.Mail}}, {{.Id.OpaqueId}}, {{.Id.Idp}} also supports prefixing dirs: "{{substr 0 1 .Username}}/{{.Username}}" will turn "Einstein" into "Ei/Einstein" `,
EnvVars: []string{"STORAGE_STORAGE_OWNCLOUD_LAYOUT"},
EnvVars: []string{"STORAGE_DRIVER_OWNCLOUD_LAYOUT"},
Destination: &cfg.Reva.Storages.OwnCloud.UserLayout,
},
}
+5 -5
View File
@@ -174,21 +174,21 @@ func GatewayWithConfig(cfg *config.Config) []cli.Flag {
Name: "storage-home-endpoint",
Value: "localhost:9154",
Usage: "endpoint to use for the home storage",
EnvVars: []string{"STORAGE_STORAGE_HOME_ENDPOINT"},
EnvVars: []string{"STORAGE_HOME_ENDPOINT"},
Destination: &cfg.Reva.StorageHome.Endpoint,
},
&cli.StringFlag{
Name: "storage-home-mount-path",
Value: "/home",
Usage: "mount path",
EnvVars: []string{"STORAGE_STORAGE_HOME_MOUNT_PATH"},
EnvVars: []string{"STORAGE_HOME_MOUNT_PATH"},
Destination: &cfg.Reva.StorageHome.MountPath,
},
&cli.StringFlag{
Name: "storage-home-mount-id",
Value: "1284d238-aa92-42ce-bdc4-0b0000009154",
Usage: "mount id",
EnvVars: []string{"STORAGE_STORAGE_HOME_MOUNT_ID"},
EnvVars: []string{"STORAGE_HOME_MOUNT_ID"},
Destination: &cfg.Reva.StorageHome.MountID,
},
@@ -222,14 +222,14 @@ func GatewayWithConfig(cfg *config.Config) []cli.Flag {
Name: "public-link-endpoint",
Value: "localhost:9178",
Usage: "endpoint to use for the public links service",
EnvVars: []string{"STORAGE_STORAGE_PUBLIC_LINK_ENDPOINT"},
EnvVars: []string{"STORAGE_PUBLIC_LINK_ENDPOINT"},
Destination: &cfg.Reva.StoragePublicLink.Endpoint,
},
&cli.StringFlag{
Name: "storage-public-link-mount-path",
Value: "/public",
Usage: "mount path",
EnvVars: []string{"STORAGE_STORAGE_PUBLIC_LINK_MOUNT_PATH"},
EnvVars: []string{"STORAGE_PUBLIC_LINK_MOUNT_PATH"},
Destination: &cfg.Reva.StoragePublicLink.MountPath,
},
// public-link has no mount id
+3 -3
View File
@@ -93,10 +93,10 @@ Usage: `storage {{ $c.Name }} [command options] [arguments...]`
You can set different storage drivers for the Storage Providers. Please check the storage provider configuration.
Example: Set the home Storage Provider to `ocis`
Example: Set the home and users Storage Provider to `ocis`
`STORAGE_STORAGE_HOME_DRIVER=ocis`
`STORAGE_STORAGE_HOME_DATA_DRIVER=ocis`
`STORAGE_HOME_DRIVER=ocis`
`STORAGE_USERS_DRIVER=ocis`
### Local Driver