chore: replace interface with any

This commit is contained in:
Florian Schade
2026-04-23 09:31:11 +02:00
committed by Ralf Haferkamp
parent 8f26149743
commit 288e67cc39
138 changed files with 933 additions and 934 deletions
@@ -82,7 +82,7 @@ func ListUploadSessions(cfg *config.Config) *cobra.Command {
}
}
fs, err := f(drivers[cfg.Driver].(map[string]interface{}), fsStream, nil)
fs, err := f(drivers[cfg.Driver].(map[string]any), fsStream, nil)
if err != nil {
fmt.Fprintf(os.Stderr, "Failed to initialize filesystem driver '%s'\n", cfg.Driver)
return err
+1 -1
View File
@@ -14,7 +14,7 @@ type PurgeTrashBin struct {
}
// Unmarshal to fulfill umarshaller interface
func (PurgeTrashBin) Unmarshal(v []byte) (interface{}, error) {
func (PurgeTrashBin) Unmarshal(v []byte) (any, error) {
e := PurgeTrashBin{}
err := json.Unmarshal(v, &e)
return e, err
+24 -24
View File
@@ -10,36 +10,36 @@ import (
)
// StorageUsersConfigFromStruct will adapt an OpenCloud config struct into a reva mapstructure to start a reva service.
func StorageUsersConfigFromStruct(cfg *config.Config) map[string]interface{} {
rcfg := map[string]interface{}{
"core": map[string]interface{}{
func StorageUsersConfigFromStruct(cfg *config.Config) map[string]any {
rcfg := map[string]any{
"core": map[string]any{
"graceful_shutdown_timeout": cfg.GracefulShutdownTimeout,
},
"shared": map[string]interface{}{
"shared": map[string]any{
"jwt_secret": cfg.TokenManager.JWTSecret,
"gatewaysvc": cfg.Reva.Address,
"skip_user_groups_in_token": cfg.SkipUserGroupsInToken,
"grpc_client_options": cfg.Reva.GetGRPCClientConfig(),
"multi_tenant_enabled": cfg.Commons.MultiTenantEnabled,
},
"grpc": map[string]interface{}{
"grpc": map[string]any{
"network": cfg.GRPC.Protocol,
"address": cfg.GRPC.Addr,
"tls_settings": map[string]interface{}{
"tls_settings": map[string]any{
"enabled": cfg.GRPC.TLS.Enabled,
"certificate": cfg.GRPC.TLS.Cert,
"key": cfg.GRPC.TLS.Key,
},
// TODO build services dynamically
"services": map[string]interface{}{
"storageprovider": map[string]interface{}{
"services": map[string]any{
"storageprovider": map[string]any{
"driver": cfg.Driver,
"drivers": StorageProviderDrivers(cfg),
"mount_id": cfg.MountID,
"expose_data_server": cfg.ExposeDataServer,
"data_server_url": cfg.DataServerURL,
"upload_expiration": cfg.UploadExpiration,
"events": map[string]interface{}{
"events": map[string]any{
"nats_address": cfg.Events.Addr,
"nats_clusterid": cfg.Events.ClusterID,
"tls_insecure": cfg.Events.TLSInsecure,
@@ -50,8 +50,8 @@ func StorageUsersConfigFromStruct(cfg *config.Config) map[string]interface{} {
},
},
},
"interceptors": map[string]interface{}{
"eventsmiddleware": map[string]interface{}{
"interceptors": map[string]any{
"eventsmiddleware": map[string]any{
"group": "sharing",
"type": "nats",
"address": cfg.Events.Addr,
@@ -63,21 +63,21 @@ func StorageUsersConfigFromStruct(cfg *config.Config) map[string]interface{} {
"username": cfg.Events.AuthUsername,
"password": cfg.Events.AuthPassword,
},
"prometheus": map[string]interface{}{
"prometheus": map[string]any{
"namespace": "opencloud",
"subsystem": "storage_users",
},
},
},
"http": map[string]interface{}{
"http": map[string]any{
"network": cfg.HTTP.Protocol,
"address": cfg.HTTP.Addr,
"middlewares": map[string]interface{}{
"requestid": map[string]interface{}{},
"middlewares": map[string]any{
"requestid": map[string]any{},
},
// TODO build services dynamically
"services": map[string]interface{}{
"dataprovider": map[string]interface{}{
"services": map[string]any{
"dataprovider": map[string]any{
"prefix": cfg.HTTP.Prefix,
"driver": cfg.Driver,
"drivers": DataProviderDrivers(cfg),
@@ -88,18 +88,18 @@ func StorageUsersConfigFromStruct(cfg *config.Config) map[string]interface{} {
"nats_enable_tls": cfg.Events.EnableTLS,
"nats_username": cfg.Events.AuthUsername,
"nats_password": cfg.Events.AuthPassword,
"data_txs": map[string]interface{}{
"simple": map[string]interface{}{
"data_txs": map[string]any{
"simple": map[string]any{
"cache_store": "noop",
"cache_database": "system",
"cache_table": "stat",
},
"spaces": map[string]interface{}{
"spaces": map[string]any{
"cache_store": "noop",
"cache_database": "system",
"cache_table": "stat",
},
"tus": map[string]interface{}{
"tus": map[string]any{
"cache_store": "noop",
"cache_database": "system",
"cache_table": "stat",
@@ -118,9 +118,9 @@ func StorageUsersConfigFromStruct(cfg *config.Config) map[string]interface{} {
},
}
if cfg.ReadOnly {
gcfg := rcfg["grpc"].(map[string]interface{})
gcfg["interceptors"] = map[string]interface{}{
"readonly": map[string]interface{}{},
gcfg := rcfg["grpc"].(map[string]any)
gcfg["interceptors"] = map[string]any{
"readonly": map[string]any{},
}
}
return rcfg
@@ -5,8 +5,8 @@ import (
)
// EOS is the config mapping for the EOS storage driver
func EOS(cfg *config.Config) map[string]interface{} {
return map[string]interface{}{
func EOS(cfg *config.Config) map[string]any {
return map[string]any{
"namespace": cfg.Drivers.EOS.Root,
"shadow_namespace": cfg.Drivers.EOS.ShadowNamespace,
"uploads_namespace": cfg.Drivers.EOS.UploadsNamespace,
@@ -28,8 +28,8 @@ func EOS(cfg *config.Config) map[string]interface{} {
}
// EOSHome is the config mapping for the EOSHome storage driver
func EOSHome(cfg *config.Config) map[string]interface{} {
return map[string]interface{}{
func EOSHome(cfg *config.Config) map[string]any {
return map[string]any{
"namespace": cfg.Drivers.EOS.Root,
"shadow_namespace": cfg.Drivers.EOS.ShadowNamespace,
"uploads_namespace": cfg.Drivers.EOS.UploadsNamespace,
@@ -52,8 +52,8 @@ func EOSHome(cfg *config.Config) map[string]interface{} {
}
// EOSGRPC is the config mapping for the EOSGRPC storage driver
func EOSGRPC(cfg *config.Config) map[string]interface{} {
return map[string]interface{}{
func EOSGRPC(cfg *config.Config) map[string]any {
return map[string]any{
"namespace": cfg.Drivers.EOS.Root,
"shadow_namespace": cfg.Drivers.EOS.ShadowNamespace,
"share_folder": cfg.Drivers.EOS.ShareFolder,
@@ -77,16 +77,16 @@ func EOSGRPC(cfg *config.Config) map[string]interface{} {
}
// Local is the config mapping for the Local storage driver
func Local(cfg *config.Config) map[string]interface{} {
return map[string]interface{}{
func Local(cfg *config.Config) map[string]any {
return map[string]any{
"root": cfg.Drivers.Local.Root,
"share_folder": cfg.Drivers.Local.ShareFolder,
}
}
// Posix is the config mapping for the Posix storage driver
func Posix(cfg *config.Config, enableFSScan, enableFSWatch bool) map[string]interface{} {
return map[string]interface{}{
func Posix(cfg *config.Config, enableFSScan, enableFSWatch bool) map[string]any {
return map[string]any{
"root": cfg.Drivers.Posix.Root,
"personalspacepath_template": cfg.Drivers.Posix.PersonalSpacePathTemplate,
"personalspacealias_template": cfg.Drivers.Posix.PersonalSpaceAliasTemplate,
@@ -102,13 +102,13 @@ func Posix(cfg *config.Config, enableFSScan, enableFSWatch bool) map[string]inte
"disable_versioning": cfg.Drivers.Posix.DisableVersioning,
"multi_tenant_enabled": cfg.Commons.MultiTenantEnabled,
"propagator": cfg.Drivers.Posix.Propagator,
"async_propagator_options": map[string]interface{}{
"async_propagator_options": map[string]any{
"propagation_delay": cfg.Drivers.Posix.AsyncPropagatorOptions.PropagationDelay,
},
"max_acquire_lock_cycles": cfg.Drivers.Posix.MaxAcquireLockCycles,
"lock_cycle_duration_factor": cfg.Drivers.Posix.LockCycleDurationFactor,
"max_concurrency": cfg.Drivers.Posix.MaxConcurrency,
"idcache": map[string]interface{}{
"idcache": map[string]any{
"cache_store": cfg.IDCache.Store,
"cache_nodes": cfg.IDCache.Nodes,
"cache_database": cfg.IDCache.Database,
@@ -116,7 +116,7 @@ func Posix(cfg *config.Config, enableFSScan, enableFSWatch bool) map[string]inte
"cache_auth_username": cfg.IDCache.AuthUsername,
"cache_auth_password": cfg.IDCache.AuthPassword,
},
"filemetadatacache": map[string]interface{}{
"filemetadatacache": map[string]any{
"cache_store": cfg.FilemetadataCache.Store,
"cache_nodes": cfg.FilemetadataCache.Nodes,
"cache_database": cfg.FilemetadataCache.Database,
@@ -125,10 +125,10 @@ func Posix(cfg *config.Config, enableFSScan, enableFSWatch bool) map[string]inte
"cache_auth_username": cfg.FilemetadataCache.AuthUsername,
"cache_auth_password": cfg.FilemetadataCache.AuthPassword,
},
"events": map[string]interface{}{
"events": map[string]any{
"numconsumers": cfg.Events.NumConsumers,
},
"tokens": map[string]interface{}{
"tokens": map[string]any{
"transfer_shared_secret": cfg.Commons.TransferSecret,
"transfer_expires": cfg.TransferExpires,
"download_endpoint": cfg.DataServerURL,
@@ -147,8 +147,8 @@ func Posix(cfg *config.Config, enableFSScan, enableFSWatch bool) map[string]inte
}
// LocalHome is the config mapping for the LocalHome storage driver
func LocalHome(cfg *config.Config) map[string]interface{} {
return map[string]interface{}{
func LocalHome(cfg *config.Config) map[string]any {
return map[string]any{
"root": cfg.Drivers.Local.Root,
"share_folder": cfg.Drivers.Local.ShareFolder,
"user_layout": cfg.Drivers.Local.UserLayout,
@@ -156,8 +156,8 @@ func LocalHome(cfg *config.Config) map[string]interface{} {
}
// OwnCloudSQL is the config mapping for the OwnCloudSQL storage driver
func OwnCloudSQL(cfg *config.Config) map[string]interface{} {
return map[string]interface{}{
func OwnCloudSQL(cfg *config.Config) map[string]any {
return map[string]any{
"datadirectory": cfg.Drivers.OwnCloudSQL.Root,
"upload_info_dir": cfg.Drivers.OwnCloudSQL.UploadInfoDir,
"share_folder": cfg.Drivers.OwnCloudSQL.ShareFolder,
@@ -169,7 +169,7 @@ func OwnCloudSQL(cfg *config.Config) map[string]interface{} {
"dbport": cfg.Drivers.OwnCloudSQL.DBPort,
"dbname": cfg.Drivers.OwnCloudSQL.DBName,
"userprovidersvc": cfg.Drivers.OwnCloudSQL.UsersProviderEndpoint,
"tokens": map[string]interface{}{
"tokens": map[string]any{
"download_endpoint": cfg.DataServerURL,
"datagateway_endpoint": cfg.DataGatewayURL,
"transfer_shared_secret": cfg.Commons.TransferSecret,
@@ -179,11 +179,11 @@ func OwnCloudSQL(cfg *config.Config) map[string]interface{} {
}
// Decomposed is the config mapping for the Decomposed storage driver
func Decomposed(cfg *config.Config) map[string]interface{} {
return map[string]interface{}{
func Decomposed(cfg *config.Config) map[string]any {
return map[string]any{
"metadata_backend": "messagepack",
"propagator": cfg.Drivers.Decomposed.Propagator,
"async_propagator_options": map[string]interface{}{
"async_propagator_options": map[string]any{
"propagation_delay": cfg.Drivers.Decomposed.AsyncPropagatorOptions.PropagationDelay,
},
"root": cfg.Drivers.Decomposed.Root,
@@ -204,7 +204,7 @@ func Decomposed(cfg *config.Config) map[string]interface{} {
"max_quota": cfg.Drivers.Decomposed.MaxQuota,
"disable_versioning": cfg.Drivers.Decomposed.DisableVersioning,
"multi_tenant_enabled": cfg.Commons.MultiTenantEnabled,
"filemetadatacache": map[string]interface{}{
"filemetadatacache": map[string]any{
"cache_store": cfg.FilemetadataCache.Store,
"cache_nodes": cfg.FilemetadataCache.Nodes,
"cache_database": cfg.FilemetadataCache.Database,
@@ -213,7 +213,7 @@ func Decomposed(cfg *config.Config) map[string]interface{} {
"cache_auth_username": cfg.FilemetadataCache.AuthUsername,
"cache_auth_password": cfg.FilemetadataCache.AuthPassword,
},
"idcache": map[string]interface{}{
"idcache": map[string]any{
"cache_store": cfg.IDCache.Store,
"cache_nodes": cfg.IDCache.Nodes,
"cache_database": cfg.IDCache.Database,
@@ -221,10 +221,10 @@ func Decomposed(cfg *config.Config) map[string]interface{} {
"cache_auth_username": cfg.IDCache.AuthUsername,
"cache_auth_password": cfg.IDCache.AuthPassword,
},
"events": map[string]interface{}{
"events": map[string]any{
"numconsumers": cfg.Events.NumConsumers,
},
"tokens": map[string]interface{}{
"tokens": map[string]any{
"transfer_shared_secret": cfg.Commons.TransferSecret,
"transfer_expires": cfg.TransferExpires,
"download_endpoint": cfg.DataServerURL,
@@ -234,11 +234,11 @@ func Decomposed(cfg *config.Config) map[string]interface{} {
}
// DecomposedsNoEvents is the config mapping for the Decomposed storage driver emitting no events
func DecomposedNoEvents(cfg *config.Config) map[string]interface{} {
return map[string]interface{}{
func DecomposedNoEvents(cfg *config.Config) map[string]any {
return map[string]any{
"metadata_backend": "messagepack",
"propagator": cfg.Drivers.Decomposed.Propagator,
"async_propagator_options": map[string]interface{}{
"async_propagator_options": map[string]any{
"propagation_delay": cfg.Drivers.Decomposed.AsyncPropagatorOptions.PropagationDelay,
},
"root": cfg.Drivers.Decomposed.Root,
@@ -258,7 +258,7 @@ func DecomposedNoEvents(cfg *config.Config) map[string]interface{} {
"max_quota": cfg.Drivers.Decomposed.MaxQuota,
"disable_versioning": cfg.Drivers.Decomposed.DisableVersioning,
"multi_tenant_enabled": cfg.Commons.MultiTenantEnabled,
"filemetadatacache": map[string]interface{}{
"filemetadatacache": map[string]any{
"cache_store": cfg.FilemetadataCache.Store,
"cache_nodes": cfg.FilemetadataCache.Nodes,
"cache_database": cfg.FilemetadataCache.Database,
@@ -267,7 +267,7 @@ func DecomposedNoEvents(cfg *config.Config) map[string]interface{} {
"cache_auth_username": cfg.FilemetadataCache.AuthUsername,
"cache_auth_password": cfg.FilemetadataCache.AuthPassword,
},
"idcache": map[string]interface{}{
"idcache": map[string]any{
"cache_store": cfg.IDCache.Store,
"cache_nodes": cfg.IDCache.Nodes,
"cache_database": cfg.IDCache.Database,
@@ -279,11 +279,11 @@ func DecomposedNoEvents(cfg *config.Config) map[string]interface{} {
}
// DecomposedS3 is the config mapping for the decomposeds3 storage driver
func DecomposedS3(cfg *config.Config) map[string]interface{} {
return map[string]interface{}{
func DecomposedS3(cfg *config.Config) map[string]any {
return map[string]any{
"metadata_backend": "messagepack",
"propagator": cfg.Drivers.DecomposedS3.Propagator,
"async_propagator_options": map[string]interface{}{
"async_propagator_options": map[string]any{
"propagation_delay": cfg.Drivers.DecomposedS3.AsyncPropagatorOptions.PropagationDelay,
},
"root": cfg.Drivers.DecomposedS3.Root,
@@ -314,7 +314,7 @@ func DecomposedS3(cfg *config.Config) map[string]interface{} {
"disable_versioning": cfg.Drivers.DecomposedS3.DisableVersioning,
"multi_tenant_enabled": cfg.Commons.MultiTenantEnabled,
"asyncfileuploads": cfg.Drivers.DecomposedS3.AsyncUploads,
"filemetadatacache": map[string]interface{}{
"filemetadatacache": map[string]any{
"cache_store": cfg.FilemetadataCache.Store,
"cache_nodes": cfg.FilemetadataCache.Nodes,
"cache_database": cfg.FilemetadataCache.Database,
@@ -323,7 +323,7 @@ func DecomposedS3(cfg *config.Config) map[string]interface{} {
"cache_auth_username": cfg.FilemetadataCache.AuthUsername,
"cache_auth_password": cfg.FilemetadataCache.AuthPassword,
},
"idcache": map[string]interface{}{
"idcache": map[string]any{
"cache_store": cfg.IDCache.Store,
"cache_nodes": cfg.IDCache.Nodes,
"cache_database": cfg.IDCache.Database,
@@ -331,10 +331,10 @@ func DecomposedS3(cfg *config.Config) map[string]interface{} {
"cache_auth_username": cfg.IDCache.AuthUsername,
"cache_auth_password": cfg.IDCache.AuthPassword,
},
"events": map[string]interface{}{
"events": map[string]any{
"numconsumers": cfg.Events.NumConsumers,
},
"tokens": map[string]interface{}{
"tokens": map[string]any{
"transfer_shared_secret": cfg.Commons.TransferSecret,
"transfer_expires": cfg.TransferExpires,
"download_endpoint": cfg.DataServerURL,
@@ -344,11 +344,11 @@ func DecomposedS3(cfg *config.Config) map[string]interface{} {
}
// DecomposedS3NoEvents is the config mapping for the decomposeds3 storage driver emitting no events
func DecomposedS3NoEvents(cfg *config.Config) map[string]interface{} {
return map[string]interface{}{
func DecomposedS3NoEvents(cfg *config.Config) map[string]any {
return map[string]any{
"metadata_backend": "messagepack",
"propagator": cfg.Drivers.DecomposedS3.Propagator,
"async_propagator_options": map[string]interface{}{
"async_propagator_options": map[string]any{
"propagation_delay": cfg.Drivers.DecomposedS3.AsyncPropagatorOptions.PropagationDelay,
},
"root": cfg.Drivers.DecomposedS3.Root,
@@ -372,7 +372,7 @@ func DecomposedS3NoEvents(cfg *config.Config) map[string]interface{} {
"disable_versioning": cfg.Drivers.DecomposedS3.DisableVersioning,
"multi_tenant_enabled": cfg.Commons.MultiTenantEnabled,
"lock_cycle_duration_factor": cfg.Drivers.DecomposedS3.LockCycleDurationFactor,
"filemetadatacache": map[string]interface{}{
"filemetadatacache": map[string]any{
"cache_store": cfg.FilemetadataCache.Store,
"cache_nodes": cfg.FilemetadataCache.Nodes,
"cache_database": cfg.FilemetadataCache.Database,
@@ -381,7 +381,7 @@ func DecomposedS3NoEvents(cfg *config.Config) map[string]interface{} {
"cache_auth_username": cfg.FilemetadataCache.AuthUsername,
"cache_auth_password": cfg.FilemetadataCache.AuthPassword,
},
"idcache": map[string]interface{}{
"idcache": map[string]any{
"cache_store": cfg.IDCache.Store,
"cache_nodes": cfg.IDCache.Nodes,
"cache_database": cfg.IDCache.Database,
@@ -5,8 +5,8 @@ import (
)
// StorageProviderDrivers are the drivers for the storage provider
func StorageProviderDrivers(cfg *config.Config) map[string]interface{} {
return map[string]interface{}{
func StorageProviderDrivers(cfg *config.Config) map[string]any {
return map[string]any{
"eos": EOS(cfg),
"eoshome": EOSHome(cfg),
"eosgrpc": EOSGRPC(cfg),
@@ -24,8 +24,8 @@ func StorageProviderDrivers(cfg *config.Config) map[string]interface{} {
}
// DataProviderDrivers are the drivers for the storage provider
func DataProviderDrivers(cfg *config.Config) map[string]interface{} {
return map[string]interface{}{
func DataProviderDrivers(cfg *config.Config) map[string]any {
return map[string]any{
"eos": EOS(cfg),
"eoshome": EOSHome(cfg),
"eosgrpc": EOSGRPC(cfg),