Add support for the cs3 metadata storage share manager (#3290)

* Add support for the cs3 share manager

* Name the cs3 storage config options generically so they can be reused

* Set default value for CS3ServiceUserIdp
This commit is contained in:
Andre Duffeck
2022-03-21 10:19:48 +01:00
committed by GitHub
parent 40062ca6d6
commit ed417ea1c9
3 changed files with 29 additions and 1 deletions

View File

@@ -142,6 +142,13 @@ func sharingConfigFromStruct(c *cli.Context, cfg *config.Config) map[string]inte
"db_port": cfg.Reva.Sharing.UserSQLPort,
"db_name": cfg.Reva.Sharing.UserSQLName,
},
"cs3": map[string]interface{}{
"gateway_addr": cfg.Reva.Gateway.Endpoint,
"provider_addr": cfg.Reva.Sharing.CS3ProviderAddr,
"service_user_id": cfg.Reva.Sharing.CS3ServiceUser,
"service_user_idp": cfg.Reva.Sharing.CS3ServiceUserIdp,
"machine_auth_apikey": cfg.Reva.AuthMachineConfig.MachineAuthAPIKey,
},
},
},
"publicshareprovider": map[string]interface{}{

View File

@@ -78,6 +78,9 @@ type Sharing struct {
Port
UserDriver string `ocisConfig:"user_driver"`
UserJSONFile string `ocisConfig:"user_json_file"`
CS3ProviderAddr string `ocisConfig:"provider_addr"`
CS3ServiceUser string `ocisConfig:"service_user_id"`
CS3ServiceUserIdp string `ocisConfig:"service_user_idp"`
UserSQLUsername string `ocisConfig:"user_sql_username"`
UserSQLPassword string `ocisConfig:"user_sql_password"`
UserSQLHost string `ocisConfig:"user_sql_host"`
@@ -1211,7 +1214,22 @@ func structMappings(cfg *Config) []shared.EnvBinding {
Destination: &cfg.Reva.Sharing.PublicJanitorRunInterval,
},
// shqringsql
// sharing cs3
{
EnvVars: []string{"STORAGE_SHARING_CS3_PROVIDER_ADDR"},
Destination: &cfg.Reva.Sharing.CS3ProviderAddr,
},
{
EnvVars: []string{"STORAGE_SHARING_CS3_SERVICE_USER"},
Destination: &cfg.Reva.Sharing.CS3ServiceUser,
},
{
EnvVars: []string{"OCIS_URL", "STORAGE_SHARING_CS3_SERVICE_USER_IDP"},
Destination: &cfg.Reva.Sharing.CS3ServiceUserIdp,
},
// sharingsql
{
EnvVars: []string{"STORAGE_SHARING_USER_SQL_USERNAME"},
Destination: &cfg.Reva.Sharing.UserSQLUsername,

View File

@@ -346,6 +346,9 @@ func DefaultConfig() *config.Config {
GRPCAddr: "127.0.0.1:9150",
Services: []string{"usershareprovider", "publicshareprovider"},
},
CS3ProviderAddr: "127.0.0.1:9215",
CS3ServiceUser: "95cb8724-03b2-11eb-a0a6-c33ef8ef53ad",
CS3ServiceUserIdp: "https://localhost:9200",
UserDriver: "json",
UserJSONFile: path.Join(defaults.BaseDataPath(), "storage", "shares.json"),
UserSQLUsername: "",