Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type CORS ¶
type CORS struct { AllowedOrigins []string `yaml:"allowed_origins"` AllowedMethods []string `yaml:"allowed_methods"` AllowedHeaders []string `yaml:"allowed_headers"` AllowCredentials bool `yaml:"allowed_credentials"` }
CORS defines the available cors configuration.
type Config ¶
type Config struct { Commons *shared.Commons `yaml:"-"` // don't use this directly as configuration for a service Service Service `yaml:"-"` Tracing *Tracing `yaml:"tracing"` Log *Log `yaml:"log"` Debug Debug `yaml:"debug"` HTTP HTTP `yaml:"http"` TokenManager *TokenManager `yaml:"token_manager"` Reva *Reva `yaml:"reva"` IdentityManagement IdentityManagement `yaml:"identity_management"` AccountBackend string `yaml:"account_backend" env:"OCS_ACCOUNT_BACKEND_TYPE"` StorageUsersDriver string `yaml:"storage_users_driver" env:"STORAGE_USERS_DRIVER;OCS_STORAGE_USERS_DRIVER"` MachineAuthAPIKey string `yaml:"machine_auth_api_key" env:"OCIS_MACHINE_AUTH_API_KEY;OCS_MACHINE_AUTH_API_KEY"` Context context.Context `yaml:"-"` }
Config combines all available configuration parts.
type Debug ¶
type Debug struct { Addr string `` /* 140-byte string literal not displayed */ Token string `yaml:"token" env:"OCS_DEBUG_TOKEN" desc:"Token to secure the metrics endpoint"` Pprof bool `yaml:"pprof" env:"OCS_DEBUG_PPROF" desc:"Enables pprof, which can be used for profiling"` Zpages bool `yaml:"zpages" env:"OCS_DEBUG_ZPAGES" desc:"Enables zpages, which can be used for collecting and viewing traces in-me"` }
Debug defines the available debug configuration.
type HTTP ¶
type HTTP struct { Addr string `yaml:"addr" env:"OCS_HTTP_ADDR"` Root string `yaml:"root" env:"OCS_HTTP_ROOT"` Namespace string `yaml:"-"` CORS CORS `yaml:"cors"` }
HTTP defines the available http configuration.
type IdentityManagement ¶
type IdentityManagement struct {
Address string `yaml:"address" env:"OCIS_URL;OCIS_OIDC_ISSUER;OCS_IDM_ADDRESS"`
}
IdentityManagement keeps track of the OIDC address. This is because Reva requisite of uniqueness for users is based in the combination of IDP hostname + UserID. For more information see: https://github.com/cs3org/reva/blob/4fd0229f13fae5bc9684556a82dbbd0eced65ef9/pkg/storage/utils/decomposedfs/node/node.go#L856-L865
type Log ¶
type Log struct { Level string `mapstructure:"level" env:"OCIS_LOG_LEVEL;OCS_LOG_LEVEL"` Pretty bool `mapstructure:"pretty" env:"OCIS_LOG_PRETTY;OCS_LOG_PRETTY"` Color bool `mapstructure:"color" env:"OCIS_LOG_COLOR;OCS_LOG_COLOR"` File string `mapstructure:"file" env:"OCIS_LOG_FILE;OCS_LOG_FILE"` }
Log defines the available log configuration.
type Reva ¶
type Reva struct {
Address string `yaml:"address" env:"REVA_GATEWAY"`
}
Reva defines all available REVA configuration.
type Service ¶
type Service struct {
Name string `yaml:"-"`
}
Service defines the available service configuration.
type TokenManager ¶
type TokenManager struct {
JWTSecret string `yaml:"jwt_secret" env:"OCIS_JWT_SECRET;OCS_JWT_SECRET"`
}
TokenManager is the config for using the reva token manager
type Tracing ¶
type Tracing struct { Enabled bool `yaml:"enabled" env:"OCIS_TRACING_ENABLED;OCS_TRACING_ENABLED"` Type string `yaml:"type" env:"OCIS_TRACING_TYPE;OCS_TRACING_TYPE"` Endpoint string `yaml:"endpoint" env:"OCIS_TRACING_ENDPOINT;OCS_TRACING_ENDPOINT"` Collector string `yaml:"collector" env:"OCIS_TRACING_COLLECTOR;OCS_TRACING_COLLECTOR"` }
Tracing defines the available tracing configuration.