make frontend prefixes configurable

Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>
This commit is contained in:
Jörn Friedrich Dreyer
2020-07-09 10:33:35 +02:00
parent fcd3fc29c1
commit b75cfbf39e
3 changed files with 34 additions and 2 deletions

View File

@@ -120,12 +120,13 @@ func Frontend(cfg *config.Config) *cli.Command {
// TODO build services dynamically
"services": map[string]interface{}{
"datagateway": map[string]interface{}{
"prefix": cfg.Reva.Frontend.DatagatewayPrefix,
"transfer_shared_secret": cfg.Reva.TransferSecret,
"timeout": 86400,
"insecure": true,
},
"ocdav": map[string]interface{}{
"prefix": "",
"prefix": cfg.Reva.Frontend.OCDavPrefix,
"chunk_folder": "/var/tmp/reva/chunks",
"files_namespace": cfg.Reva.OCDav.DavFilesNamespace,
"webdav_namespace": cfg.Reva.OCDav.WebdavNamespace,
@@ -134,6 +135,7 @@ func Frontend(cfg *config.Config) *cli.Command {
"disable_tus": cfg.Reva.UploadDisableTus,
},
"ocs": map[string]interface{}{
"prefix": cfg.Reva.Frontend.OCSPrefix,
"config": map[string]interface{}{
"version": "1.8",
"website": "reva",

View File

@@ -65,6 +65,15 @@ type Users struct {
JSON string
}
// FrontendPort defines the available frontend configuration.
type FrontendPort struct {
Port
DatagatewayPrefix string
OCDavPrefix string
OCSPrefix string
}
// StoragePort defines the available storage configuration.
type StoragePort struct {
Port
@@ -230,7 +239,7 @@ type Reva struct {
OCDav OCDav
Storages StorageConfig
// Ports are used to configure which services to start on which port
Frontend Port
Frontend FrontendPort
DataGateway Port
Gateway Gateway
Users Users

View File

@@ -147,6 +147,27 @@ func FrontendWithConfig(cfg *config.Config) []cli.Flag {
Usage: "--service ocdav [--service ocs]",
EnvVars: []string{"REVA_FRONTEND_SERVICES"},
},
&cli.StringFlag{
Name: "datagateway-prefix",
Value: "data",
Usage: "datagateway prefix",
EnvVars: []string{"REVA_FRONTEND_DATAGATEWAY_PREFIX"},
Destination: &cfg.Reva.Frontend.DatagatewayPrefix,
},
&cli.StringFlag{
Name: "ocdav-prefix",
Value: "",
Usage: "owncloud webdav endpoint prefix",
EnvVars: []string{"REVA_FRONTEND_OCDAV_PREFIX"},
Destination: &cfg.Reva.Frontend.OCDavPrefix,
},
&cli.StringFlag{
Name: "ocs-prefix",
Value: "ocs",
Usage: "open collaboration services endpoint prefix",
EnvVars: []string{"REVA_FRONTEND_OCS_PREFIX"},
Destination: &cfg.Reva.Frontend.OCDavPrefix,
},
// Gateway