mirror of
https://github.com/opencloud-eu/opencloud.git
synced 2026-02-16 18:40:02 -06:00
fix ocis startup with debugging config / environment variables only
This commit is contained in:
20
.vscode/launch.json
vendored
20
.vscode/launch.json
vendored
@@ -19,9 +19,25 @@
|
||||
"PROXY_ENABLE_BASIC_AUTH": "true",
|
||||
// set insecure options because we don't have valid certificates in dev environments
|
||||
"OCIS_INSECURE": "true",
|
||||
// set some hardcoded secrets
|
||||
"OCIS_JWT_SECRET": "some-ocis-jwt-secret",
|
||||
"STORAGE_TRANSFER_SECRET": "some-ocis-transfer-secret",
|
||||
"OCIS_MACHINE_AUTH_API_KEY": "some-ocis-machine-auth-api-key",
|
||||
// idm ldap
|
||||
"IDM_SVC_PASSWORD": "some-ldap-idm-password",
|
||||
"GRAPH_LDAP_BIND_PASSWORD": "some-ldap-idm-password",
|
||||
// reva ldap
|
||||
"IDM_REVASVC_PASSWORD": "some-ldap-reva-password",
|
||||
"GROUPS_LDAP_BIND_PASSWORD": "some-ldap-reva-password",
|
||||
"USERS_LDAP_BIND_PASSWORD": "some-ldap-reva-password",
|
||||
"AUTH_BASIC_LDAP_BIND_PASSWORD": "some-ldap-reva-password",
|
||||
// idp ldap
|
||||
"IDM_IDPSVC_PASSWORD": "some-ldap-idp-password",
|
||||
"IDP_LDAP_BIND_PASSWORD": "some-ldap-idp-password",
|
||||
// admin user default password
|
||||
"IDM_ADMIN_PASSWORD": "admin",
|
||||
// demo users
|
||||
"ACCOUNTS_DEMO_USERS_AND_GROUPS": "true",
|
||||
"IDM_CREATE_DEMO_USERS": "true"
|
||||
"IDM_CREATE_DEMO_USERS": "true",
|
||||
// OCIS_RUN_EXTENSIONS allows to start a subset of extensions even in the supervised mode
|
||||
//"OCIS_RUN_EXTENSIONS": "settings,storage-metadata,glauth,graph,graph-explorer,idp,ocs,store,thumbnails,web,webdav,storage-frontend,storage-gateway,storage-userprovider,storage-groupprovider,storage-authbasic,storage-authbearer,storage-authmachine,storage-users,storage-shares,storage-public-link,storage-appprovider,storage-sharing,accounts,proxy,ocdav",
|
||||
}
|
||||
|
||||
@@ -42,6 +42,6 @@ type Thumbnail struct {
|
||||
CS3AllowInsecure bool `yaml:"cs3_allow_insecure" env:"OCIS_INSECURE;THUMBNAILS_CS3SOURCE_INSECURE"`
|
||||
RevaGateway string `yaml:"reva_gateway" env:"REVA_GATEWAY"` //TODO: use REVA config
|
||||
FontMapFile string `yaml:"font_map_file" env:"THUMBNAILS_TXT_FONTMAP_FILE"`
|
||||
TransferSecret string `yaml:"transfer_secret" env:"THUMBNAILS_TRANSFER_TOKEN"`
|
||||
TransferSecret string `yaml:"transfer_secret" env:"STORAGE_TRANSFER_TOKEN;THUMBNAILS_TRANSFER_TOKEN"`
|
||||
DataEndpoint string `yaml:"data_endpoint" env:"THUMBNAILS_DATA_ENDPOINT"`
|
||||
}
|
||||
|
||||
@@ -35,7 +35,7 @@ func ParseConfig(cfg *config.Config) error {
|
||||
}
|
||||
|
||||
func Validate(cfg *config.Config) error {
|
||||
if cfg.TransferSecret == "" {
|
||||
if cfg.Thumbnail.TransferSecret == "" {
|
||||
return fmt.Errorf("reva transfer secret is not set up properly, bailing out (%s)", cfg.Service.Name)
|
||||
}
|
||||
|
||||
|
||||
@@ -71,7 +71,7 @@ type Config struct {
|
||||
Registry string `yaml:"registry"`
|
||||
TokenManager *shared.TokenManager `yaml:"token_manager"`
|
||||
MachineAuthAPIKey string `yaml:"machine_auth_api_key" env:"OCIS_MACHINE_AUTH_API_KEY"`
|
||||
TransferSecret string `yaml:"transfer_secret"`
|
||||
TransferSecret string `yaml:"transfer_secret" env:"STORAGE_TRANSFER_SECRET"`
|
||||
Runtime Runtime `yaml:"runtime"`
|
||||
|
||||
Audit *audit.Config `yaml:"audit"`
|
||||
|
||||
@@ -18,7 +18,7 @@ func ParseConfig(cfg *config.Config) error {
|
||||
return err
|
||||
}
|
||||
|
||||
EnsureDefaultsAndCommons(cfg)
|
||||
EnsureDefaults(cfg)
|
||||
|
||||
// load all env variables relevant to the config in the current context.
|
||||
if err := envdecode.Decode(cfg); err != nil {
|
||||
@@ -28,12 +28,27 @@ func ParseConfig(cfg *config.Config) error {
|
||||
}
|
||||
}
|
||||
|
||||
EnsureCommons(cfg)
|
||||
|
||||
return Validate(cfg)
|
||||
}
|
||||
|
||||
// EnsureDefaultsAndCommons copies applicable parts of the oCIS config into the commons part
|
||||
// and also ensure that all pointers in the oCIS config (not the extensions configs) are initialized
|
||||
func EnsureDefaultsAndCommons(cfg *config.Config) {
|
||||
// EnsureDefaults, ensures that all pointers in the
|
||||
// oCIS config (not the extensions configs) are initialized
|
||||
func EnsureDefaults(cfg *config.Config) {
|
||||
if cfg.Tracing == nil {
|
||||
cfg.Tracing = &shared.Tracing{}
|
||||
}
|
||||
if cfg.Log == nil {
|
||||
cfg.Log = &shared.Log{}
|
||||
}
|
||||
if cfg.TokenManager == nil {
|
||||
cfg.TokenManager = &shared.TokenManager{}
|
||||
}
|
||||
}
|
||||
|
||||
// EnsureCommons copies applicable parts of the oCIS config into the commons part
|
||||
func EnsureCommons(cfg *config.Config) {
|
||||
// ensure the commons part is initialized
|
||||
if cfg.Commons == nil {
|
||||
cfg.Commons = &shared.Commons{}
|
||||
@@ -49,7 +64,6 @@ func EnsureDefaultsAndCommons(cfg *config.Config) {
|
||||
}
|
||||
} else {
|
||||
cfg.Commons.Log = &shared.Log{}
|
||||
cfg.Log = &shared.Log{}
|
||||
}
|
||||
|
||||
// copy tracing to the commons part if set
|
||||
@@ -62,7 +76,6 @@ func EnsureDefaultsAndCommons(cfg *config.Config) {
|
||||
}
|
||||
} else {
|
||||
cfg.Commons.Tracing = &shared.Tracing{}
|
||||
cfg.Tracing = &shared.Tracing{}
|
||||
}
|
||||
|
||||
// copy token manager to the commons part if set
|
||||
@@ -70,7 +83,6 @@ func EnsureDefaultsAndCommons(cfg *config.Config) {
|
||||
cfg.Commons.TokenManager = cfg.TokenManager
|
||||
} else {
|
||||
cfg.Commons.TokenManager = &shared.TokenManager{}
|
||||
cfg.TokenManager = cfg.Commons.TokenManager
|
||||
}
|
||||
|
||||
// copy machine auth api key to the commons part if set
|
||||
|
||||
Reference in New Issue
Block a user