Make all paths configurable and default to
Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>
This commit is contained in:
@@ -143,7 +143,7 @@ func ServerWithConfig(cfg *config.Config) []cli.Flag {
|
|||||||
&cli.StringFlag{
|
&cli.StringFlag{
|
||||||
Name: "storage-disk-path",
|
Name: "storage-disk-path",
|
||||||
Value: "",
|
Value: "",
|
||||||
Usage: "Path on the local disk, e.g. /var/tmp/ocis-accounts",
|
Usage: "Path on the local disk, e.g. /var/tmp/ocis/accounts",
|
||||||
EnvVars: []string{"ACCOUNTS_STORAGE_DISK_PATH"},
|
EnvVars: []string{"ACCOUNTS_STORAGE_DISK_PATH"},
|
||||||
Destination: &cfg.Repo.Disk.Path,
|
Destination: &cfg.Repo.Disk.Path,
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -0,0 +1,5 @@
|
|||||||
|
Change: Make all paths configurable and default to `/var/tmp/ocis/<service>/...`
|
||||||
|
|
||||||
|
Aligned all services to use a subdir of `/var/tmp/ocis/` by default. Also made some missing temp paths configurable via env vars and config flags.
|
||||||
|
|
||||||
|
https://github.com/owncloud/ocis/pulls/1080
|
||||||
@@ -120,7 +120,7 @@ To provide the other storage aspects we plan to implement a FUSE overlay filesys
|
|||||||
This is the current default storage driver. While it implements the file tree (using redis, including id based lookup), ETag propagation, trash, versions and sharing (including expiry) using the data directory layout of ownCloud 10 it has [known limitations](https://github.com/owncloud/core/issues/28095) that cannot be fixed without changing the actual layout on disk.
|
This is the current default storage driver. While it implements the file tree (using redis, including id based lookup), ETag propagation, trash, versions and sharing (including expiry) using the data directory layout of ownCloud 10 it has [known limitations](https://github.com/owncloud/core/issues/28095) that cannot be fixed without changing the actual layout on disk.
|
||||||
|
|
||||||
To setup it up properly in a distributed fashion, the storage-home and the storage-oc need to share the same underlying FS. Their "data" counterparts also need access to the same shared FS.
|
To setup it up properly in a distributed fashion, the storage-home and the storage-oc need to share the same underlying FS. Their "data" counterparts also need access to the same shared FS.
|
||||||
For a simple docker-compose setup, you can create a volume which will be used by the "storage-storage-home", "storage-storage-home-data", "storage-storage-oc" and "storage-storage-oc-data" containers. Using the `owncloud/ocis` docker image, the volume would need to be hooked in the `/var/tmp/ocis` folder insde the containers.
|
For a simple docker-compose setup, you can create a volume which will be used by the "storage-storage-home", "storage-storage-home-data", "storage-storage-oc" and "storage-storage-oc-data" containers. Using the `owncloud/ocis` docker image, the volume would need to be hooked in the `/var/tmp/ocis` folder inside the containers.
|
||||||
|
|
||||||
- tree provided by a POSIX filesystem
|
- tree provided by a POSIX filesystem
|
||||||
- file layout is mapped to the old ownCloud 10 layout
|
- file layout is mapped to the old ownCloud 10 layout
|
||||||
|
|||||||
@@ -29,7 +29,7 @@ chmod +x ocis
|
|||||||
./ocis server
|
./ocis server
|
||||||
```
|
```
|
||||||
|
|
||||||
The default primary storage location is `/var/tmp/`. You can change that value by configuration.
|
The default primary storage location is `/var/tmp/ocis`. You can change that value by configuration.
|
||||||
|
|
||||||
|
|
||||||
### Docker
|
### Docker
|
||||||
|
|||||||
@@ -251,7 +251,7 @@ func ServerWithConfig(cfg *config.Config) []cli.Flag {
|
|||||||
Name: "identifier-client-path",
|
Name: "identifier-client-path",
|
||||||
Usage: "Path to the identifier web client base folder",
|
Usage: "Path to the identifier web client base folder",
|
||||||
EnvVars: []string{"KONNECTD_IDENTIFIER_CLIENT_PATH"},
|
EnvVars: []string{"KONNECTD_IDENTIFIER_CLIENT_PATH"},
|
||||||
Value: "/var/tmp/konnectd",
|
Value: "/var/tmp/ocis/konnectd",
|
||||||
Destination: &cfg.Konnectd.IdentifierClientPath,
|
Destination: &cfg.Konnectd.IdentifierClientPath,
|
||||||
},
|
},
|
||||||
&cli.StringFlag{
|
&cli.StringFlag{
|
||||||
|
|||||||
@@ -45,7 +45,7 @@ type NonUnique struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// NewNonUniqueIndexWithOptions instantiates a new NonUniqueIndex instance.
|
// NewNonUniqueIndexWithOptions instantiates a new NonUniqueIndex instance.
|
||||||
// /var/tmp/ocis-accounts/index.cs3/Pets/Bro*
|
// /var/tmp/ocis/accounts/index.cs3/Pets/Bro*
|
||||||
// ├── Brown/
|
// ├── Brown/
|
||||||
// │ └── rebef-123 -> /var/tmp/testfiles-395764020/pets/rebef-123
|
// │ └── rebef-123 -> /var/tmp/testfiles-395764020/pets/rebef-123
|
||||||
// ├── Green/
|
// ├── Green/
|
||||||
|
|||||||
@@ -44,7 +44,7 @@ services:
|
|||||||
# make accounts use ocis storage driver
|
# make accounts use ocis storage driver
|
||||||
# TODO provision metadata storage in eos and switch to cs3 backend for accounts
|
# TODO provision metadata storage in eos and switch to cs3 backend for accounts
|
||||||
ACCOUNTS_LOG_LEVEL: debug
|
ACCOUNTS_LOG_LEVEL: debug
|
||||||
ACCOUNTS_STORAGE_DISK_PATH: /var/tmp/ocis-accounts
|
ACCOUNTS_STORAGE_DISK_PATH: /var/tmp/ocis/accounts
|
||||||
# TODO make id the default in ocis-storage
|
# TODO make id the default in ocis-storage
|
||||||
STORAGE_DRIVER_EOS_LAYOUT: "{{substr 0 1 .Id.OpaqueId}}/{{.Id.OpaqueId}}"
|
STORAGE_DRIVER_EOS_LAYOUT: "{{substr 0 1 .Id.OpaqueId}}/{{.Id.OpaqueId}}"
|
||||||
STORAGE_FRONTEND_PUBLIC_URL: https://${OCIS_DOMAIN:-localhost}:9200
|
STORAGE_FRONTEND_PUBLIC_URL: https://${OCIS_DOMAIN:-localhost}:9200
|
||||||
|
|||||||
@@ -173,7 +173,7 @@ func ServerWithConfig(cfg *config.Config) []cli.Flag {
|
|||||||
},
|
},
|
||||||
&cli.StringFlag{
|
&cli.StringFlag{
|
||||||
Name: "data-path",
|
Name: "data-path",
|
||||||
Value: "/var/tmp/ocis-settings",
|
Value: "/var/tmp/ocis/settings",
|
||||||
Usage: "Mount path for the storage",
|
Usage: "Mount path for the storage",
|
||||||
EnvVars: []string{"SETTINGS_DATA_PATH"},
|
EnvVars: []string{"SETTINGS_DATA_PATH"},
|
||||||
Destination: &cfg.Service.DataPath,
|
Destination: &cfg.Service.DataPath,
|
||||||
|
|||||||
@@ -51,7 +51,7 @@ cp -r "$WEB_PATH/tests" "./$testFolder"
|
|||||||
export NODE_TLS_REJECT_UNAUTHORIZED='0'
|
export NODE_TLS_REJECT_UNAUTHORIZED='0'
|
||||||
export SERVER_HOST=${SERVER_HOST:-https://localhost:9200}
|
export SERVER_HOST=${SERVER_HOST:-https://localhost:9200}
|
||||||
export BACKEND_HOST=${BACKEND_HOST:-https://localhost:9200}
|
export BACKEND_HOST=${BACKEND_HOST:-https://localhost:9200}
|
||||||
export OCIS_SETTINGS_STORE=${OCIS_SETTINGS_STORE:-"/var/tmp/ocis-settings"}
|
export OCIS_SETTINGS_STORE=${OCIS_SETTINGS_STORE:-"/var/tmp/ocis/settings"}
|
||||||
export RUN_ON_OCIS=true
|
export RUN_ON_OCIS=true
|
||||||
export TEST_TAGS=${TEST_TAGS:-"not @skip"}
|
export TEST_TAGS=${TEST_TAGS:-"not @skip"}
|
||||||
|
|
||||||
|
|||||||
@@ -130,7 +130,7 @@ func Frontend(cfg *config.Config) *cli.Command {
|
|||||||
},
|
},
|
||||||
"ocdav": map[string]interface{}{
|
"ocdav": map[string]interface{}{
|
||||||
"prefix": cfg.Reva.Frontend.OCDavPrefix,
|
"prefix": cfg.Reva.Frontend.OCDavPrefix,
|
||||||
"chunk_folder": "/var/tmp/ocis/chunks",
|
"chunk_folder": cfg.Reva.OCDav.ChunkFolder,
|
||||||
"files_namespace": cfg.Reva.OCDav.DavFilesNamespace,
|
"files_namespace": cfg.Reva.OCDav.DavFilesNamespace,
|
||||||
"webdav_namespace": cfg.Reva.OCDav.WebdavNamespace,
|
"webdav_namespace": cfg.Reva.OCDav.WebdavNamespace,
|
||||||
"timeout": 86400,
|
"timeout": 86400,
|
||||||
|
|||||||
@@ -97,6 +97,11 @@ func Sharing(cfg *config.Config) *cli.Command {
|
|||||||
},
|
},
|
||||||
"publicshareprovider": map[string]interface{}{
|
"publicshareprovider": map[string]interface{}{
|
||||||
"driver": cfg.Reva.Sharing.PublicDriver,
|
"driver": cfg.Reva.Sharing.PublicDriver,
|
||||||
|
"drivers": map[string]interface{}{
|
||||||
|
"json": map[string]interface{}{
|
||||||
|
"file": cfg.Reva.Sharing.PublicJSONFile,
|
||||||
|
},
|
||||||
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -102,6 +102,7 @@ func StorageHome(cfg *config.Config) *cli.Command {
|
|||||||
"mount_id": cfg.Reva.StorageHome.MountID,
|
"mount_id": cfg.Reva.StorageHome.MountID,
|
||||||
"expose_data_server": cfg.Reva.StorageHome.ExposeDataServer,
|
"expose_data_server": cfg.Reva.StorageHome.ExposeDataServer,
|
||||||
"data_server_url": cfg.Reva.StorageHome.DataServerURL,
|
"data_server_url": cfg.Reva.StorageHome.DataServerURL,
|
||||||
|
"tmp_folder": cfg.Reva.StorageHome.TempFolder,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -111,6 +111,7 @@ func StorageMetadata(cfg *config.Config) *cli.Command {
|
|||||||
"driver": cfg.Reva.StorageMetadata.Driver,
|
"driver": cfg.Reva.StorageMetadata.Driver,
|
||||||
"drivers": drivers(cfg),
|
"drivers": drivers(cfg),
|
||||||
"data_server_url": cfg.Reva.StorageMetadata.DataServerURL,
|
"data_server_url": cfg.Reva.StorageMetadata.DataServerURL,
|
||||||
|
"tmp_folder": cfg.Reva.StorageMetadata.TempFolder,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -102,6 +102,7 @@ func StorageUsers(cfg *config.Config) *cli.Command {
|
|||||||
"mount_id": cfg.Reva.StorageUsers.MountID,
|
"mount_id": cfg.Reva.StorageUsers.MountID,
|
||||||
"expose_data_server": cfg.Reva.StorageUsers.ExposeDataServer,
|
"expose_data_server": cfg.Reva.StorageUsers.ExposeDataServer,
|
||||||
"data_server_url": cfg.Reva.StorageUsers.DataServerURL,
|
"data_server_url": cfg.Reva.StorageUsers.DataServerURL,
|
||||||
|
"tmp_folder": cfg.Reva.StorageUsers.TempFolder,
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -36,9 +36,10 @@ type StorageRegistry struct {
|
|||||||
// Sharing defines the available sharing configuration.
|
// Sharing defines the available sharing configuration.
|
||||||
type Sharing struct {
|
type Sharing struct {
|
||||||
Port
|
Port
|
||||||
UserDriver string
|
UserDriver string
|
||||||
UserJSONFile string
|
UserJSONFile string
|
||||||
PublicDriver string
|
PublicDriver string
|
||||||
|
PublicJSONFile string
|
||||||
}
|
}
|
||||||
|
|
||||||
// Port defines the available port configuration.
|
// Port defines the available port configuration.
|
||||||
@@ -82,7 +83,7 @@ type FrontendPort struct {
|
|||||||
DatagatewayPrefix string
|
DatagatewayPrefix string
|
||||||
OCDavPrefix string
|
OCDavPrefix string
|
||||||
OCSPrefix string
|
OCSPrefix string
|
||||||
OCSSharePrefix string
|
OCSSharePrefix string
|
||||||
PublicURL string
|
PublicURL string
|
||||||
Middleware Middleware
|
Middleware Middleware
|
||||||
}
|
}
|
||||||
@@ -282,6 +283,7 @@ type LDAPSchema struct {
|
|||||||
|
|
||||||
// OCDav defines the available ocdav configuration.
|
// OCDav defines the available ocdav configuration.
|
||||||
type OCDav struct {
|
type OCDav struct {
|
||||||
|
ChunkFolder string
|
||||||
WebdavNamespace string
|
WebdavNamespace string
|
||||||
DavFilesNamespace string
|
DavFilesNamespace string
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ func DriverLocalWithConfig(cfg *config.Config) []cli.Flag {
|
|||||||
return []cli.Flag{
|
return []cli.Flag{
|
||||||
&cli.StringFlag{
|
&cli.StringFlag{
|
||||||
Name: "storage-local-root",
|
Name: "storage-local-root",
|
||||||
Value: "/var/tmp/ocis/local",
|
Value: "/var/tmp/ocis/storage/local",
|
||||||
Usage: "the path to the local storage root",
|
Usage: "the path to the local storage root",
|
||||||
EnvVars: []string{"STORAGE_DRIVER_LOCAL_ROOT"},
|
EnvVars: []string{"STORAGE_DRIVER_LOCAL_ROOT"},
|
||||||
Destination: &cfg.Reva.Storages.Local.Root,
|
Destination: &cfg.Reva.Storages.Local.Root,
|
||||||
|
|||||||
@@ -10,14 +10,14 @@ func DriverOwnCloudWithConfig(cfg *config.Config) []cli.Flag {
|
|||||||
return []cli.Flag{
|
return []cli.Flag{
|
||||||
&cli.StringFlag{
|
&cli.StringFlag{
|
||||||
Name: "storage-owncloud-datadir",
|
Name: "storage-owncloud-datadir",
|
||||||
Value: "/var/tmp/ocis/owncloud",
|
Value: "/var/tmp/ocis/storage/owncloud",
|
||||||
Usage: "the path to the owncloud data directory",
|
Usage: "the path to the owncloud data directory",
|
||||||
EnvVars: []string{"STORAGE_DRIVER_OWNCLOUD_DATADIR"},
|
EnvVars: []string{"STORAGE_DRIVER_OWNCLOUD_DATADIR"},
|
||||||
Destination: &cfg.Reva.Storages.OwnCloud.Root,
|
Destination: &cfg.Reva.Storages.OwnCloud.Root,
|
||||||
},
|
},
|
||||||
&cli.StringFlag{
|
&cli.StringFlag{
|
||||||
Name: "storage-owncloud-uploadinfo-dir",
|
Name: "storage-owncloud-uploadinfo-dir",
|
||||||
Value: "/var/tmp/ocis/uploadinfo",
|
Value: "/var/tmp/ocis/storage/uploadinfo",
|
||||||
Usage: "the path to the tus upload info directory",
|
Usage: "the path to the tus upload info directory",
|
||||||
EnvVars: []string{"STORAGE_DRIVER_OWNCLOUD_UPLOADINFO_DIR"},
|
EnvVars: []string{"STORAGE_DRIVER_OWNCLOUD_UPLOADINFO_DIR"},
|
||||||
Destination: &cfg.Reva.Storages.OwnCloud.UploadInfoDir,
|
Destination: &cfg.Reva.Storages.OwnCloud.UploadInfoDir,
|
||||||
|
|||||||
@@ -30,11 +30,18 @@ func FrontendWithConfig(cfg *config.Config) []cli.Flag {
|
|||||||
|
|
||||||
// OCDav
|
// OCDav
|
||||||
|
|
||||||
|
&cli.StringFlag{
|
||||||
|
Name: "chunk-folder",
|
||||||
|
Value: "/var/tmp/ocis/tmp/chunks",
|
||||||
|
Usage: "temp directory for chunked uploads",
|
||||||
|
EnvVars: []string{"STORAGE_CHUNK_FOLDER"},
|
||||||
|
Destination: &cfg.Reva.OCDav.WebdavNamespace,
|
||||||
|
},
|
||||||
&cli.StringFlag{
|
&cli.StringFlag{
|
||||||
Name: "webdav-namespace",
|
Name: "webdav-namespace",
|
||||||
Value: "/home/",
|
Value: "/home/",
|
||||||
Usage: "Namespace prefix for the /webdav endpoint",
|
Usage: "Namespace prefix for the /webdav endpoint",
|
||||||
EnvVars: []string{"WEBDAV_NAMESPACE"},
|
EnvVars: []string{"STORAGE_WEBDAV_NAMESPACE"},
|
||||||
Destination: &cfg.Reva.OCDav.WebdavNamespace,
|
Destination: &cfg.Reva.OCDav.WebdavNamespace,
|
||||||
},
|
},
|
||||||
|
|
||||||
@@ -44,7 +51,7 @@ func FrontendWithConfig(cfg *config.Config) []cli.Flag {
|
|||||||
Name: "dav-files-namespace",
|
Name: "dav-files-namespace",
|
||||||
Value: "/users/",
|
Value: "/users/",
|
||||||
Usage: "Namespace prefix for the webdav /dav/files endpoint",
|
Usage: "Namespace prefix for the webdav /dav/files endpoint",
|
||||||
EnvVars: []string{"DAV_FILES_NAMESPACE"},
|
EnvVars: []string{"STORAGE_DAV_FILES_NAMESPACE"},
|
||||||
Destination: &cfg.Reva.OCDav.DavFilesNamespace,
|
Destination: &cfg.Reva.OCDav.DavFilesNamespace,
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|||||||
@@ -51,7 +51,7 @@ func SharingWithConfig(cfg *config.Config) []cli.Flag {
|
|||||||
},
|
},
|
||||||
&cli.StringFlag{
|
&cli.StringFlag{
|
||||||
Name: "user-json-file",
|
Name: "user-json-file",
|
||||||
Value: "/var/tmp/ocis/shares.json",
|
Value: "/var/tmp/ocis/storage/shares.json",
|
||||||
Usage: "file used to persist shares for the UserShareProvider",
|
Usage: "file used to persist shares for the UserShareProvider",
|
||||||
EnvVars: []string{"STORAGE_SHARING_USER_JSON_FILE"},
|
EnvVars: []string{"STORAGE_SHARING_USER_JSON_FILE"},
|
||||||
Destination: &cfg.Reva.Sharing.UserJSONFile,
|
Destination: &cfg.Reva.Sharing.UserJSONFile,
|
||||||
@@ -63,6 +63,13 @@ func SharingWithConfig(cfg *config.Config) []cli.Flag {
|
|||||||
EnvVars: []string{"STORAGE_SHARING_PUBLIC_DRIVER"},
|
EnvVars: []string{"STORAGE_SHARING_PUBLIC_DRIVER"},
|
||||||
Destination: &cfg.Reva.Sharing.PublicDriver,
|
Destination: &cfg.Reva.Sharing.PublicDriver,
|
||||||
},
|
},
|
||||||
|
&cli.StringFlag{
|
||||||
|
Name: "public-json-file",
|
||||||
|
Value: "/var/tmp/ocis/storage/publicshares.json",
|
||||||
|
Usage: "file used to persist shares for the PublicShareProvider",
|
||||||
|
EnvVars: []string{"STORAGE_SHARING_PUBLIC_JSON_FILE"},
|
||||||
|
Destination: &cfg.Reva.Sharing.PublicJSONFile,
|
||||||
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
flags = append(flags, TracingWithConfig(cfg)...)
|
flags = append(flags, TracingWithConfig(cfg)...)
|
||||||
|
|||||||
@@ -111,6 +111,13 @@ func StorageHomeWithConfig(cfg *config.Config) []cli.Flag {
|
|||||||
EnvVars: []string{"STORAGE_HOME_HTTP_PREFIX"},
|
EnvVars: []string{"STORAGE_HOME_HTTP_PREFIX"},
|
||||||
Destination: &cfg.Reva.StorageHome.HTTPPrefix,
|
Destination: &cfg.Reva.StorageHome.HTTPPrefix,
|
||||||
},
|
},
|
||||||
|
&cli.StringFlag{
|
||||||
|
Name: "tmp-folder",
|
||||||
|
Value: "/var/tmp/ocis/tmp/home",
|
||||||
|
Usage: "path to tmp folder",
|
||||||
|
EnvVars: []string{"STORAGE_HOME_TMP_FOLDER"},
|
||||||
|
Destination: &cfg.Reva.StorageHome.TempFolder,
|
||||||
|
},
|
||||||
&cli.BoolFlag{
|
&cli.BoolFlag{
|
||||||
Name: "enable-home",
|
Name: "enable-home",
|
||||||
Value: true,
|
Value: true,
|
||||||
|
|||||||
@@ -50,6 +50,13 @@ func StorageMetadata(cfg *config.Config) []cli.Flag {
|
|||||||
EnvVars: []string{"STORAGE_METADATA_HTTP_ADDR"},
|
EnvVars: []string{"STORAGE_METADATA_HTTP_ADDR"},
|
||||||
Destination: &cfg.Reva.StorageMetadata.HTTPAddr,
|
Destination: &cfg.Reva.StorageMetadata.HTTPAddr,
|
||||||
},
|
},
|
||||||
|
&cli.StringFlag{
|
||||||
|
Name: "tmp-folder",
|
||||||
|
Value: "/var/tmp/ocis/tmp/metadata",
|
||||||
|
Usage: "path to tmp folder",
|
||||||
|
EnvVars: []string{"STORAGE_METADATA_TMP_FOLDER"},
|
||||||
|
Destination: &cfg.Reva.StorageMetadata.TempFolder,
|
||||||
|
},
|
||||||
&cli.StringFlag{
|
&cli.StringFlag{
|
||||||
Name: "driver",
|
Name: "driver",
|
||||||
Value: "ocis",
|
Value: "ocis",
|
||||||
@@ -91,7 +98,7 @@ func StorageMetadata(cfg *config.Config) []cli.Flag {
|
|||||||
flags = append(flags,
|
flags = append(flags,
|
||||||
&cli.StringFlag{
|
&cli.StringFlag{
|
||||||
Name: "storage-root",
|
Name: "storage-root",
|
||||||
Value: "/var/tmp/ocis/metadata",
|
Value: "/var/tmp/ocis/storage/metadata",
|
||||||
Usage: "the path to the metadata storage root",
|
Usage: "the path to the metadata storage root",
|
||||||
EnvVars: []string{"STORAGE_METADATA_ROOT"},
|
EnvVars: []string{"STORAGE_METADATA_ROOT"},
|
||||||
Destination: &cfg.Reva.Storages.Common.Root,
|
Destination: &cfg.Reva.Storages.Common.Root,
|
||||||
|
|||||||
@@ -108,6 +108,13 @@ func StorageUsersWithConfig(cfg *config.Config) []cli.Flag {
|
|||||||
EnvVars: []string{"STORAGE_USERS_HTTP_PREFIX"},
|
EnvVars: []string{"STORAGE_USERS_HTTP_PREFIX"},
|
||||||
Destination: &cfg.Reva.StorageUsers.HTTPPrefix,
|
Destination: &cfg.Reva.StorageUsers.HTTPPrefix,
|
||||||
},
|
},
|
||||||
|
&cli.StringFlag{
|
||||||
|
Name: "tmp-folder",
|
||||||
|
Value: "/var/tmp/ocis/tmp/users",
|
||||||
|
Usage: "path to tmp folder",
|
||||||
|
EnvVars: []string{"STORAGE_USERS_TMP_FOLDER"},
|
||||||
|
Destination: &cfg.Reva.StorageUsers.TempFolder,
|
||||||
|
},
|
||||||
|
|
||||||
// some drivers need to look up users at the gateway
|
// some drivers need to look up users at the gateway
|
||||||
|
|
||||||
|
|||||||
@@ -131,7 +131,7 @@ func ServerWithConfig(cfg *config.Config) []cli.Flag {
|
|||||||
},
|
},
|
||||||
&cli.StringFlag{
|
&cli.StringFlag{
|
||||||
Name: "data-path",
|
Name: "data-path",
|
||||||
Value: "/var/tmp/ocis-store",
|
Value: "/var/tmp/ocis/store",
|
||||||
Usage: "location of the store data path",
|
Usage: "location of the store data path",
|
||||||
EnvVars: []string{"STORE_DATA_PATH"},
|
EnvVars: []string{"STORE_DATA_PATH"},
|
||||||
Destination: &cfg.Datapath,
|
Destination: &cfg.Datapath,
|
||||||
|
|||||||
@@ -242,7 +242,7 @@ func (s *Service) Tables(ctx context.Context, in *proto.TablesRequest, out *prot
|
|||||||
}
|
}
|
||||||
|
|
||||||
// TODO sanitize key. As it may contain invalid characters, such as slashes.
|
// TODO sanitize key. As it may contain invalid characters, such as slashes.
|
||||||
// file: /var/tmp/ocis-store/databases/{database}/{table}/{record.key}.
|
// file: /var/tmp/ocis/store/databases/{database}/{table}/{record.key}.
|
||||||
func getID(database string, table string, key string) string {
|
func getID(database string, table string, key string) string {
|
||||||
// TODO sanitize input.
|
// TODO sanitize input.
|
||||||
return filepath.Join(database, table, key)
|
return filepath.Join(database, table, key)
|
||||||
|
|||||||
Reference in New Issue
Block a user