From d8ade4a917a91fc971e634fba565acd8addc720c Mon Sep 17 00:00:00 2001 From: Ishank Arora Date: Thu, 11 Feb 2021 14:39:06 +0100 Subject: [PATCH 1/6] storage: add group provider service and sharing SQL driver --- ocis/pkg/command/storagegroupprovider.go | 45 +++++ ocis/pkg/runtime/runtime.go | 1 + storage/pkg/command/gateway.go | 2 + storage/pkg/command/groups.go | 206 +++++++++++++++++++++++ storage/pkg/command/root.go | 1 + storage/pkg/command/sharing.go | 7 + storage/pkg/command/users.go | 26 +-- storage/pkg/config/config.go | 82 +++++---- storage/pkg/flagset/gateway.go | 7 + storage/pkg/flagset/groups.go | 148 ++++++++++++++++ storage/pkg/flagset/ldap.go | 59 ++++++- storage/pkg/flagset/sharing.go | 35 ++++ storage/pkg/flagset/users.go | 36 ++-- 13 files changed, 585 insertions(+), 70 deletions(-) create mode 100644 ocis/pkg/command/storagegroupprovider.go create mode 100644 storage/pkg/command/groups.go create mode 100644 storage/pkg/flagset/groups.go diff --git a/ocis/pkg/command/storagegroupprovider.go b/ocis/pkg/command/storagegroupprovider.go new file mode 100644 index 00000000000..d4343fcc551 --- /dev/null +++ b/ocis/pkg/command/storagegroupprovider.go @@ -0,0 +1,45 @@ +// +build !simple + +package command + +import ( + "github.com/micro/cli/v2" + "github.com/owncloud/ocis/ocis/pkg/config" + "github.com/owncloud/ocis/ocis/pkg/register" + "github.com/owncloud/ocis/storage/pkg/command" + svcconfig "github.com/owncloud/ocis/storage/pkg/config" + "github.com/owncloud/ocis/storage/pkg/flagset" +) + +// StorageGroupProviderCommand is the entrypoint for the storage-groupprovider command. +func StorageGroupProviderCommand(cfg *config.Config) *cli.Command { + return &cli.Command{ + Name: "storage-groupprovider", + Usage: "Start storage groupprovider service", + Category: "Extensions", + Flags: flagset.GroupsWithConfig(cfg.Storage), + Action: func(c *cli.Context) error { + origCmd := command.Groups(configureStorageGroupProvider(cfg)) + return handleOriginalAction(c, origCmd) + }, + } +} + +func configureStorageGroupProvider(cfg *config.Config) *svcconfig.Config { + cfg.Storage.Log.Level = cfg.Log.Level + cfg.Storage.Log.Pretty = cfg.Log.Pretty + cfg.Storage.Log.Color = cfg.Log.Color + + if cfg.Tracing.Enabled { + cfg.Storage.Tracing.Enabled = cfg.Tracing.Enabled + cfg.Storage.Tracing.Type = cfg.Tracing.Type + cfg.Storage.Tracing.Endpoint = cfg.Tracing.Endpoint + cfg.Storage.Tracing.Collector = cfg.Tracing.Collector + } + + return cfg.Storage +} + +func init() { + register.AddCommand(StorageGroupProviderCommand) +} diff --git a/ocis/pkg/runtime/runtime.go b/ocis/pkg/runtime/runtime.go index 29d176e584e..f4661cf77cf 100644 --- a/ocis/pkg/runtime/runtime.go +++ b/ocis/pkg/runtime/runtime.go @@ -42,6 +42,7 @@ var ( "storage-frontend", "storage-gateway", "storage-userprovider", + "storage-groupprovider", "storage-auth-basic", "storage-auth-bearer", "storage-home", diff --git a/storage/pkg/command/gateway.go b/storage/pkg/command/gateway.go index 0314d9df92e..d04966efaa8 100644 --- a/storage/pkg/command/gateway.go +++ b/storage/pkg/command/gateway.go @@ -103,6 +103,7 @@ func Gateway(cfg *config.Config) *cli.Command { // user metadata is located on the users services "preferencessvc": cfg.Reva.Users.Endpoint, "userprovidersvc": cfg.Reva.Users.Endpoint, + "groupprovidersvc": cfg.Reva.Groups.Endpoint, // sharing is located on the sharing service "usershareprovidersvc": cfg.Reva.Sharing.Endpoint, "publicshareprovidersvc": cfg.Reva.Sharing.Endpoint, @@ -116,6 +117,7 @@ func Gateway(cfg *config.Config) *cli.Command { "transfer_shared_secret": cfg.Reva.TransferSecret, "transfer_expires": cfg.Reva.TransferExpires, "home_mapping": cfg.Reva.Gateway.HomeMapping, + "etag_cache_ttl": cfg.Reva.Gateway.EtagCacheTTL, }, "authregistry": map[string]interface{}{ "driver": "static", diff --git a/storage/pkg/command/groups.go b/storage/pkg/command/groups.go new file mode 100644 index 00000000000..3c30bc3dac9 --- /dev/null +++ b/storage/pkg/command/groups.go @@ -0,0 +1,206 @@ +package command + +import ( + "context" + "os" + "os/signal" + "path" + "time" + + "github.com/cs3org/reva/cmd/revad/runtime" + "github.com/gofrs/uuid" + "github.com/micro/cli/v2" + "github.com/oklog/run" + "github.com/owncloud/ocis/storage/pkg/config" + "github.com/owncloud/ocis/storage/pkg/flagset" + "github.com/owncloud/ocis/storage/pkg/server/debug" +) + +// Groups is the entrypoint for the sharing command. +func Groups(cfg *config.Config) *cli.Command { + return &cli.Command{ + Name: "groups", + Usage: "Start groups service", + Flags: flagset.GroupsWithConfig(cfg), + Before: func(c *cli.Context) error { + cfg.Reva.Groups.Services = c.StringSlice("service") + + return nil + }, + Action: func(c *cli.Context) error { + logger := NewLogger(cfg) + + if cfg.Tracing.Enabled { + switch t := cfg.Tracing.Type; t { + case "agent": + logger.Error(). + Str("type", t). + Msg("Reva only supports the jaeger tracing backend") + + case "jaeger": + logger.Info(). + Str("type", t). + Msg("configuring storage to use the jaeger tracing backend") + + case "zipkin": + logger.Error(). + Str("type", t). + Msg("Reva only supports the jaeger tracing backend") + + default: + logger.Warn(). + Str("type", t). + Msg("Unknown tracing backend") + } + + } else { + logger.Debug(). + Msg("Tracing is not enabled") + } + + var ( + gr = run.Group{} + ctx, cancel = context.WithCancel(context.Background()) + //metrics = metrics.New() + ) + + defer cancel() + + { + uuid := uuid.Must(uuid.NewV4()) + pidFile := path.Join(os.TempDir(), "revad-"+c.Command.Name+"-"+uuid.String()+".pid") + + rcfg := map[string]interface{}{ + "core": map[string]interface{}{ + "max_cpus": cfg.Reva.Groups.MaxCPUs, + "tracing_enabled": cfg.Tracing.Enabled, + "tracing_endpoint": cfg.Tracing.Endpoint, + "tracing_collector": cfg.Tracing.Collector, + "tracing_service_name": c.Command.Name, + }, + "shared": map[string]interface{}{ + "jwt_secret": cfg.Reva.JWTSecret, + }, + "grpc": map[string]interface{}{ + "network": cfg.Reva.Groups.GRPCNetwork, + "address": cfg.Reva.Groups.GRPCAddr, + // TODO build services dynamically + "services": map[string]interface{}{ + "groupprovider": map[string]interface{}{ + "driver": cfg.Reva.Groups.Driver, + "drivers": map[string]interface{}{ + "json": map[string]interface{}{ + "groups": cfg.Reva.Groups.JSON, + }, + "ldap": map[string]interface{}{ + "hostname": cfg.Reva.LDAP.Hostname, + "port": cfg.Reva.LDAP.Port, + "base_dn": cfg.Reva.LDAP.BaseDN, + "groupfilter": cfg.Reva.LDAP.GroupFilter, + "attributefilter": cfg.Reva.LDAP.GroupAttributeFilter, + "findfilter": cfg.Reva.LDAP.GroupFindFilter, + "memberfilter": cfg.Reva.LDAP.GroupMemberFilter, + "bind_username": cfg.Reva.LDAP.BindDN, + "bind_password": cfg.Reva.LDAP.BindPassword, + "idp": cfg.Reva.LDAP.IDP, + "schema": map[string]interface{}{ + "dn": "dn", + "gid": cfg.Reva.LDAP.Schema.GID, + "mail": cfg.Reva.LDAP.Schema.Mail, + "displayName": cfg.Reva.LDAP.Schema.DisplayName, + "cn": cfg.Reva.LDAP.Schema.CN, + "gidNumber": cfg.Reva.LDAP.Schema.GIDNumber, + }, + }, + "rest": map[string]interface{}{ + "client_id": cfg.Reva.UserGroupRest.ClientID, + "client_secret": cfg.Reva.UserGroupRest.ClientSecret, + "redis_address": cfg.Reva.UserGroupRest.RedisAddress, + "redis_username": cfg.Reva.UserGroupRest.RedisUsername, + "redis_password": cfg.Reva.UserGroupRest.RedisPassword, + "group_members_cache_expiration": cfg.Reva.Groups.GroupMembersCacheExpiration, + "id_provider": cfg.Reva.UserGroupRest.IDProvider, + "api_base_url": cfg.Reva.UserGroupRest.APIBaseURL, + "oidc_token_endpoint": cfg.Reva.UserGroupRest.OIDCTokenEndpoint, + "target_api": cfg.Reva.UserGroupRest.TargetAPI, + }, + }, + }, + }, + }, + } + + gr.Add(func() error { + runtime.RunWithOptions( + rcfg, + pidFile, + runtime.WithLogger(&logger.Logger), + ) + return nil + }, func(_ error) { + logger.Info(). + Str("server", c.Command.Name). + Msg("Shutting down server") + + cancel() + }) + } + + { + server, err := debug.Server( + debug.Name(c.Command.Name+"-debug"), + debug.Addr(cfg.Reva.Users.DebugAddr), + debug.Logger(logger), + debug.Context(ctx), + debug.Config(cfg), + ) + + if err != nil { + logger.Info(). + Err(err). + Str("server", c.Command.Name+"-debug"). + Msg("Failed to initialize server") + + return err + } + + gr.Add(func() error { + return server.ListenAndServe() + }, func(_ error) { + ctx, timeout := context.WithTimeout(ctx, 5*time.Second) + + defer timeout() + defer cancel() + + if err := server.Shutdown(ctx); err != nil { + logger.Info(). + Err(err). + Str("server", c.Command.Name+"-debug"). + Msg("Failed to shutdown server") + } else { + logger.Info(). + Str("server", c.Command.Name+"-debug"). + Msg("Shutting down server") + } + }) + } + + { + stop := make(chan os.Signal, 1) + + gr.Add(func() error { + signal.Notify(stop, os.Interrupt) + + <-stop + + return nil + }, func(err error) { + close(stop) + cancel() + }) + } + + return gr.Run() + }, + } +} diff --git a/storage/pkg/command/root.go b/storage/pkg/command/root.go index 1278af1f3fb..573e64e40f6 100644 --- a/storage/pkg/command/root.go +++ b/storage/pkg/command/root.go @@ -77,6 +77,7 @@ func Execute() error { Frontend(cfg), Gateway(cfg), Users(cfg), + Groups(cfg), AuthBasic(cfg), AuthBearer(cfg), Sharing(cfg), diff --git a/storage/pkg/command/sharing.go b/storage/pkg/command/sharing.go index b8daaf1070c..e53a1baa541 100644 --- a/storage/pkg/command/sharing.go +++ b/storage/pkg/command/sharing.go @@ -93,6 +93,13 @@ func Sharing(cfg *config.Config) *cli.Command { "json": map[string]interface{}{ "file": cfg.Reva.Sharing.UserJSONFile, }, + "sql": map[string]interface{}{ + "db_username": cfg.Reva.Sharing.UserSQLUsername, + "db_password": cfg.Reva.Sharing.UserSQLPassword, + "db_host": cfg.Reva.Sharing.UserSQLHost, + "db_port": cfg.Reva.Sharing.UserSQLPort, + "db_name": cfg.Reva.Sharing.UserSQLName, + }, }, }, "publicshareprovider": map[string]interface{}{ diff --git a/storage/pkg/command/users.go b/storage/pkg/command/users.go index d81c85d0cbd..f41ae8e4e08 100644 --- a/storage/pkg/command/users.go +++ b/storage/pkg/command/users.go @@ -97,9 +97,9 @@ func Users(cfg *config.Config) *cli.Command { "port": cfg.Reva.LDAP.Port, "base_dn": cfg.Reva.LDAP.BaseDN, "userfilter": cfg.Reva.LDAP.UserFilter, - "attributefilter": cfg.Reva.LDAP.AttributeFilter, - "findfilter": cfg.Reva.LDAP.FindFilter, - "groupfilter": cfg.Reva.LDAP.GroupFilter, + "attributefilter": cfg.Reva.LDAP.UserAttributeFilter, + "findfilter": cfg.Reva.LDAP.UserFindFilter, + "groupfilter": cfg.Reva.LDAP.UserGroupFilter, "bind_username": cfg.Reva.LDAP.BindDN, "bind_password": cfg.Reva.LDAP.BindPassword, "idp": cfg.Reva.LDAP.IDP, @@ -114,16 +114,16 @@ func Users(cfg *config.Config) *cli.Command { }, }, "rest": map[string]interface{}{ - "client_id": cfg.Reva.UserRest.ClientID, - "client_secret": cfg.Reva.UserRest.ClientSecret, - "redis_address": cfg.Reva.UserRest.RedisAddress, - "redis_username": cfg.Reva.UserRest.RedisUsername, - "redis_password": cfg.Reva.UserRest.RedisPassword, - "user_groups_cache_expiration": cfg.Reva.UserRest.UserGroupsCacheExpiration, - "id_provider": cfg.Reva.UserRest.IDProvider, - "api_base_url": cfg.Reva.UserRest.APIBaseURL, - "oidc_token_endpoint": cfg.Reva.UserRest.OIDCTokenEndpoint, - "target_api": cfg.Reva.UserRest.TargetAPI, + "client_id": cfg.Reva.UserGroupRest.ClientID, + "client_secret": cfg.Reva.UserGroupRest.ClientSecret, + "redis_address": cfg.Reva.UserGroupRest.RedisAddress, + "redis_username": cfg.Reva.UserGroupRest.RedisUsername, + "redis_password": cfg.Reva.UserGroupRest.RedisPassword, + "user_groups_cache_expiration": cfg.Reva.Users.UserGroupsCacheExpiration, + "id_provider": cfg.Reva.UserGroupRest.IDProvider, + "api_base_url": cfg.Reva.UserGroupRest.APIBaseURL, + "oidc_token_endpoint": cfg.Reva.UserGroupRest.OIDCTokenEndpoint, + "target_api": cfg.Reva.UserGroupRest.TargetAPI, }, }, }, diff --git a/storage/pkg/config/config.go b/storage/pkg/config/config.go index 4c069a80c8a..edc17e0acab 100644 --- a/storage/pkg/config/config.go +++ b/storage/pkg/config/config.go @@ -24,6 +24,7 @@ type Gateway struct { ShareFolder string LinkGrants string HomeMapping string + EtagCacheTTL int } // StorageRegistry defines the available storage registry configuration @@ -37,10 +38,15 @@ type StorageRegistry struct { // Sharing defines the available sharing configuration. type Sharing struct { Port - UserDriver string - UserJSONFile string - PublicDriver string - PublicJSONFile string + UserDriver string + UserJSONFile string + UserSQLUsername string + UserSQLPassword string + UserSQLHost string + UserSQLPort int + UserSQLName string + PublicDriver string + PublicJSONFile string } // Port defines the available port configuration. @@ -73,8 +79,17 @@ type Port struct { // Users defines the available users configuration. type Users struct { Port - Driver string - JSON string + Driver string + JSON string + UserGroupsCacheExpiration int +} + +// Groups defines the available groups configuration. +type Groups struct { + Port + Driver string + JSON string + GroupMembersCacheExpiration int } // FrontendPort defines the available frontend configuration. @@ -244,37 +259,41 @@ type OIDC struct { // LDAP defines the available ldap configuration. type LDAP struct { - Hostname string - Port int - BaseDN string - LoginFilter string - UserFilter string - AttributeFilter string - FindFilter string - GroupFilter string - BindDN string - BindPassword string - IDP string - Schema LDAPSchema + Hostname string + Port int + BaseDN string + LoginFilter string + UserFilter string + UserAttributeFilter string + UserFindFilter string + UserGroupFilter string + GroupFilter string + GroupAttributeFilter string + GroupFindFilter string + GroupMemberFilter string + BindDN string + BindPassword string + IDP string + Schema LDAPSchema } -// UserRest defines the user REST driver specification. -type UserRest struct { - ClientID string - ClientSecret string - RedisAddress string - RedisUsername string - RedisPassword string - IDProvider string - APIBaseURL string - OIDCTokenEndpoint string - TargetAPI string - UserGroupsCacheExpiration int +// UserGroupRest defines the REST driver specification for user and group resolution. +type UserGroupRest struct { + ClientID string + ClientSecret string + RedisAddress string + RedisUsername string + RedisPassword string + IDProvider string + APIBaseURL string + OIDCTokenEndpoint string + TargetAPI string } // LDAPSchema defines the available ldap schema configuration. type LDAPSchema struct { UID string + GID string Mail string DisplayName string CN string @@ -296,7 +315,7 @@ type Reva struct { TransferExpires int OIDC OIDC LDAP LDAP - UserRest UserRest + UserGroupRest UserGroupRest OCDav OCDav Storages StorageConfig // Ports are used to configure which services to start on which port @@ -305,6 +324,7 @@ type Reva struct { Gateway Gateway StorageRegistry StorageRegistry Users Users + Groups Groups AuthProvider Users AuthBasic Port AuthBearer Port diff --git a/storage/pkg/flagset/gateway.go b/storage/pkg/flagset/gateway.go index cc7a546e176..c10ed7eabcd 100644 --- a/storage/pkg/flagset/gateway.go +++ b/storage/pkg/flagset/gateway.go @@ -104,6 +104,13 @@ func GatewayWithConfig(cfg *config.Config) []cli.Flag { EnvVars: []string{"STORAGE_GATEWAY_HOME_MAPPING"}, Destination: &cfg.Reva.Gateway.HomeMapping, }, + &cli.IntFlag{ + Name: "etag-cache-ttl", + Value: 0, + Usage: "TTL for the home and shares directory etags cache", + EnvVars: []string{"STORAGE_GATEWAY_ETAG_CACHE_TTL"}, + Destination: &cfg.Reva.Gateway.EtagCacheTTL, + }, // other services diff --git a/storage/pkg/flagset/groups.go b/storage/pkg/flagset/groups.go new file mode 100644 index 00000000000..c3f4e3f4168 --- /dev/null +++ b/storage/pkg/flagset/groups.go @@ -0,0 +1,148 @@ +package flagset + +import ( + "github.com/micro/cli/v2" + "github.com/owncloud/ocis/storage/pkg/config" +) + +// GroupsWithConfig applies cfg to the root flagset +func GroupsWithConfig(cfg *config.Config) []cli.Flag { + flags := []cli.Flag{ + + // debug ports are the odd ports + &cli.StringFlag{ + Name: "debug-addr", + Value: "0.0.0.0:9161", + Usage: "Address to bind debug server", + EnvVars: []string{"STORAGE_GROUPPROVIDER_DEBUG_ADDR"}, + Destination: &cfg.Reva.Groups.DebugAddr, + }, + + // Services + + // Groupprovider + + &cli.StringFlag{ + Name: "network", + Value: "tcp", + Usage: "Network to use for the storage service, can be 'tcp', 'udp' or 'unix'", + EnvVars: []string{"STORAGE_GROUPPROVIDER_NETWORK"}, + Destination: &cfg.Reva.Groups.GRPCNetwork, + }, + &cli.StringFlag{ + Name: "addr", + Value: "0.0.0.0:9160", + Usage: "Address to bind storage service", + EnvVars: []string{"STORAGE_GROUPPROVIDER_ADDR"}, + Destination: &cfg.Reva.Groups.GRPCAddr, + }, + &cli.StringFlag{ + Name: "endpoint", + Value: "localhost:9160", + Usage: "URL to use for the storage service", + EnvVars: []string{"STORAGE_GROUPPROVIDER_ENDPOINT"}, + Destination: &cfg.Reva.Groups.Endpoint, + }, + &cli.StringSliceFlag{ + Name: "service", + Value: cli.NewStringSlice("groupprovider"), // TODO preferences + Usage: "--service groupprovider [--service otherservice]", + EnvVars: []string{"STORAGE_GROUPPROVIDER_SERVICES"}, + }, + + &cli.StringFlag{ + Name: "driver", + Value: "ldap", + Usage: "group driver: 'json', 'ldap', or 'rest'", + EnvVars: []string{"STORAGE_GROUPPROVIDER_DRIVER"}, + Destination: &cfg.Reva.Groups.Driver, + }, + &cli.StringFlag{ + Name: "json-config", + Value: "", + Usage: "Path to groups.json file", + EnvVars: []string{"STORAGE_GROUPPROVIDER_JSON"}, + Destination: &cfg.Reva.Groups.JSON, + }, + &cli.IntFlag{ + Name: "group-members-cache-expiration", + Value: 5, + Usage: "Time in minutes for redis cache expiration.", + EnvVars: []string{"STORAGE_GROUP_CACHE_EXPIRATION"}, + Destination: &cfg.Reva.Groups.GroupMembersCacheExpiration, + }, + + // rest driver + + &cli.StringFlag{ + Name: "rest-client-id", + Value: "", + Usage: "User/group rest driver Client ID", + EnvVars: []string{"STORAGE_REST_CLIENT_ID"}, + Destination: &cfg.Reva.UserGroupRest.ClientID, + }, + &cli.StringFlag{ + Name: "rest-client-secret", + Value: "", + Usage: "User/group rest driver Client Secret", + EnvVars: []string{"STORAGE_REST_CLIENT_SECRET"}, + Destination: &cfg.Reva.UserGroupRest.ClientSecret, + }, + &cli.StringFlag{ + Name: "rest-redis-address", + Value: "localhost:6379", + Usage: "Address for redis server", + EnvVars: []string{"STORAGE_REST_REDIS_ADDRESS"}, + Destination: &cfg.Reva.UserGroupRest.RedisAddress, + }, + &cli.StringFlag{ + Name: "rest-redis-username", + Value: "", + Usage: "Username for redis server", + EnvVars: []string{"STORAGE_REST_REDIS_USERNAME"}, + Destination: &cfg.Reva.UserGroupRest.RedisUsername, + }, + &cli.StringFlag{ + Name: "rest-redis-password", + Value: "", + Usage: "Password for redis server", + EnvVars: []string{"STORAGE_REST_REDIS_PASSWORD"}, + Destination: &cfg.Reva.UserGroupRest.RedisPassword, + }, + &cli.StringFlag{ + Name: "rest-id-provider", + Value: "", + Usage: "The OIDC Provider", + EnvVars: []string{"STORAGE_REST_ID_PROVIDER"}, + Destination: &cfg.Reva.UserGroupRest.IDProvider, + }, + &cli.StringFlag{ + Name: "rest-api-base-url", + Value: "", + Usage: "Base API Endpoint", + EnvVars: []string{"STORAGE_REST_API_BASE_URL"}, + Destination: &cfg.Reva.UserGroupRest.APIBaseURL, + }, + &cli.StringFlag{ + Name: "rest-oidc-token-endpoint", + Value: "", + Usage: "Endpoint to generate token to access the API", + EnvVars: []string{"STORAGE_REST_OIDC_TOKEN_ENDPOINT"}, + Destination: &cfg.Reva.UserGroupRest.OIDCTokenEndpoint, + }, + &cli.StringFlag{ + Name: "rest-target-api", + Value: "", + Usage: "The target application", + EnvVars: []string{"STORAGE_REST_TARGET_API"}, + Destination: &cfg.Reva.UserGroupRest.TargetAPI, + }, + } + + flags = append(flags, TracingWithConfig(cfg)...) + flags = append(flags, DebugWithConfig(cfg)...) + flags = append(flags, SecretWithConfig(cfg)...) + flags = append(flags, LDAPWithConfig(cfg)...) + + return flags +} diff --git a/storage/pkg/flagset/ldap.go b/storage/pkg/flagset/ldap.go index 078a0f5873e..a7059aeebc0 100644 --- a/storage/pkg/flagset/ldap.go +++ b/storage/pkg/flagset/ldap.go @@ -36,6 +36,9 @@ func LDAPWithConfig(cfg *config.Config) []cli.Flag { EnvVars: []string{"STORAGE_LDAP_LOGINFILTER"}, Destination: &cfg.Reva.LDAP.LoginFilter, }, + + // User specific filters + &cli.StringFlag{ Name: "ldap-userfilter", Value: "(&(objectclass=posixAccount)(|(ownclouduuid={{.OpaqueId}})(cn={{.OpaqueId}})))", @@ -44,28 +47,61 @@ func LDAPWithConfig(cfg *config.Config) []cli.Flag { Destination: &cfg.Reva.LDAP.UserFilter, }, &cli.StringFlag{ - Name: "ldap-attributefilter", + Name: "ldap-userattributefilter", Value: "(&(objectclass=posixAccount)({{attr}}={{value}}))", Usage: "LDAP filter used when searching for a user by claim/attribute. {{attr}} will be replaced with the attribute, {{value}} with the value.", - EnvVars: []string{"STORAGE_LDAP_ATTRIBUTEFILTER"}, - Destination: &cfg.Reva.LDAP.AttributeFilter, + EnvVars: []string{"STORAGE_LDAP_USERATTRIBUTEFILTER"}, + Destination: &cfg.Reva.LDAP.UserAttributeFilter, }, &cli.StringFlag{ - Name: "ldap-findfilter", + Name: "ldap-userfindfilter", Value: "(&(objectclass=posixAccount)(|(cn={{query}}*)(displayname={{query}}*)(mail={{query}}*)))", - Usage: "LDAP filter used when searching for recipients. {{query}} will be replaced with the search query", - EnvVars: []string{"STORAGE_LDAP_FINDFILTER"}, - Destination: &cfg.Reva.LDAP.FindFilter, + Usage: "LDAP filter used when searching for user recipients. {{query}} will be replaced with the search query", + EnvVars: []string{"STORAGE_LDAP_USERFINDFILTER"}, + Destination: &cfg.Reva.LDAP.UserFindFilter, }, &cli.StringFlag{ - Name: "ldap-groupfilter", + Name: "ldap-usergroupfilter", // FIXME the storage implementation needs to use the memberof overlay to get the cn when it only has the uuid, // because the ldap schema either uses the dn or the member(of) attributes to establish membership Value: "(&(objectclass=posixGroup)(ownclouduuid={{.OpaqueId}}*))", // This filter will never work Usage: "LDAP filter used when getting the groups of a user. The CS3 userid properties {{.OpaqueId}} and {{.Idp}} are available.", + EnvVars: []string{"STORAGE_LDAP_USERGROUPFILTER"}, + Destination: &cfg.Reva.LDAP.UserGroupFilter, + }, + + // Group specific filters + // These might not work at the moment. Need to be fixed + + &cli.StringFlag{ + Name: "ldap-groupfilter", + Value: "(&(objectclass=posixGroup)(|(ownclouduuid={{.OpaqueId}})(cn={{.OpaqueId}})))", + Usage: "LDAP filter used when getting a group. The CS3 groupid properties {{.OpaqueId}} and {{.Idp}} are available.", EnvVars: []string{"STORAGE_LDAP_GROUPFILTER"}, Destination: &cfg.Reva.LDAP.GroupFilter, }, + &cli.StringFlag{ + Name: "ldap-groupattributefilter", + Value: "(&(objectclass=posixGroup)({{attr}}={{value}}))", + Usage: "LDAP filter used when searching for a group by claim/attribute. {{attr}} will be replaced with the attribute, {{value}} with the value.", + EnvVars: []string{"STORAGE_LDAP_GROUPATTRIBUTEFILTER"}, + Destination: &cfg.Reva.LDAP.GroupAttributeFilter, + }, + &cli.StringFlag{ + Name: "ldap-groupfindfilter", + Value: "(&(objectclass=posixGroup)(|(cn={{query}}*)(displayname={{query}}*)(mail={{query}}*)))", + Usage: "LDAP filter used when searching for group recipients. {{query}} will be replaced with the search query", + EnvVars: []string{"STORAGE_LDAP_GROUPFINDFILTER"}, + Destination: &cfg.Reva.LDAP.GroupFindFilter, + }, + &cli.StringFlag{ + Name: "ldap-groupmemberfilter", + // FIXME the storage implementation needs to use the members overlay to get the cn when it only has the uuid + Value: "(&(objectclass=posixAccount)(ownclouduuid={{.OpaqueId}}*))", // This filter will never work + Usage: "LDAP filter used when getting the members of a group. The CS3 groupid properties {{.OpaqueId}} and {{.Idp}} are available.", + EnvVars: []string{"STORAGE_LDAP_GROUPMEMBERFILTER"}, + Destination: &cfg.Reva.LDAP.GroupMemberFilter, + }, &cli.StringFlag{ Name: "ldap-bind-dn", Value: "cn=reva,ou=sysusers,dc=example,dc=org", @@ -95,6 +131,13 @@ func LDAPWithConfig(cfg *config.Config) []cli.Flag { EnvVars: []string{"STORAGE_LDAP_SCHEMA_UID"}, Destination: &cfg.Reva.LDAP.Schema.UID, }, + &cli.StringFlag{ + Name: "ldap-schema-gid", + Value: "ownclouduuid", + Usage: "LDAP schema gid", + EnvVars: []string{"STORAGE_LDAP_SCHEMA_GID"}, + Destination: &cfg.Reva.LDAP.Schema.GID, + }, &cli.StringFlag{ Name: "ldap-schema-mail", Value: "mail", diff --git a/storage/pkg/flagset/sharing.go b/storage/pkg/flagset/sharing.go index fac4fc0cc39..f77fea73448 100644 --- a/storage/pkg/flagset/sharing.go +++ b/storage/pkg/flagset/sharing.go @@ -56,6 +56,41 @@ func SharingWithConfig(cfg *config.Config) []cli.Flag { EnvVars: []string{"STORAGE_SHARING_USER_JSON_FILE"}, Destination: &cfg.Reva.Sharing.UserJSONFile, }, + &cli.StringFlag{ + Name: "user-sql-username", + Value: "", + Usage: "Username to be used to connect to the SQL database", + EnvVars: []string{"STORAGE_SHARING_USER_SQL_USERNAME"}, + Destination: &cfg.Reva.Sharing.UserSQLUsername, + }, + &cli.StringFlag{ + Name: "user-sql-password", + Value: "", + Usage: "Password to be used to connect to the SQL database", + EnvVars: []string{"STORAGE_SHARING_USER_SQL_PASSWORD"}, + Destination: &cfg.Reva.Sharing.UserSQLPassword, + }, + &cli.StringFlag{ + Name: "user-sql-host", + Value: "", + Usage: "Hostname of the SQL database", + EnvVars: []string{"STORAGE_SHARING_USER_SQL_HOST"}, + Destination: &cfg.Reva.Sharing.UserSQLHost, + }, + &cli.IntFlag{ + Name: "user-sql-port", + Value: 1433, + Usage: "The port on which the SQL database is exposed", + EnvVars: []string{"STORAGE_SHARING_USER_SQL_PORT"}, + Destination: &cfg.Reva.Sharing.UserSQLPort, + }, + &cli.StringFlag{ + Name: "user-sql-name", + Value: "", + Usage: "Name of the SQL database", + EnvVars: []string{"STORAGE_SHARING_USER_SQL_Name"}, + Destination: &cfg.Reva.Sharing.UserSQLName, + }, &cli.StringFlag{ Name: "public-driver", Value: "json", diff --git a/storage/pkg/flagset/users.go b/storage/pkg/flagset/users.go index b22c3a35c73..cf3fd72ab80 100644 --- a/storage/pkg/flagset/users.go +++ b/storage/pkg/flagset/users.go @@ -64,78 +64,78 @@ func UsersWithConfig(cfg *config.Config) []cli.Flag { EnvVars: []string{"STORAGE_USERPROVIDER_JSON"}, Destination: &cfg.Reva.Users.JSON, }, + &cli.IntFlag{ + Name: "user-groups-cache-expiration", + Value: 5, + Usage: "Time in minutes for redis cache expiration.", + EnvVars: []string{"STORAGE_USER_CACHE_EXPIRATION"}, + Destination: &cfg.Reva.Users.UserGroupsCacheExpiration, + }, // rest driver &cli.StringFlag{ Name: "rest-client-id", Value: "", - Usage: "User rest driver Client ID", + Usage: "User/group rest driver Client ID", EnvVars: []string{"STORAGE_REST_CLIENT_ID"}, - Destination: &cfg.Reva.UserRest.ClientID, + Destination: &cfg.Reva.UserGroupRest.ClientID, }, &cli.StringFlag{ Name: "rest-client-secret", Value: "", - Usage: "User rest driver Client Secret", + Usage: "User/group rest driver Client Secret", EnvVars: []string{"STORAGE_REST_CLIENT_SECRET"}, - Destination: &cfg.Reva.UserRest.ClientSecret, + Destination: &cfg.Reva.UserGroupRest.ClientSecret, }, &cli.StringFlag{ Name: "rest-redis-address", Value: "localhost:6379", Usage: "Address for redis server", EnvVars: []string{"STORAGE_REST_REDIS_ADDRESS"}, - Destination: &cfg.Reva.UserRest.RedisAddress, + Destination: &cfg.Reva.UserGroupRest.RedisAddress, }, &cli.StringFlag{ Name: "rest-redis-username", Value: "", Usage: "Username for redis server", EnvVars: []string{"STORAGE_REST_REDIS_USERNAME"}, - Destination: &cfg.Reva.UserRest.RedisUsername, + Destination: &cfg.Reva.UserGroupRest.RedisUsername, }, &cli.StringFlag{ Name: "rest-redis-password", Value: "", Usage: "Password for redis server", EnvVars: []string{"STORAGE_REST_REDIS_PASSWORD"}, - Destination: &cfg.Reva.UserRest.RedisPassword, - }, - &cli.IntFlag{ - Name: "rest-user-groups-cache-expiration", - Value: 5, - Usage: "Time in minutes for redis cache expiration.", - EnvVars: []string{"STORAGE_REST_CACHE_EXPIRATION"}, - Destination: &cfg.Reva.UserRest.UserGroupsCacheExpiration, + Destination: &cfg.Reva.UserGroupRest.RedisPassword, }, &cli.StringFlag{ Name: "rest-id-provider", Value: "", Usage: "The OIDC Provider", EnvVars: []string{"STORAGE_REST_ID_PROVIDER"}, - Destination: &cfg.Reva.UserRest.IDProvider, + Destination: &cfg.Reva.UserGroupRest.IDProvider, }, &cli.StringFlag{ Name: "rest-api-base-url", Value: "", Usage: "Base API Endpoint", EnvVars: []string{"STORAGE_REST_API_BASE_URL"}, - Destination: &cfg.Reva.UserRest.APIBaseURL, + Destination: &cfg.Reva.UserGroupRest.APIBaseURL, }, &cli.StringFlag{ Name: "rest-oidc-token-endpoint", Value: "", Usage: "Endpoint to generate token to access the API", EnvVars: []string{"STORAGE_REST_OIDC_TOKEN_ENDPOINT"}, - Destination: &cfg.Reva.UserRest.OIDCTokenEndpoint, + Destination: &cfg.Reva.UserGroupRest.OIDCTokenEndpoint, }, &cli.StringFlag{ Name: "rest-target-api", Value: "", Usage: "The target application", EnvVars: []string{"STORAGE_REST_TARGET_API"}, - Destination: &cfg.Reva.UserRest.TargetAPI, + Destination: &cfg.Reva.UserGroupRest.TargetAPI, }, } From 4813b06ed52ca6129554020ec81b5cf52f37a1dc Mon Sep 17 00:00:00 2001 From: root Date: Fri, 12 Feb 2021 16:36:21 +0100 Subject: [PATCH 2/6] Upgrade reva and CS3APIs versions --- accounts/go.mod | 4 ++-- accounts/go.sum | 5 +++++ ocis-pkg/go.mod | 4 ++-- ocis-pkg/go.sum | 16 ++++++++++++++++ ocis/go.sum | 8 +++++++- ocs/go.mod | 4 ++-- ocs/go.sum | 6 ++++++ proxy/go.mod | 4 ++-- proxy/go.sum | 6 ++++++ storage/go.mod | 2 +- storage/go.sum | 6 ++++++ storage/pkg/command/gateway.go | 1 + storage/pkg/flagset/gateway.go | 7 +++++++ 13 files changed, 63 insertions(+), 10 deletions(-) diff --git a/accounts/go.mod b/accounts/go.mod index f3b838c9b13..a1335ada2b7 100644 --- a/accounts/go.mod +++ b/accounts/go.mod @@ -7,8 +7,8 @@ require ( contrib.go.opencensus.io/exporter/ocagent v0.6.0 contrib.go.opencensus.io/exporter/zipkin v0.1.1 github.com/Masterminds/sprig/v3 v3.2.2 // indirect - github.com/cs3org/go-cs3apis v0.0.0-20210104105209-0d3ecb3453dc - github.com/cs3org/reva v1.5.2-0.20210212085611-d8aa2eb3ec9c + github.com/cs3org/go-cs3apis v0.0.0-20210209082852-35ace33082f5 + github.com/cs3org/reva v1.5.2-0.20210215094754-dda48c9cb779 github.com/go-chi/chi v4.1.2+incompatible github.com/go-chi/render v1.0.1 github.com/gofrs/uuid v3.3.0+incompatible diff --git a/accounts/go.sum b/accounts/go.sum index d0cf3afd993..668f85fd524 100644 --- a/accounts/go.sum +++ b/accounts/go.sum @@ -130,6 +130,7 @@ github.com/aws/aws-sdk-go v1.34.12 h1:7UbBEYDUa4uW0YmRnOd806MS1yoJMcaodBWDzvBShA github.com/aws/aws-sdk-go v1.34.12/go.mod h1:5zCpMtNQVjRREroY7sYe8lOMRSxkhG6MZveU8YkpAk0= github.com/aws/aws-sdk-go v1.37.3 h1:1f0groABc4AuapskpHf6EBRaG2tqw0Sx3ebCMwfp1Ys= github.com/aws/aws-sdk-go v1.37.3/go.mod h1:hcU610XS61/+aQV88ixoOzUoG7v3b31pl2zKMmprdro= +github.com/aws/aws-sdk-go v1.37.10/go.mod h1:hcU610XS61/+aQV88ixoOzUoG7v3b31pl2zKMmprdro= github.com/aws/aws-xray-sdk-go v0.9.4/go.mod h1:XtMKdBQfpVut+tJEwI7+dJFRxxRdxHDyVNp2tHXRq04= github.com/baiyubin/aliyun-sts-go-sdk v0.0.0-20180326062324-cfa1a18b161f/go.mod h1:AuiFmCCPBSrqvVMvuqFuk0qogytodnVFVSN5CeJB8Gc= github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q= @@ -224,10 +225,14 @@ github.com/cs3org/go-cs3apis v0.0.0-20200810113633-b00aca449666 h1:E7VsSSN/2YZLS github.com/cs3org/go-cs3apis v0.0.0-20200810113633-b00aca449666/go.mod h1:UXha4TguuB52H14EMoSsCqDj7k8a/t7g4gVP+bgY5LY= github.com/cs3org/go-cs3apis v0.0.0-20210104105209-0d3ecb3453dc h1:vHFqu+Gb/iOKYFy2KswpwIG3G6zRMudRn+rQ2bg3TPE= github.com/cs3org/go-cs3apis v0.0.0-20210104105209-0d3ecb3453dc/go.mod h1:UXha4TguuB52H14EMoSsCqDj7k8a/t7g4gVP+bgY5LY= +github.com/cs3org/go-cs3apis v0.0.0-20210209082852-35ace33082f5 h1:wy1oeyy6v9/65G97AkE5o4jC9J+sngPV9AZL5TbNsaY= +github.com/cs3org/go-cs3apis v0.0.0-20210209082852-35ace33082f5/go.mod h1:UXha4TguuB52H14EMoSsCqDj7k8a/t7g4gVP+bgY5LY= github.com/cs3org/reva v1.2.2-0.20200924071957-e6676516e61e h1:khITGSnfDXtByQsLezoXgocUgGHJBBn0BPsUihGvk7w= github.com/cs3org/reva v1.2.2-0.20200924071957-e6676516e61e/go.mod h1:DOV5SjpOBKN+aWfOHLdA4KiLQkpyC786PQaXEdRAZ0M= github.com/cs3org/reva v1.5.2-0.20210212085611-d8aa2eb3ec9c h1:fyo4TNiZdfQS27XHnAMb+S2wkdlmBf6ZLkU4uHEgWSA= github.com/cs3org/reva v1.5.2-0.20210212085611-d8aa2eb3ec9c/go.mod h1:24c68Ys3h7srGohymDKSXakN4OrhzABJoKFoMeSIBvk= +github.com/cs3org/reva v1.5.2-0.20210215094754-dda48c9cb779 h1:LJdCYCmoZzrOfUfEt7nngzpPr14ilZGJ0hi9puwxhlE= +github.com/cs3org/reva v1.5.2-0.20210215094754-dda48c9cb779/go.mod h1:3IWlJ4RcYYu0NEnlvP9QG66Inx7F0BtVLJWXit9Q5aw= github.com/cucumber/godog v0.8.1/go.mod h1:vSh3r/lM+psC1BPXvdkSEuNjmXfpVqrMGYAElF6hxnA= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= diff --git a/ocis-pkg/go.mod b/ocis-pkg/go.mod index bda1b9e0f28..723b3fe9875 100644 --- a/ocis-pkg/go.mod +++ b/ocis-pkg/go.mod @@ -6,8 +6,8 @@ require ( github.com/CiscoM31/godata v0.0.0-20201003040028-eadcd34e7f06 github.com/ascarter/requestid v0.0.0-20170313220838-5b76ab3d4aee github.com/coreos/go-oidc v2.2.1+incompatible - github.com/cs3org/go-cs3apis v0.0.0-20210104105209-0d3ecb3453dc - github.com/cs3org/reva v1.5.2-0.20210212085611-d8aa2eb3ec9c + github.com/cs3org/go-cs3apis v0.0.0-20210209082852-35ace33082f5 + github.com/cs3org/reva v1.5.2-0.20210215094754-dda48c9cb779 github.com/go-chi/chi v4.1.2+incompatible github.com/haya14busa/goverage v0.0.0-20180129164344-eec3514a20b5 github.com/iancoleman/strcase v0.1.2 diff --git a/ocis-pkg/go.sum b/ocis-pkg/go.sum index a933b67427b..047599a30e2 100644 --- a/ocis-pkg/go.sum +++ b/ocis-pkg/go.sum @@ -86,6 +86,9 @@ github.com/Nvveen/Gotty v0.0.0-20120604004816-cd527374f1e5/go.mod h1:lmUJ/7eu/Q8 github.com/OneOfOne/xxhash v1.2.2 h1:KMrpdQIwFcEqXDklaen+P1axHaj9BSKzvpUUfnHldSE= github.com/OneOfOne/xxhash v1.2.2/go.mod h1:HSdplMjZKSmBqAxg5vPj2TmRDmfkzw+cTzAElWljhcU= github.com/OpenDNS/vegadns2client v0.0.0-20180418235048-a3fa4a771d87/go.mod h1:iGLljf5n9GjT6kc0HBvyI1nOKnGQbNB66VzSNbK5iks= +github.com/ReneKroon/ttlcache/v2 v2.1.0 h1:5GQZXf7Pl68S4O/Mps4kAXQ+ObEqwHskC8WKT77mHiQ= +github.com/ReneKroon/ttlcache/v2 v2.1.0/go.mod h1:0E5EIhFJrGmcn/niHrqnnvQHvihj+DdPzJlOEzBS3o4= +github.com/ReneKroon/ttlcache/v2 v2.2.0/go.mod h1:7sjX24a4f8I4M3NZHPCsgGs2JoHd0Yw501PCd5URKEE= github.com/ReneKroon/ttlcache/v2 v2.3.0 h1:qZnUjRKIrbKHH6vF5T7Y9Izn5ObfTZfyYpGhvz2BKPo= github.com/ReneKroon/ttlcache/v2 v2.3.0/go.mod h1:zbo6Pv/28e21Z8CzzqgYRArQYGYtjONRxaAKGxzQvG4= github.com/Shopify/sarama v1.19.0/go.mod h1:FVkBWblsNy7DGZRfXLU0O9RCGt5g3g3yEuWXgklEdEo= @@ -131,8 +134,14 @@ github.com/aws/aws-sdk-go v1.20.1/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN github.com/aws/aws-sdk-go v1.23.0/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN924inxo= github.com/aws/aws-sdk-go v1.23.19/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN924inxo= github.com/aws/aws-sdk-go v1.33.19/go.mod h1:5zCpMtNQVjRREroY7sYe8lOMRSxkhG6MZveU8YkpAk0= +github.com/aws/aws-sdk-go v1.34.12 h1:7UbBEYDUa4uW0YmRnOd806MS1yoJMcaodBWDzvBShAI= +github.com/aws/aws-sdk-go v1.34.12/go.mod h1:5zCpMtNQVjRREroY7sYe8lOMRSxkhG6MZveU8YkpAk0= +github.com/aws/aws-sdk-go v1.35.27 h1:F0dUW+kouzchjt4X6kYfYMw1YtQPkA4pihpCDqQMrq8= +github.com/aws/aws-sdk-go v1.35.27/go.mod h1:tlPOdRjfxPBpNIwqDj61rmsnA85v9jc0Ps9+muhnW+k= github.com/aws/aws-sdk-go v1.37.3 h1:1f0groABc4AuapskpHf6EBRaG2tqw0Sx3ebCMwfp1Ys= github.com/aws/aws-sdk-go v1.37.3/go.mod h1:hcU610XS61/+aQV88ixoOzUoG7v3b31pl2zKMmprdro= +github.com/aws/aws-sdk-go v1.37.10 h1:LRwl+97B4D69Z7tz+eRUxJ1C7baBaIYhgrn5eLtua+Q= +github.com/aws/aws-sdk-go v1.37.10/go.mod h1:hcU610XS61/+aQV88ixoOzUoG7v3b31pl2zKMmprdro= github.com/aws/aws-xray-sdk-go v0.9.4/go.mod h1:XtMKdBQfpVut+tJEwI7+dJFRxxRdxHDyVNp2tHXRq04= github.com/baiyubin/aliyun-sts-go-sdk v0.0.0-20180326062324-cfa1a18b161f/go.mod h1:AuiFmCCPBSrqvVMvuqFuk0qogytodnVFVSN5CeJB8Gc= github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q= @@ -227,10 +236,14 @@ github.com/cs3org/go-cs3apis v0.0.0-20200730121022-c4f3d4f7ddfd h1:uMaudkC7znaiI github.com/cs3org/go-cs3apis v0.0.0-20200730121022-c4f3d4f7ddfd/go.mod h1:UXha4TguuB52H14EMoSsCqDj7k8a/t7g4gVP+bgY5LY= github.com/cs3org/go-cs3apis v0.0.0-20210104105209-0d3ecb3453dc h1:vHFqu+Gb/iOKYFy2KswpwIG3G6zRMudRn+rQ2bg3TPE= github.com/cs3org/go-cs3apis v0.0.0-20210104105209-0d3ecb3453dc/go.mod h1:UXha4TguuB52H14EMoSsCqDj7k8a/t7g4gVP+bgY5LY= +github.com/cs3org/go-cs3apis v0.0.0-20210209082852-35ace33082f5 h1:wy1oeyy6v9/65G97AkE5o4jC9J+sngPV9AZL5TbNsaY= +github.com/cs3org/go-cs3apis v0.0.0-20210209082852-35ace33082f5/go.mod h1:UXha4TguuB52H14EMoSsCqDj7k8a/t7g4gVP+bgY5LY= github.com/cs3org/reva v1.1.0 h1:Gih6ECHvMMGSx523SFluFlDmNMuhYelXYShdWvjvW38= github.com/cs3org/reva v1.1.0/go.mod h1:fBzTrNuAKdQ62ybjpdu8nyhBin90/3/3s6DGQDCdBp4= github.com/cs3org/reva v1.5.2-0.20210212085611-d8aa2eb3ec9c h1:fyo4TNiZdfQS27XHnAMb+S2wkdlmBf6ZLkU4uHEgWSA= github.com/cs3org/reva v1.5.2-0.20210212085611-d8aa2eb3ec9c/go.mod h1:24c68Ys3h7srGohymDKSXakN4OrhzABJoKFoMeSIBvk= +github.com/cs3org/reva v1.5.2-0.20210215094754-dda48c9cb779 h1:LJdCYCmoZzrOfUfEt7nngzpPr14ilZGJ0hi9puwxhlE= +github.com/cs3org/reva v1.5.2-0.20210215094754-dda48c9cb779/go.mod h1:3IWlJ4RcYYu0NEnlvP9QG66Inx7F0BtVLJWXit9Q5aw= github.com/cucumber/godog v0.8.1/go.mod h1:vSh3r/lM+psC1BPXvdkSEuNjmXfpVqrMGYAElF6hxnA= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= @@ -1074,6 +1087,9 @@ github.com/ory/dockertest v3.3.5+incompatible/go.mod h1:1vX4m9wsvi00u5bseYwXaSnh github.com/ory/dockertest/v3 v3.5.4/go.mod h1:J8ZUbNB2FOhm1cFZW9xBpDsODqsSWcyYgtJYVPcnF70= github.com/ory/fosite v0.29.0/go.mod h1:0atSZmXO7CAcs6NPMI/Qtot8tmZYj04Nddoold4S2h0= github.com/ory/fosite v0.32.2/go.mod h1:UeBhRgW6nAjTcd8S7kAo0IFsY/rTPyOXPq/t8N20Q8I= +github.com/ory/fosite v0.35.1 h1:mGPcwVGwHA7Yy9wr/7LDps6BEXyavL32NxizL9eH53Q= +github.com/ory/fosite v0.35.1/go.mod h1:h+ize9gk0GvRyGjabriqSEmTkMhny+O95cijb8DVqPE= +github.com/ory/fosite v0.36.1/go.mod h1:42KzCDGR5zzuEIP48QwxL0QkA98ckUphlSgrSvxKB+A= github.com/ory/fosite v0.37.0 h1:NaKYm3hhZW1c812uetiNfHlvXmTokIRrOOiTYz+Yhro= github.com/ory/fosite v0.37.0/go.mod h1:37r59qkOSPueYKmaA7EHiXrDMF1B+XPN+MgkZgTRg3Y= github.com/ory/go-acc v0.0.0-20181118080137-ddc355013f90/go.mod h1:sxnvPCxChFuSmTJGj8FdMupeq1BezCiEpDjTUXQ4hf4= diff --git a/ocis/go.sum b/ocis/go.sum index 46cc663e77d..ccf7d903667 100644 --- a/ocis/go.sum +++ b/ocis/go.sum @@ -133,6 +133,8 @@ github.com/aws/aws-sdk-go v1.23.19/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpi github.com/aws/aws-sdk-go v1.33.19/go.mod h1:5zCpMtNQVjRREroY7sYe8lOMRSxkhG6MZveU8YkpAk0= github.com/aws/aws-sdk-go v1.37.3 h1:1f0groABc4AuapskpHf6EBRaG2tqw0Sx3ebCMwfp1Ys= github.com/aws/aws-sdk-go v1.37.3/go.mod h1:hcU610XS61/+aQV88ixoOzUoG7v3b31pl2zKMmprdro= +github.com/aws/aws-sdk-go v1.37.10 h1:LRwl+97B4D69Z7tz+eRUxJ1C7baBaIYhgrn5eLtua+Q= +github.com/aws/aws-sdk-go v1.37.10/go.mod h1:hcU610XS61/+aQV88ixoOzUoG7v3b31pl2zKMmprdro= github.com/aws/aws-xray-sdk-go v0.9.4/go.mod h1:XtMKdBQfpVut+tJEwI7+dJFRxxRdxHDyVNp2tHXRq04= github.com/baiyubin/aliyun-sts-go-sdk v0.0.0-20180326062324-cfa1a18b161f/go.mod h1:AuiFmCCPBSrqvVMvuqFuk0qogytodnVFVSN5CeJB8Gc= github.com/beevik/etree v1.1.0 h1:T0xke/WvNtMoCqgzPhkX2r4rjY3GDZFi+FjpRZY2Jbs= @@ -278,10 +280,14 @@ github.com/cs3org/go-cs3apis v0.0.0-20200730121022-c4f3d4f7ddfd/go.mod h1:UXha4T github.com/cs3org/go-cs3apis v0.0.0-20200810113633-b00aca449666/go.mod h1:UXha4TguuB52H14EMoSsCqDj7k8a/t7g4gVP+bgY5LY= github.com/cs3org/go-cs3apis v0.0.0-20210104105209-0d3ecb3453dc h1:vHFqu+Gb/iOKYFy2KswpwIG3G6zRMudRn+rQ2bg3TPE= github.com/cs3org/go-cs3apis v0.0.0-20210104105209-0d3ecb3453dc/go.mod h1:UXha4TguuB52H14EMoSsCqDj7k8a/t7g4gVP+bgY5LY= +github.com/cs3org/go-cs3apis v0.0.0-20210209082852-35ace33082f5 h1:wy1oeyy6v9/65G97AkE5o4jC9J+sngPV9AZL5TbNsaY= +github.com/cs3org/go-cs3apis v0.0.0-20210209082852-35ace33082f5/go.mod h1:UXha4TguuB52H14EMoSsCqDj7k8a/t7g4gVP+bgY5LY= +github.com/cs3org/reva v0.0.2-0.20200115110931-4c7513415ec5/go.mod h1:Hk3eCcdhtv4eIhKvRK736fQuOyS1HuHnUcz0Dq6NK1A= github.com/cs3org/reva v1.1.0/go.mod h1:fBzTrNuAKdQ62ybjpdu8nyhBin90/3/3s6DGQDCdBp4= github.com/cs3org/reva v1.5.2-0.20210212085611-d8aa2eb3ec9c h1:fyo4TNiZdfQS27XHnAMb+S2wkdlmBf6ZLkU4uHEgWSA= github.com/cs3org/reva v1.5.2-0.20210212085611-d8aa2eb3ec9c/go.mod h1:24c68Ys3h7srGohymDKSXakN4OrhzABJoKFoMeSIBvk= -github.com/cs3org/reva v1.6.0 h1:xIhO7UtXQZbjYNeekaeQtZRo+HjZWWukCotb1tO4qMA= +github.com/cs3org/reva v1.5.2-0.20210215094754-dda48c9cb779 h1:LJdCYCmoZzrOfUfEt7nngzpPr14ilZGJ0hi9puwxhlE= +github.com/cs3org/reva v1.5.2-0.20210215094754-dda48c9cb779/go.mod h1:3IWlJ4RcYYu0NEnlvP9QG66Inx7F0BtVLJWXit9Q5aw= github.com/cucumber/godog v0.8.1/go.mod h1:vSh3r/lM+psC1BPXvdkSEuNjmXfpVqrMGYAElF6hxnA= github.com/cznic/b v0.0.0-20181122101859-a26611c4d92d h1:SwD98825d6bdB+pEuTxWOXiSjBrHdOl/UVp75eI7JT8= github.com/cznic/b v0.0.0-20181122101859-a26611c4d92d/go.mod h1:URriBxXwVq5ijiJ12C7iIZqlA69nTlI+LgI6/pwftG8= diff --git a/ocs/go.mod b/ocs/go.mod index 27f1ab62098..24d0c4e2fa8 100644 --- a/ocs/go.mod +++ b/ocs/go.mod @@ -8,8 +8,8 @@ require ( contrib.go.opencensus.io/exporter/zipkin v0.1.1 github.com/UnnoTed/fileb0x v1.1.4 github.com/bmatcuk/doublestar v1.3.4 // indirect - github.com/cs3org/go-cs3apis v0.0.0-20210104105209-0d3ecb3453dc - github.com/cs3org/reva v1.5.2-0.20210212085611-d8aa2eb3ec9c + github.com/cs3org/go-cs3apis v0.0.0-20210209082852-35ace33082f5 + github.com/cs3org/reva v1.5.2-0.20210215094754-dda48c9cb779 github.com/go-chi/chi v4.1.2+incompatible github.com/go-chi/render v1.0.1 github.com/golang/protobuf v1.4.3 diff --git a/ocs/go.sum b/ocs/go.sum index af9b3ff690c..4dc81ab3c41 100644 --- a/ocs/go.sum +++ b/ocs/go.sum @@ -130,6 +130,7 @@ github.com/aws/aws-sdk-go v1.23.0/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN github.com/aws/aws-sdk-go v1.23.19/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN924inxo= github.com/aws/aws-sdk-go v1.37.3 h1:1f0groABc4AuapskpHf6EBRaG2tqw0Sx3ebCMwfp1Ys= github.com/aws/aws-sdk-go v1.37.3/go.mod h1:hcU610XS61/+aQV88ixoOzUoG7v3b31pl2zKMmprdro= +github.com/aws/aws-sdk-go v1.37.10/go.mod h1:hcU610XS61/+aQV88ixoOzUoG7v3b31pl2zKMmprdro= github.com/aws/aws-xray-sdk-go v0.9.4/go.mod h1:XtMKdBQfpVut+tJEwI7+dJFRxxRdxHDyVNp2tHXRq04= github.com/baiyubin/aliyun-sts-go-sdk v0.0.0-20180326062324-cfa1a18b161f/go.mod h1:AuiFmCCPBSrqvVMvuqFuk0qogytodnVFVSN5CeJB8Gc= github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q= @@ -232,8 +233,13 @@ github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ3 github.com/cs3org/cato v0.0.0-20200828125504-e418fc54dd5e/go.mod h1:XJEZ3/EQuI3BXTp/6DUzFr850vlxq11I6satRtz0YQ4= github.com/cs3org/go-cs3apis v0.0.0-20210104105209-0d3ecb3453dc h1:vHFqu+Gb/iOKYFy2KswpwIG3G6zRMudRn+rQ2bg3TPE= github.com/cs3org/go-cs3apis v0.0.0-20210104105209-0d3ecb3453dc/go.mod h1:UXha4TguuB52H14EMoSsCqDj7k8a/t7g4gVP+bgY5LY= +github.com/cs3org/go-cs3apis v0.0.0-20210209082852-35ace33082f5 h1:wy1oeyy6v9/65G97AkE5o4jC9J+sngPV9AZL5TbNsaY= +github.com/cs3org/go-cs3apis v0.0.0-20210209082852-35ace33082f5/go.mod h1:UXha4TguuB52H14EMoSsCqDj7k8a/t7g4gVP+bgY5LY= +github.com/cs3org/reva v1.2.2-0.20200924071957-e6676516e61e/go.mod h1:DOV5SjpOBKN+aWfOHLdA4KiLQkpyC786PQaXEdRAZ0M= github.com/cs3org/reva v1.5.2-0.20210212085611-d8aa2eb3ec9c h1:fyo4TNiZdfQS27XHnAMb+S2wkdlmBf6ZLkU4uHEgWSA= github.com/cs3org/reva v1.5.2-0.20210212085611-d8aa2eb3ec9c/go.mod h1:24c68Ys3h7srGohymDKSXakN4OrhzABJoKFoMeSIBvk= +github.com/cs3org/reva v1.5.2-0.20210215094754-dda48c9cb779 h1:LJdCYCmoZzrOfUfEt7nngzpPr14ilZGJ0hi9puwxhlE= +github.com/cs3org/reva v1.5.2-0.20210215094754-dda48c9cb779/go.mod h1:3IWlJ4RcYYu0NEnlvP9QG66Inx7F0BtVLJWXit9Q5aw= github.com/cucumber/godog v0.8.1/go.mod h1:vSh3r/lM+psC1BPXvdkSEuNjmXfpVqrMGYAElF6hxnA= github.com/cznic/b v0.0.0-20181122101859-a26611c4d92d/go.mod h1:URriBxXwVq5ijiJ12C7iIZqlA69nTlI+LgI6/pwftG8= github.com/cznic/mathutil v0.0.0-20181122101859-297441e03548/go.mod h1:e6NPNENfs9mPDVNRekM7lKScauxd5kXTr1Mfyig6TDM= diff --git a/proxy/go.mod b/proxy/go.mod index dad3f1c11db..58bcc3ed665 100644 --- a/proxy/go.mod +++ b/proxy/go.mod @@ -7,8 +7,8 @@ require ( contrib.go.opencensus.io/exporter/ocagent v0.7.0 contrib.go.opencensus.io/exporter/zipkin v0.1.1 github.com/coreos/go-oidc v2.2.1+incompatible - github.com/cs3org/go-cs3apis v0.0.0-20210104105209-0d3ecb3453dc - github.com/cs3org/reva v1.5.2-0.20210212085611-d8aa2eb3ec9c + github.com/cs3org/go-cs3apis v0.0.0-20210209082852-35ace33082f5 + github.com/cs3org/reva v1.5.2-0.20210215094754-dda48c9cb779 github.com/dgrijalva/jwt-go v3.2.0+incompatible github.com/justinas/alice v1.2.0 github.com/micro/cli/v2 v2.1.2 diff --git a/proxy/go.sum b/proxy/go.sum index a1f8850a961..1f4372fc175 100644 --- a/proxy/go.sum +++ b/proxy/go.sum @@ -129,6 +129,7 @@ github.com/aws/aws-sdk-go v1.23.0/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN github.com/aws/aws-sdk-go v1.23.19/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN924inxo= github.com/aws/aws-sdk-go v1.37.3 h1:1f0groABc4AuapskpHf6EBRaG2tqw0Sx3ebCMwfp1Ys= github.com/aws/aws-sdk-go v1.37.3/go.mod h1:hcU610XS61/+aQV88ixoOzUoG7v3b31pl2zKMmprdro= +github.com/aws/aws-sdk-go v1.37.10/go.mod h1:hcU610XS61/+aQV88ixoOzUoG7v3b31pl2zKMmprdro= github.com/aws/aws-xray-sdk-go v0.9.4/go.mod h1:XtMKdBQfpVut+tJEwI7+dJFRxxRdxHDyVNp2tHXRq04= github.com/baiyubin/aliyun-sts-go-sdk v0.0.0-20180326062324-cfa1a18b161f/go.mod h1:AuiFmCCPBSrqvVMvuqFuk0qogytodnVFVSN5CeJB8Gc= github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q= @@ -229,8 +230,13 @@ github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ3 github.com/cs3org/cato v0.0.0-20200828125504-e418fc54dd5e/go.mod h1:XJEZ3/EQuI3BXTp/6DUzFr850vlxq11I6satRtz0YQ4= github.com/cs3org/go-cs3apis v0.0.0-20210104105209-0d3ecb3453dc h1:vHFqu+Gb/iOKYFy2KswpwIG3G6zRMudRn+rQ2bg3TPE= github.com/cs3org/go-cs3apis v0.0.0-20210104105209-0d3ecb3453dc/go.mod h1:UXha4TguuB52H14EMoSsCqDj7k8a/t7g4gVP+bgY5LY= +github.com/cs3org/go-cs3apis v0.0.0-20210209082852-35ace33082f5 h1:wy1oeyy6v9/65G97AkE5o4jC9J+sngPV9AZL5TbNsaY= +github.com/cs3org/go-cs3apis v0.0.0-20210209082852-35ace33082f5/go.mod h1:UXha4TguuB52H14EMoSsCqDj7k8a/t7g4gVP+bgY5LY= +github.com/cs3org/reva v1.2.2-0.20200924071957-e6676516e61e/go.mod h1:DOV5SjpOBKN+aWfOHLdA4KiLQkpyC786PQaXEdRAZ0M= github.com/cs3org/reva v1.5.2-0.20210212085611-d8aa2eb3ec9c h1:fyo4TNiZdfQS27XHnAMb+S2wkdlmBf6ZLkU4uHEgWSA= github.com/cs3org/reva v1.5.2-0.20210212085611-d8aa2eb3ec9c/go.mod h1:24c68Ys3h7srGohymDKSXakN4OrhzABJoKFoMeSIBvk= +github.com/cs3org/reva v1.5.2-0.20210215094754-dda48c9cb779 h1:LJdCYCmoZzrOfUfEt7nngzpPr14ilZGJ0hi9puwxhlE= +github.com/cs3org/reva v1.5.2-0.20210215094754-dda48c9cb779/go.mod h1:3IWlJ4RcYYu0NEnlvP9QG66Inx7F0BtVLJWXit9Q5aw= github.com/cucumber/godog v0.8.1/go.mod h1:vSh3r/lM+psC1BPXvdkSEuNjmXfpVqrMGYAElF6hxnA= github.com/cznic/b v0.0.0-20181122101859-a26611c4d92d/go.mod h1:URriBxXwVq5ijiJ12C7iIZqlA69nTlI+LgI6/pwftG8= github.com/cznic/mathutil v0.0.0-20181122101859-297441e03548/go.mod h1:e6NPNENfs9mPDVNRekM7lKScauxd5kXTr1Mfyig6TDM= diff --git a/storage/go.mod b/storage/go.mod index 553ba085eae..a2ebff52548 100644 --- a/storage/go.mod +++ b/storage/go.mod @@ -4,7 +4,7 @@ go 1.15 require ( github.com/Masterminds/sprig/v3 v3.2.2 // indirect - github.com/cs3org/reva v1.5.2-0.20210212085611-d8aa2eb3ec9c + github.com/cs3org/reva v1.6.0 github.com/gofrs/uuid v3.3.0+incompatible github.com/huandu/xstrings v1.3.2 // indirect github.com/micro/cli/v2 v2.1.2 diff --git a/storage/go.sum b/storage/go.sum index be9eb32bad9..b06cc2f0208 100644 --- a/storage/go.sum +++ b/storage/go.sum @@ -126,6 +126,8 @@ github.com/aws/aws-sdk-go v1.23.19/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpi github.com/aws/aws-sdk-go v1.33.19/go.mod h1:5zCpMtNQVjRREroY7sYe8lOMRSxkhG6MZveU8YkpAk0= github.com/aws/aws-sdk-go v1.37.3 h1:1f0groABc4AuapskpHf6EBRaG2tqw0Sx3ebCMwfp1Ys= github.com/aws/aws-sdk-go v1.37.3/go.mod h1:hcU610XS61/+aQV88ixoOzUoG7v3b31pl2zKMmprdro= +github.com/aws/aws-sdk-go v1.37.10 h1:LRwl+97B4D69Z7tz+eRUxJ1C7baBaIYhgrn5eLtua+Q= +github.com/aws/aws-sdk-go v1.37.10/go.mod h1:hcU610XS61/+aQV88ixoOzUoG7v3b31pl2zKMmprdro= github.com/aws/aws-xray-sdk-go v0.9.4/go.mod h1:XtMKdBQfpVut+tJEwI7+dJFRxxRdxHDyVNp2tHXRq04= github.com/baiyubin/aliyun-sts-go-sdk v0.0.0-20180326062324-cfa1a18b161f/go.mod h1:AuiFmCCPBSrqvVMvuqFuk0qogytodnVFVSN5CeJB8Gc= github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q= @@ -213,9 +215,13 @@ github.com/cs3org/cato v0.0.0-20200828125504-e418fc54dd5e/go.mod h1:XJEZ3/EQuI3B github.com/cs3org/go-cs3apis v0.0.0-20200730121022-c4f3d4f7ddfd/go.mod h1:UXha4TguuB52H14EMoSsCqDj7k8a/t7g4gVP+bgY5LY= github.com/cs3org/go-cs3apis v0.0.0-20210104105209-0d3ecb3453dc h1:vHFqu+Gb/iOKYFy2KswpwIG3G6zRMudRn+rQ2bg3TPE= github.com/cs3org/go-cs3apis v0.0.0-20210104105209-0d3ecb3453dc/go.mod h1:UXha4TguuB52H14EMoSsCqDj7k8a/t7g4gVP+bgY5LY= +github.com/cs3org/go-cs3apis v0.0.0-20210209082852-35ace33082f5 h1:wy1oeyy6v9/65G97AkE5o4jC9J+sngPV9AZL5TbNsaY= +github.com/cs3org/go-cs3apis v0.0.0-20210209082852-35ace33082f5/go.mod h1:UXha4TguuB52H14EMoSsCqDj7k8a/t7g4gVP+bgY5LY= github.com/cs3org/reva v1.1.0/go.mod h1:fBzTrNuAKdQ62ybjpdu8nyhBin90/3/3s6DGQDCdBp4= github.com/cs3org/reva v1.5.2-0.20210212085611-d8aa2eb3ec9c h1:fyo4TNiZdfQS27XHnAMb+S2wkdlmBf6ZLkU4uHEgWSA= github.com/cs3org/reva v1.5.2-0.20210212085611-d8aa2eb3ec9c/go.mod h1:24c68Ys3h7srGohymDKSXakN4OrhzABJoKFoMeSIBvk= +github.com/cs3org/reva v1.5.2-0.20210215094754-dda48c9cb779 h1:LJdCYCmoZzrOfUfEt7nngzpPr14ilZGJ0hi9puwxhlE= +github.com/cs3org/reva v1.5.2-0.20210215094754-dda48c9cb779/go.mod h1:3IWlJ4RcYYu0NEnlvP9QG66Inx7F0BtVLJWXit9Q5aw= github.com/cucumber/godog v0.8.1/go.mod h1:vSh3r/lM+psC1BPXvdkSEuNjmXfpVqrMGYAElF6hxnA= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= diff --git a/storage/pkg/command/gateway.go b/storage/pkg/command/gateway.go index d04966efaa8..722c369ff79 100644 --- a/storage/pkg/command/gateway.go +++ b/storage/pkg/command/gateway.go @@ -143,6 +143,7 @@ func Gateway(cfg *config.Config) *cli.Command { }, }, } + logger.Info().Msgf("rcfg %+v", rcfg) gr.Add(func() error { err := external.RegisterGRPCEndpoint( diff --git a/storage/pkg/flagset/gateway.go b/storage/pkg/flagset/gateway.go index c10ed7eabcd..179e95ebabd 100644 --- a/storage/pkg/flagset/gateway.go +++ b/storage/pkg/flagset/gateway.go @@ -177,6 +177,13 @@ func GatewayWithConfig(cfg *config.Config) []cli.Flag { EnvVars: []string{"STORAGE_USERPROVIDER_ENDPOINT"}, Destination: &cfg.Reva.Users.Endpoint, }, + &cli.StringFlag{ + Name: "groupprovider-endpoint", + Value: "localhost:9160", + Usage: "endpoint to use for the groupprovider", + EnvVars: []string{"STORAGE_GROUPPROVIDER_ENDPOINT"}, + Destination: &cfg.Reva.Groups.Endpoint, + }, &cli.StringFlag{ Name: "sharing-endpoint", Value: "localhost:9150", From 69cc4d83ade33d5a738a72818b7f0e9aefd87f21 Mon Sep 17 00:00:00 2001 From: Ishank Arora Date: Mon, 15 Feb 2021 13:18:40 +0100 Subject: [PATCH 3/6] Add changelog --- changelog/unreleased/reva-group-provider.md | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 changelog/unreleased/reva-group-provider.md diff --git a/changelog/unreleased/reva-group-provider.md b/changelog/unreleased/reva-group-provider.md new file mode 100644 index 00000000000..3aacb370076 --- /dev/null +++ b/changelog/unreleased/reva-group-provider.md @@ -0,0 +1,3 @@ +Enhancement: Add config for group provider service and sharing SQL driver + +https://github.com/owncloud/ocis/pull/1626/files From 089325d30ed981a44aff209d21b8a8342698c3f8 Mon Sep 17 00:00:00 2001 From: Ishank Arora Date: Mon, 15 Feb 2021 13:57:39 +0100 Subject: [PATCH 4/6] Update expected failures --- .../expected-failures-API-on-OCIS-storage.md | 72 ------------------- ...pected-failures-API-on-OWNCLOUD-storage.md | 53 -------------- ...-createShareWithInvalidPermissions.feature | 45 ------------ 3 files changed, 170 deletions(-) delete mode 100644 tests/acceptance/features/apiBugDemonstration/apiShareCreateSpecial2-createShareWithInvalidPermissions.feature diff --git a/tests/acceptance/expected-failures-API-on-OCIS-storage.md b/tests/acceptance/expected-failures-API-on-OCIS-storage.md index 64ab5a5214f..64cb17eebf3 100644 --- a/tests/acceptance/expected-failures-API-on-OCIS-storage.md +++ b/tests/acceptance/expected-failures-API-on-OCIS-storage.md @@ -757,16 +757,6 @@ File and sync features in a shared scenario - [apiWebdavEtagPropagation1/moveFileFolder.feature:314](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiWebdavEtagPropagation1/moveFileFolder.feature#L314) - [apiWebdavEtagPropagation1/moveFileFolder.feature:315](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiWebdavEtagPropagation1/moveFileFolder.feature#L315) - -#### [sharing with group not available](https://github.com/owncloud/product/issues/293) - -- [apiShareOperationsToShares/uploadToShare.feature:39](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares/uploadToShare.feature#L39) -- [apiShareOperationsToShares/uploadToShare.feature:40](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares/uploadToShare.feature#L40) -- [apiShareOperationsToShares/uploadToShare.feature:91](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares/uploadToShare.feature#L91) -- [apiShareOperationsToShares/uploadToShare.feature:92](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares/uploadToShare.feature#L92) -- [apiShareOperationsToShares/uploadToShare.feature:139](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares/uploadToShare.feature#L139) -- [apiShareOperationsToShares/uploadToShare.feature:140](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares/uploadToShare.feature#L140) - #### [Checksum feature](https://github.com/owncloud/ocis/issues/1291) - [apiMain/checksums.feature:119](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiMain/checksums.feature#L119) Scenario: Sharing a file with checksum should return the checksum in the propfind using new DAV path - [apiMain/checksums.feature:129](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiMain/checksums.feature#L129) Scenario: Sharing and modifying a file should return correct checksum in the propfind using new DAV path @@ -828,12 +818,7 @@ File and sync features in a shared scenario - [apiSharees/sharees.feature:561](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiSharees/sharees.feature#L561) #### [sharing with group not available](https://github.com/owncloud/product/issues/293) -- [apiShareManagementToShares/acceptShares.feature:22](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementToShares/acceptShares.feature#L22) - [apiShareManagementToShares/acceptShares.feature:223](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementToShares/acceptShares.feature#L223) -- [apiShareManagementToShares/acceptShares.feature:270](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementToShares/acceptShares.feature#L270) -- [apiShareManagementToShares/acceptShares.feature:342](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementToShares/acceptShares.feature#L342) -- [apiShareManagementToShares/acceptShares.feature:378](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementToShares/acceptShares.feature#L378) -- [apiShareManagementToShares/acceptShares.feature:417](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementToShares/acceptShares.feature#L417) #### User cannot create a folder named Share - [apiShareManagementToShares/acceptShares.feature:279](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementToShares/acceptShares.feature#L279) @@ -872,7 +857,6 @@ File and sync features in a shared scenario - [apiShareManagementBasicToShares/createShareToSharesFolder.feature:305](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementBasicToShares/createShareToSharesFolder.feature#L305) - [apiShareManagementBasicToShares/createShareToSharesFolder.feature:306](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementBasicToShares/createShareToSharesFolder.feature#L306) - [apiShareManagementBasicToShares/deleteShareFromShares.feature:46](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementBasicToShares/deleteShareFromShares.feature#L46) -- [apiShareManagementToShares/mergeShare.feature:32](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementToShares/mergeShare.feature#L32) - [apiShareManagementToShares/mergeShare.feature:42](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementToShares/mergeShare.feature#L42) - [apiShareManagementToShares/mergeShare.feature:89](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementToShares/mergeShare.feature#L89) @@ -894,13 +878,9 @@ File and sync features in a shared scenario - [apiShareManagementBasicToShares/createShareToSharesFolder.feature:362](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementBasicToShares/createShareToSharesFolder.feature#L362) - [apiShareManagementBasicToShares/createShareToSharesFolder.feature:363](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementBasicToShares/createShareToSharesFolder.feature#L363) - [apiShareManagementBasicToShares/createShareToSharesFolder.feature:392](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementBasicToShares/createShareToSharesFolder.feature#L392) -- [apiShareManagementBasicToShares/createShareToSharesFolder.feature:461](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementBasicToShares/createShareToSharesFolder.feature#L461) -- [apiShareManagementBasicToShares/createShareToSharesFolder.feature:462](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementBasicToShares/createShareToSharesFolder.feature#L462) - [apiShareManagementBasicToShares/createShareToSharesFolder.feature:497](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementBasicToShares/createShareToSharesFolder.feature#L497) - [apiShareManagementBasicToShares/createShareToSharesFolder.feature:498](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementBasicToShares/createShareToSharesFolder.feature#L498) - [apiShareManagementBasicToShares/createShareToSharesFolder.feature:501](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementBasicToShares/createShareToSharesFolder.feature#L501) -- [apiShareManagementBasicToShares/deleteShareFromShares.feature:28](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementBasicToShares/deleteShareFromShares.feature#L28) -- [apiShareManagementBasicToShares/deleteShareFromShares.feature:29](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementBasicToShares/deleteShareFromShares.feature#L29) - [apiShareManagementBasicToShares/deleteShareFromShares.feature:89](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementBasicToShares/deleteShareFromShares.feature#L89) #### [shares are mounted into /Shares folder even after the sharer deletes the collaborator](https://github.com/owncloud/ocis/issues/720) @@ -1139,8 +1119,6 @@ cannot share a folder with create permission - [apiShareManagementBasicToShares/excludeGroupFromReceivingSharesToSharesFolder.feature:70](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementBasicToShares/excludeGroupFromReceivingSharesToSharesFolder.feature#L70) - [apiShareManagementBasicToShares/excludeGroupFromReceivingSharesToSharesFolder.feature:97](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementBasicToShares/excludeGroupFromReceivingSharesToSharesFolder.feature#L97) - [apiShareManagementBasicToShares/excludeGroupFromReceivingSharesToSharesFolder.feature:98](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementBasicToShares/excludeGroupFromReceivingSharesToSharesFolder.feature#L98) -- [apiShareManagementBasicToShares/excludeGroupFromReceivingSharesToSharesFolder.feature:135](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementBasicToShares/excludeGroupFromReceivingSharesToSharesFolder.feature#L135) -- [apiShareManagementBasicToShares/excludeGroupFromReceivingSharesToSharesFolder.feature:136](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementBasicToShares/excludeGroupFromReceivingSharesToSharesFolder.feature#L136) #### [Public cannot upload file with mtime set on a public link share with new version of WebDAV API](https://github.com/owncloud/core/issues/37605) @@ -1343,10 +1321,6 @@ cannot share a folder with create permission - [apiShareReshareToShares2/reShareWhenShareWithOnlyMembershipGroups.feature:25](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareReshareToShares2/reShareWhenShareWithOnlyMembershipGroups.feature#L25) - [apiShareReshareToShares2/reShareWhenShareWithOnlyMembershipGroups.feature:41](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareReshareToShares2/reShareWhenShareWithOnlyMembershipGroups.feature#L41) - [apiShareReshareToShares2/reShareWhenShareWithOnlyMembershipGroups.feature:42](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareReshareToShares2/reShareWhenShareWithOnlyMembershipGroups.feature#L42) -- [apiShareReshareToShares3/reShareUpdate.feature:112](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareReshareToShares3/reShareUpdate.feature#L112) -- [apiShareReshareToShares3/reShareUpdate.feature:113](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareReshareToShares3/reShareUpdate.feature#L113) -- [apiShareReshareToShares3/reShareUpdate.feature:131](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareReshareToShares3/reShareUpdate.feature#L131) -- [apiShareReshareToShares3/reShareUpdate.feature:132](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareReshareToShares3/reShareUpdate.feature#L132) - [apiShareReshareToShares3/reShareWithExpiryDate.feature:61](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareReshareToShares3/reShareWithExpiryDate.feature#L61) - [apiShareReshareToShares3/reShareWithExpiryDate.feature:62](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareReshareToShares3/reShareWithExpiryDate.feature#L62) - [apiShareReshareToShares3/reShareWithExpiryDate.feature:121](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareReshareToShares3/reShareWithExpiryDate.feature#L121) @@ -1640,8 +1614,6 @@ Scenario Outline: Moving a file into a shared folder as the sharee and as the sh - [apiShareCreateSpecialToShares1/createShareReceivedInMultipleWays.feature:86](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareCreateSpecialToShares1/createShareReceivedInMultipleWays.feature#L86) - [apiShareCreateSpecialToShares1/createShareReceivedInMultipleWays.feature:106](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareCreateSpecialToShares1/createShareReceivedInMultipleWays.feature#L106) - [apiShareCreateSpecialToShares1/createShareReceivedInMultipleWays.feature:107](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareCreateSpecialToShares1/createShareReceivedInMultipleWays.feature#L107) -- [apiShareCreateSpecialToShares1/createShareReceivedInMultipleWays.feature:201](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareCreateSpecialToShares1/createShareReceivedInMultipleWays.feature#L201) -- [apiShareCreateSpecialToShares1/createShareReceivedInMultipleWays.feature:202](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareCreateSpecialToShares1/createShareReceivedInMultipleWays.feature#L202) - [apiShareCreateSpecialToShares2/createShareGroupAndUserWithSameName.feature:10](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareCreateSpecialToShares2/createShareGroupAndUserWithSameName.feature#L10) - [apiShareCreateSpecialToShares2/createShareGroupAndUserWithSameName.feature:34](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareCreateSpecialToShares2/createShareGroupAndUserWithSameName.feature#L34) - [apiShareCreateSpecialToShares2/createShareGroupAndUserWithSameName.feature:58](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareCreateSpecialToShares2/createShareGroupAndUserWithSameName.feature#L58) @@ -1660,19 +1632,11 @@ Scenario Outline: Moving a file into a shared folder as the sharee and as the sh - [apiShareCreateSpecialToShares2/createShareGroupCaseSensitive.feature:87](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareCreateSpecialToShares2/createShareGroupCaseSensitive.feature#L87) - [apiShareManagementBasicToShares/createShareToSharesFolder.feature:438](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementBasicToShares/createShareToSharesFolder.feature#L438) - [apiShareManagementBasicToShares/createShareToSharesFolder.feature:439](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementBasicToShares/createShareToSharesFolder.feature#L439) -- [apiShareOperationsToShares/accessToShare.feature:71](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares/accessToShare.feature#L71) -- [apiShareOperationsToShares/accessToShare.feature:72](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares/accessToShare.feature#L72) #### [Sharing seems to work but does not work](https://github.com/owncloud/ocis/issues/1303) - [apiShareCreateSpecialToShares1/createShareUniqueReceivedNames.feature:15](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareCreateSpecialToShares1/createShareUniqueReceivedNames.feature#L15) - [apiShareCreateSpecialToShares2/createShareWithDisabledUser.feature:18](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareCreateSpecialToShares2/createShareWithDisabledUser.feature#L18) - [apiShareCreateSpecialToShares2/createShareWithDisabledUser.feature:21](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareCreateSpecialToShares2/createShareWithDisabledUser.feature#L21) -- [apiShareCreateSpecialToShares2/createShareWithInvalidPermissions.feature:51](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareCreateSpecialToShares2/createShareWithInvalidPermissions.feature#L51) -- [apiShareCreateSpecialToShares2/createShareWithInvalidPermissions.feature:52](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareCreateSpecialToShares2/createShareWithInvalidPermissions.feature#L52) -- [apiShareCreateSpecialToShares2/createShareWithInvalidPermissions.feature:70](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareCreateSpecialToShares2/createShareWithInvalidPermissions.feature#L70) -- [apiShareCreateSpecialToShares2/createShareWithInvalidPermissions.feature:71](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareCreateSpecialToShares2/createShareWithInvalidPermissions.feature#L71) -- [apiShareCreateSpecialToShares2/createShareWithInvalidPermissions.feature:72](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareCreateSpecialToShares2/createShareWithInvalidPermissions.feature#L72) -- [apiShareCreateSpecialToShares2/createShareWithInvalidPermissions.feature:73](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareCreateSpecialToShares2/createShareWithInvalidPermissions.feature#L73) - [apiShareManagementToShares/moveReceivedShare.feature:14](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementToShares/moveReceivedShare.feature#L14) - [apiShareManagementToShares/moveReceivedShare.feature:28](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementToShares/moveReceivedShare.feature#L28) - [apiShareManagementToShares/moveReceivedShare.feature:39](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementToShares/moveReceivedShare.feature#L39) @@ -1680,33 +1644,11 @@ Scenario Outline: Moving a file into a shared folder as the sharee and as the sh - [apiShareManagementToShares/moveReceivedShare.feature:71](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementToShares/moveReceivedShare.feature#L71) - [apiShareManagementToShares/moveReceivedShare.feature:73](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementToShares/moveReceivedShare.feature#L73) - [apiShareManagementToShares/moveReceivedShare.feature:88](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementToShares/moveReceivedShare.feature#L88) -- [apiShareManagementToShares/moveReceivedShare.feature:118](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementToShares/moveReceivedShare.feature#L118) -- [apiShareManagementToShares/moveReceivedShare.feature:128](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementToShares/moveReceivedShare.feature#L128) - [apiShareManagementToShares/moveReceivedShare.feature:138](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementToShares/moveReceivedShare.feature#L138) - [apiShareManagementToShares/moveReceivedShare.feature:148](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementToShares/moveReceivedShare.feature#L148) - [apiShareManagementToShares/moveReceivedShare.feature:158](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementToShares/moveReceivedShare.feature#L158) - [apiShareManagementToShares/moveReceivedShare.feature:168](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementToShares/moveReceivedShare.feature#L168) -- [apiShareManagementToShares/moveReceivedShare.feature:197](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementToShares/moveReceivedShare.feature#L197) -- [apiShareManagementToShares/moveReceivedShare.feature:198](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementToShares/moveReceivedShare.feature#L198) -- [apiShareManagementToShares/moveReceivedShare.feature:221](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementToShares/moveReceivedShare.feature#L221) -- [apiShareManagementToShares/moveReceivedShare.feature:222](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementToShares/moveReceivedShare.feature#L222) - [apiShareManagementToShares/moveReceivedShare.feature:224](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementToShares/moveReceivedShare.feature#L224) -- [apiShareOperationsToShares/getWebDAVSharePermissions.feature:59](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares/getWebDAVSharePermissions.feature#L59) -- [apiShareOperationsToShares/getWebDAVSharePermissions.feature:60](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares/getWebDAVSharePermissions.feature#L60) -- [apiShareOperationsToShares/getWebDAVSharePermissions.feature:94](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares/getWebDAVSharePermissions.feature#L94) -- [apiShareOperationsToShares/getWebDAVSharePermissions.feature:95](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares/getWebDAVSharePermissions.feature#L95) -- [apiShareOperationsToShares/getWebDAVSharePermissions.feature:129](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares/getWebDAVSharePermissions.feature#L129) -- [apiShareOperationsToShares/getWebDAVSharePermissions.feature:130](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares/getWebDAVSharePermissions.feature#L130) -- [apiShareOperationsToShares/getWebDAVSharePermissions.feature:177](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares/getWebDAVSharePermissions.feature#L177) -- [apiShareOperationsToShares/getWebDAVSharePermissions.feature:178](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares/getWebDAVSharePermissions.feature#L178) -- [apiShareOperationsToShares/getWebDAVSharePermissions.feature:212](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares/getWebDAVSharePermissions.feature#L212) -- [apiShareOperationsToShares/getWebDAVSharePermissions.feature:213](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares/getWebDAVSharePermissions.feature#L213) -- [apiShareOperationsToShares/getWebDAVSharePermissions.feature:247](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares/getWebDAVSharePermissions.feature#L247) -- [apiShareOperationsToShares/getWebDAVSharePermissions.feature:248](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares/getWebDAVSharePermissions.feature#L248) -- [apiShareOperationsToShares/getWebDAVSharePermissions.feature:282](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares/getWebDAVSharePermissions.feature#L282) -- [apiShareOperationsToShares/getWebDAVSharePermissions.feature:283](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares/getWebDAVSharePermissions.feature#L283) -- [apiShareOperationsToShares/getWebDAVSharePermissions.feature:317](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares/getWebDAVSharePermissions.feature#L317) -- [apiShareOperationsToShares/getWebDAVSharePermissions.feature:318](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares/getWebDAVSharePermissions.feature#L318) - [apiShareUpdateToShares/updateShare.feature:92](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareUpdateToShares/updateShare.feature#L92) - [apiShareUpdateToShares/updateShare.feature:93](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareUpdateToShares/updateShare.feature#L93) - [apiShareUpdateToShares/updateShare.feature:94](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareUpdateToShares/updateShare.feature#L94) @@ -1720,11 +1662,6 @@ Scenario Outline: Moving a file into a shared folder as the sharee and as the sh - [apiShareCreateSpecialToShares2/createShareDefaultFolderForReceivedShares.feature:21](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareCreateSpecialToShares2/createShareDefaultFolderForReceivedShares.feature#L21) - [apiShareCreateSpecialToShares2/createShareDefaultFolderForReceivedShares.feature:22](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareCreateSpecialToShares2/createShareDefaultFolderForReceivedShares.feature#L22) -#### [Group shares support ](https://github.com/owncloud/ocis/issues/1289) -- [apiShareOperationsToShares/gettingShares.feature:103](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares/gettingShares.feature#L103) -- [apiShareOperationsToShares/gettingShares.feature:104](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares/gettingShares.feature#L104) -- [apiShareOperationsToShares/gettingShares.feature:184](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares/gettingShares.feature#L184) - #### [various sharing settings cannot be set](https://github.com/owncloud/ocis/issues/1328) #### [Group shares support](https://github.com/owncloud/ocis/issues/1289) - [apiShareUpdateToShares/updateShare.feature:290](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareUpdateToShares/updateShare.feature#L290) @@ -1740,22 +1677,14 @@ Scenario Outline: Moving a file into a shared folder as the sharee and as the sh #### [Sharing seems to work but does not work](https://github.com/owncloud/ocis/issues/1303) - [apiShareUpdateToShares/updateShare.feature:61](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareUpdateToShares/updateShare.feature#L61) - [apiShareUpdateToShares/updateShare.feature:62](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareUpdateToShares/updateShare.feature#L62) -- [apiShareUpdateToShares/updateShare.feature:75](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareUpdateToShares/updateShare.feature#L75) -- [apiShareUpdateToShares/updateShare.feature:76](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareUpdateToShares/updateShare.feature#L76) - [apiShareUpdateToShares/updateShare.feature:115](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareUpdateToShares/updateShare.feature#L115) - [apiShareUpdateToShares/updateShare.feature:116](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareUpdateToShares/updateShare.feature#L116) - [apiShareUpdateToShares/updateShare.feature:117](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareUpdateToShares/updateShare.feature#L117) - [apiShareUpdateToShares/updateShare.feature:118](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareUpdateToShares/updateShare.feature#L118) - [apiShareUpdateToShares/updateShare.feature:119](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareUpdateToShares/updateShare.feature#L119) - [apiShareUpdateToShares/updateShare.feature:120](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareUpdateToShares/updateShare.feature#L120) -- [apiShareUpdateToShares/updateShare.feature:252](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareUpdateToShares/updateShare.feature#L252) -- [apiShareUpdateToShares/updateShare.feature:253](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareUpdateToShares/updateShare.feature#L253) - [apiShareUpdateToShares/updateShare.feature:265](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareUpdateToShares/updateShare.feature#L265) - [apiShareUpdateToShares/updateShare.feature:266](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareUpdateToShares/updateShare.feature#L266) -- [apiShareUpdateToShares/updateShareGroupAndUserWithSameName.feature:34](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareUpdateToShares/updateShareGroupAndUserWithSameName.feature#L34) -- [apiShareUpdateToShares/updateShareGroupAndUserWithSameName.feature:35](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareUpdateToShares/updateShareGroupAndUserWithSameName.feature#L35) -- [apiShareUpdateToShares/updateShareGroupAndUserWithSameName.feature:54](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareUpdateToShares/updateShareGroupAndUserWithSameName.feature#L54) -- [apiShareUpdateToShares/updateShareGroupAndUserWithSameName.feature:55](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareUpdateToShares/updateShareGroupAndUserWithSameName.feature#L55) #### [Share additional info](https://github.com/owncloud/ocis/issues/1253) #### [Share extra attributes](https://github.com/owncloud/ocis/issues/1224) @@ -2373,4 +2302,3 @@ Scenario Outline: Do a PROPFIND to a non-existing URL - [apiTranslation/translation.feature:29](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiTranslation/translation.feature#L29) - [apiTranslation/translation.feature:30](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiTranslation/translation.feature#L30) - diff --git a/tests/acceptance/expected-failures-API-on-OWNCLOUD-storage.md b/tests/acceptance/expected-failures-API-on-OWNCLOUD-storage.md index 59925fa83c3..29887707e3a 100644 --- a/tests/acceptance/expected-failures-API-on-OWNCLOUD-storage.md +++ b/tests/acceptance/expected-failures-API-on-OWNCLOUD-storage.md @@ -750,15 +750,6 @@ The following scenarios fail on OWNCLOUD storage but not on OCIS storage: - [apiWebdavEtagPropagation1/moveFileFolder.feature:318](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiWebdavEtagPropagation1/moveFileFolder.feature#L318) - [apiWebdavEtagPropagation1/moveFileFolder.feature:334](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiWebdavEtagPropagation1/moveFileFolder.feature#L334) -#### [sharing with group not available](https://github.com/owncloud/product/issues/293) - -- [apiShareOperationsToShares/uploadToShare.feature:39](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares/uploadToShare.feature#L39) -- [apiShareOperationsToShares/uploadToShare.feature:40](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares/uploadToShare.feature#L40) -- [apiShareOperationsToShares/uploadToShare.feature:91](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares/uploadToShare.feature#L91) -- [apiShareOperationsToShares/uploadToShare.feature:92](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares/uploadToShare.feature#L92) -- [apiShareOperationsToShares/uploadToShare.feature:139](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares/uploadToShare.feature#L139) -- [apiShareOperationsToShares/uploadToShare.feature:140](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares/uploadToShare.feature#L140) - #### [Checksum feature](https://github.com/owncloud/ocis/issues/1291) - [apiMain/checksums.feature:119](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiMain/checksums.feature#L119) Scenario: Sharing a file with checksum should return the checksum in the propfind using new DAV path - [apiMain/checksums.feature:129](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiMain/checksums.feature#L129) Scenario: Sharing and modifying a file should return correct checksum in the propfind using new DAV path @@ -844,12 +835,7 @@ The following scenarios fail on OWNCLOUD storage but not on OCIS storage: - [apiSharees/sharees.feature:561](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiSharees/sharees.feature#L561) #### [sharing with group not available](https://github.com/owncloud/product/issues/293) -- [apiShareManagementToShares/acceptShares.feature:22](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementToShares/acceptShares.feature#L22) - [apiShareManagementToShares/acceptShares.feature:223](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementToShares/acceptShares.feature#L223) -- [apiShareManagementToShares/acceptShares.feature:270](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementToShares/acceptShares.feature#L270) -- [apiShareManagementToShares/acceptShares.feature:342](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementToShares/acceptShares.feature#L342) -- [apiShareManagementToShares/acceptShares.feature:378](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementToShares/acceptShares.feature#L378) -- [apiShareManagementToShares/acceptShares.feature:417](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementToShares/acceptShares.feature#L417) #### User cannot create a folder named Share - [apiShareManagementToShares/acceptShares.feature:279](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementToShares/acceptShares.feature#L279) @@ -888,7 +874,6 @@ The following scenarios fail on OWNCLOUD storage but not on OCIS storage: - [apiShareManagementBasicToShares/createShareToSharesFolder.feature:305](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementBasicToShares/createShareToSharesFolder.feature#L305) - [apiShareManagementBasicToShares/createShareToSharesFolder.feature:306](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementBasicToShares/createShareToSharesFolder.feature#L306) - [apiShareManagementBasicToShares/deleteShareFromShares.feature:46](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementBasicToShares/deleteShareFromShares.feature#L46) -- [apiShareManagementToShares/mergeShare.feature:32](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementToShares/mergeShare.feature#L32) - [apiShareManagementToShares/mergeShare.feature:42](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementToShares/mergeShare.feature#L42) - [apiShareManagementToShares/mergeShare.feature:89](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementToShares/mergeShare.feature#L89) @@ -910,8 +895,6 @@ The following scenarios fail on OWNCLOUD storage but not on OCIS storage: - [apiShareManagementBasicToShares/createShareToSharesFolder.feature:362](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementBasicToShares/createShareToSharesFolder.feature#L362) - [apiShareManagementBasicToShares/createShareToSharesFolder.feature:363](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementBasicToShares/createShareToSharesFolder.feature#L363) - [apiShareManagementBasicToShares/createShareToSharesFolder.feature:392](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementBasicToShares/createShareToSharesFolder.feature#L392) -- [apiShareManagementBasicToShares/createShareToSharesFolder.feature:461](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementBasicToShares/createShareToSharesFolder.feature#L461) -- [apiShareManagementBasicToShares/createShareToSharesFolder.feature:462](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementBasicToShares/createShareToSharesFolder.feature#L462) - [apiShareManagementBasicToShares/createShareToSharesFolder.feature:497](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementBasicToShares/createShareToSharesFolder.feature#L497) - [apiShareManagementBasicToShares/createShareToSharesFolder.feature:498](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementBasicToShares/createShareToSharesFolder.feature#L498) - [apiShareManagementBasicToShares/createShareToSharesFolder.feature:501](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementBasicToShares/createShareToSharesFolder.feature#L501) @@ -1145,8 +1128,6 @@ cannot share a folder with create permission - [apiShareManagementBasicToShares/excludeGroupFromReceivingSharesToSharesFolder.feature:70](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementBasicToShares/excludeGroupFromReceivingSharesToSharesFolder.feature#L70) - [apiShareManagementBasicToShares/excludeGroupFromReceivingSharesToSharesFolder.feature:97](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementBasicToShares/excludeGroupFromReceivingSharesToSharesFolder.feature#L97) - [apiShareManagementBasicToShares/excludeGroupFromReceivingSharesToSharesFolder.feature:98](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementBasicToShares/excludeGroupFromReceivingSharesToSharesFolder.feature#L98) -- [apiShareManagementBasicToShares/excludeGroupFromReceivingSharesToSharesFolder.feature:135](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementBasicToShares/excludeGroupFromReceivingSharesToSharesFolder.feature#L135) -- [apiShareManagementBasicToShares/excludeGroupFromReceivingSharesToSharesFolder.feature:136](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementBasicToShares/excludeGroupFromReceivingSharesToSharesFolder.feature#L136) #### [Public cannot upload file with mtime set on a public link share with new version of WebDAV API](https://github.com/owncloud/core/issues/37605) @@ -1454,10 +1435,6 @@ The following scenarios fail on OWNCLOUD storage but not on OCIS storage: - [apiShareReshareToShares2/reShareWhenShareWithOnlyMembershipGroups.feature:25](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareReshareToShares2/reShareWhenShareWithOnlyMembershipGroups.feature#L25) - [apiShareReshareToShares2/reShareWhenShareWithOnlyMembershipGroups.feature:41](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareReshareToShares2/reShareWhenShareWithOnlyMembershipGroups.feature#L41) - [apiShareReshareToShares2/reShareWhenShareWithOnlyMembershipGroups.feature:42](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareReshareToShares2/reShareWhenShareWithOnlyMembershipGroups.feature#L42) -- [apiShareReshareToShares3/reShareUpdate.feature:112](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareReshareToShares3/reShareUpdate.feature#L112) -- [apiShareReshareToShares3/reShareUpdate.feature:113](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareReshareToShares3/reShareUpdate.feature#L113) -- [apiShareReshareToShares3/reShareUpdate.feature:131](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareReshareToShares3/reShareUpdate.feature#L131) -- [apiShareReshareToShares3/reShareUpdate.feature:132](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareReshareToShares3/reShareUpdate.feature#L132) - [apiShareReshareToShares3/reShareWithExpiryDate.feature:61](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareReshareToShares3/reShareWithExpiryDate.feature#L61) - [apiShareReshareToShares3/reShareWithExpiryDate.feature:62](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareReshareToShares3/reShareWithExpiryDate.feature#L62) - [apiShareReshareToShares3/reShareWithExpiryDate.feature:121](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareReshareToShares3/reShareWithExpiryDate.feature#L121) @@ -1757,8 +1734,6 @@ Scenario Outline: Moving a file into a shared folder as the sharee and as the sh - [apiShareCreateSpecialToShares1/createShareReceivedInMultipleWays.feature:86](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareCreateSpecialToShares1/createShareReceivedInMultipleWays.feature#L86) - [apiShareCreateSpecialToShares1/createShareReceivedInMultipleWays.feature:106](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareCreateSpecialToShares1/createShareReceivedInMultipleWays.feature#L106) - [apiShareCreateSpecialToShares1/createShareReceivedInMultipleWays.feature:107](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareCreateSpecialToShares1/createShareReceivedInMultipleWays.feature#L107) -- [apiShareCreateSpecialToShares1/createShareReceivedInMultipleWays.feature:201](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareCreateSpecialToShares1/createShareReceivedInMultipleWays.feature#L201) -- [apiShareCreateSpecialToShares1/createShareReceivedInMultipleWays.feature:202](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareCreateSpecialToShares1/createShareReceivedInMultipleWays.feature#L202) - [apiShareCreateSpecialToShares2/createShareGroupAndUserWithSameName.feature:10](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareCreateSpecialToShares2/createShareGroupAndUserWithSameName.feature#L10) - [apiShareCreateSpecialToShares2/createShareGroupAndUserWithSameName.feature:34](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareCreateSpecialToShares2/createShareGroupAndUserWithSameName.feature#L34) - [apiShareCreateSpecialToShares2/createShareGroupAndUserWithSameName.feature:58](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareCreateSpecialToShares2/createShareGroupAndUserWithSameName.feature#L58) @@ -1777,19 +1752,11 @@ Scenario Outline: Moving a file into a shared folder as the sharee and as the sh - [apiShareCreateSpecialToShares2/createShareGroupCaseSensitive.feature:87](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareCreateSpecialToShares2/createShareGroupCaseSensitive.feature#L87) - [apiShareManagementBasicToShares/createShareToSharesFolder.feature:438](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementBasicToShares/createShareToSharesFolder.feature#L438) - [apiShareManagementBasicToShares/createShareToSharesFolder.feature:439](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementBasicToShares/createShareToSharesFolder.feature#L439) -- [apiShareOperationsToShares/accessToShare.feature:71](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares/accessToShare.feature#L71) -- [apiShareOperationsToShares/accessToShare.feature:72](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares/accessToShare.feature#L72) #### [Sharing seems to work but does not work](https://github.com/owncloud/ocis/issues/1303) - [apiShareCreateSpecialToShares1/createShareUniqueReceivedNames.feature:15](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareCreateSpecialToShares1/createShareUniqueReceivedNames.feature#L15) - [apiShareCreateSpecialToShares2/createShareWithDisabledUser.feature:18](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareCreateSpecialToShares2/createShareWithDisabledUser.feature#L18) - [apiShareCreateSpecialToShares2/createShareWithDisabledUser.feature:21](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareCreateSpecialToShares2/createShareWithDisabledUser.feature#L21) -- [apiShareCreateSpecialToShares2/createShareWithInvalidPermissions.feature:51](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareCreateSpecialToShares2/createShareWithInvalidPermissions.feature#L51) -- [apiShareCreateSpecialToShares2/createShareWithInvalidPermissions.feature:52](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareCreateSpecialToShares2/createShareWithInvalidPermissions.feature#L52) -- [apiShareCreateSpecialToShares2/createShareWithInvalidPermissions.feature:70](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareCreateSpecialToShares2/createShareWithInvalidPermissions.feature#L70) -- [apiShareCreateSpecialToShares2/createShareWithInvalidPermissions.feature:71](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareCreateSpecialToShares2/createShareWithInvalidPermissions.feature#L71) -- [apiShareCreateSpecialToShares2/createShareWithInvalidPermissions.feature:72](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareCreateSpecialToShares2/createShareWithInvalidPermissions.feature#L72) -- [apiShareCreateSpecialToShares2/createShareWithInvalidPermissions.feature:73](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareCreateSpecialToShares2/createShareWithInvalidPermissions.feature#L73) - [apiShareManagementToShares/moveReceivedShare.feature:14](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementToShares/moveReceivedShare.feature#L14) - [apiShareManagementToShares/moveReceivedShare.feature:28](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementToShares/moveReceivedShare.feature#L28) - [apiShareManagementToShares/moveReceivedShare.feature:39](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementToShares/moveReceivedShare.feature#L39) @@ -1805,17 +1772,11 @@ Scenario Outline: Moving a file into a shared folder as the sharee and as the sh - [apiShareManagementToShares/moveReceivedShare.feature:168](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementToShares/moveReceivedShare.feature#L168) - [apiShareManagementToShares/moveReceivedShare.feature:197](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementToShares/moveReceivedShare.feature#L197) - [apiShareManagementToShares/moveReceivedShare.feature:198](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementToShares/moveReceivedShare.feature#L198) -- [apiShareManagementToShares/moveReceivedShare.feature:221](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementToShares/moveReceivedShare.feature#L221) -- [apiShareManagementToShares/moveReceivedShare.feature:222](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementToShares/moveReceivedShare.feature#L222) - [apiShareManagementToShares/moveReceivedShare.feature:224](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareManagementToShares/moveReceivedShare.feature#L224) -- [apiShareOperationsToShares/getWebDAVSharePermissions.feature:59](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares/getWebDAVSharePermissions.feature#L59) -- [apiShareOperationsToShares/getWebDAVSharePermissions.feature:60](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares/getWebDAVSharePermissions.feature#L60) - [apiShareOperationsToShares/getWebDAVSharePermissions.feature:94](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares/getWebDAVSharePermissions.feature#L94) - [apiShareOperationsToShares/getWebDAVSharePermissions.feature:95](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares/getWebDAVSharePermissions.feature#L95) - [apiShareOperationsToShares/getWebDAVSharePermissions.feature:129](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares/getWebDAVSharePermissions.feature#L129) - [apiShareOperationsToShares/getWebDAVSharePermissions.feature:130](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares/getWebDAVSharePermissions.feature#L130) -- [apiShareOperationsToShares/getWebDAVSharePermissions.feature:177](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares/getWebDAVSharePermissions.feature#L177) -- [apiShareOperationsToShares/getWebDAVSharePermissions.feature:178](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares/getWebDAVSharePermissions.feature#L178) - [apiShareOperationsToShares/getWebDAVSharePermissions.feature:212](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares/getWebDAVSharePermissions.feature#L212) - [apiShareOperationsToShares/getWebDAVSharePermissions.feature:213](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares/getWebDAVSharePermissions.feature#L213) - [apiShareOperationsToShares/getWebDAVSharePermissions.feature:247](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares/getWebDAVSharePermissions.feature#L247) @@ -1859,11 +1820,6 @@ The following scenarios fail on OWNCLOUD storage but not on OCIS storage: - [apiShareCreateSpecialToShares2/createShareDefaultFolderForReceivedShares.feature:21](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareCreateSpecialToShares2/createShareDefaultFolderForReceivedShares.feature#L21) - [apiShareCreateSpecialToShares2/createShareDefaultFolderForReceivedShares.feature:22](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareCreateSpecialToShares2/createShareDefaultFolderForReceivedShares.feature#L22) -#### [Group shares support ](https://github.com/owncloud/ocis/issues/1289) -- [apiShareOperationsToShares/gettingShares.feature:103](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares/gettingShares.feature#L103) -- [apiShareOperationsToShares/gettingShares.feature:104](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares/gettingShares.feature#L104) -- [apiShareOperationsToShares/gettingShares.feature:184](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareOperationsToShares/gettingShares.feature#L184) - #### [various sharing settings cannot be set](https://github.com/owncloud/ocis/issues/1328) #### [Group shares support](https://github.com/owncloud/ocis/issues/1289) - [apiShareUpdateToShares/updateShare.feature:290](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareUpdateToShares/updateShare.feature#L290) @@ -1879,22 +1835,14 @@ The following scenarios fail on OWNCLOUD storage but not on OCIS storage: #### [Sharing seems to work but does not work](https://github.com/owncloud/ocis/issues/1303) - [apiShareUpdateToShares/updateShare.feature:61](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareUpdateToShares/updateShare.feature#L61) - [apiShareUpdateToShares/updateShare.feature:62](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareUpdateToShares/updateShare.feature#L62) -- [apiShareUpdateToShares/updateShare.feature:75](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareUpdateToShares/updateShare.feature#L75) -- [apiShareUpdateToShares/updateShare.feature:76](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareUpdateToShares/updateShare.feature#L76) - [apiShareUpdateToShares/updateShare.feature:115](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareUpdateToShares/updateShare.feature#L115) - [apiShareUpdateToShares/updateShare.feature:116](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareUpdateToShares/updateShare.feature#L116) - [apiShareUpdateToShares/updateShare.feature:117](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareUpdateToShares/updateShare.feature#L117) - [apiShareUpdateToShares/updateShare.feature:118](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareUpdateToShares/updateShare.feature#L118) - [apiShareUpdateToShares/updateShare.feature:119](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareUpdateToShares/updateShare.feature#L119) - [apiShareUpdateToShares/updateShare.feature:120](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareUpdateToShares/updateShare.feature#L120) -- [apiShareUpdateToShares/updateShare.feature:252](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareUpdateToShares/updateShare.feature#L252) -- [apiShareUpdateToShares/updateShare.feature:253](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareUpdateToShares/updateShare.feature#L253) - [apiShareUpdateToShares/updateShare.feature:265](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareUpdateToShares/updateShare.feature#L265) - [apiShareUpdateToShares/updateShare.feature:266](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareUpdateToShares/updateShare.feature#L266) -- [apiShareUpdateToShares/updateShareGroupAndUserWithSameName.feature:34](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareUpdateToShares/updateShareGroupAndUserWithSameName.feature#L34) -- [apiShareUpdateToShares/updateShareGroupAndUserWithSameName.feature:35](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareUpdateToShares/updateShareGroupAndUserWithSameName.feature#L35) -- [apiShareUpdateToShares/updateShareGroupAndUserWithSameName.feature:54](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareUpdateToShares/updateShareGroupAndUserWithSameName.feature#L54) -- [apiShareUpdateToShares/updateShareGroupAndUserWithSameName.feature:55](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiShareUpdateToShares/updateShareGroupAndUserWithSameName.feature#L55) #### [Share additional info](https://github.com/owncloud/ocis/issues/1253) #### [Share extra attributes](https://github.com/owncloud/ocis/issues/1224) @@ -2503,4 +2451,3 @@ Scenario Outline: Do a PROPFIND to a non-existing URL - [apiTranslation/translation.feature:29](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiTranslation/translation.feature#L29) - [apiTranslation/translation.feature:30](https://github.com/owncloud/core/blob/master/tests/acceptance/features/apiTranslation/translation.feature#L30) - diff --git a/tests/acceptance/features/apiBugDemonstration/apiShareCreateSpecial2-createShareWithInvalidPermissions.feature b/tests/acceptance/features/apiBugDemonstration/apiShareCreateSpecial2-createShareWithInvalidPermissions.feature deleted file mode 100644 index a2ef0a901c8..00000000000 --- a/tests/acceptance/features/apiBugDemonstration/apiShareCreateSpecial2-createShareWithInvalidPermissions.feature +++ /dev/null @@ -1,45 +0,0 @@ -@api @files_sharing-app-required @issue-ocis-reva-243 -Feature: cannot share resources with invalid permissions - - Background: - Given user "Alice" has been created with default attributes and without skeleton files - And user "Alice" has uploaded file with content "some data" to "/textfile0.txt" - And user "Alice" has created folder "/PARENT" - - @issue-ocis-reva-45 @issue-ocis-reva-243 - # after fixing all issues delete this Scenario and use the one from oC10 core - Scenario Outline: Cannot create a share of a file with a user with only create permission - Given using OCS API version "" - And user "Brian" has been created with default attributes and without skeleton files - When user "Alice" creates a share using the sharing API with settings - | path | textfile0.txt | - | shareWith | Brian | - | shareType | user | - | permissions | create | - Then the OCS status code should be "" or "" - And the HTTP status code should be "" or "" - And as "Brian" entry "textfile0.txt" should not exist - Examples: - | ocs_api_version | ocs_status_code | eos_status_code | http_status_code_ocs | http_status_code_eos | - | 1 | 100 | 996 | 200 | 500 | - | 2 | 200 | 996 | 200 | 500 | - - @issue-ocis-reva-45 @issue-ocis-reva-243 - # after fixing all issues delete this Scenario and use the one from oC10 core - Scenario Outline: Cannot create a share of a file with a user with only (create,delete) permission - Given using OCS API version "" - And user "Brian" has been created with default attributes and without skeleton files - When user "Alice" creates a share using the sharing API with settings - | path | textfile0.txt | - | shareWith | Brian | - | shareType | user | - | permissions | | - Then the OCS status code should be "" or "" - And the HTTP status code should be "" or "" - And as "Brian" entry "textfile0.txt" should not exist - Examples: - | ocs_api_version | eos_status_code | ocs_status_code | http_status_code_ocs | http_status_code_eos | permissions | - | 1 | 100 | 996 | 200 | 500 | delete | - | 2 | 200 | 996 | 200 | 500 | delete | - | 1 | 100 | 996 | 200 | 500 | create,delete | - | 2 | 200 | 996 | 200 | 500 | create,delete | From bafa6b9c810bb7bab26614b197ea750325e8e8c7 Mon Sep 17 00:00:00 2001 From: Ishank Arora Date: Mon, 15 Feb 2021 19:28:12 +0100 Subject: [PATCH 5/6] Upgrade reva version --- accounts/go.mod | 2 +- accounts/go.sum | 4 ++-- ocis-pkg/go.mod | 2 +- ocis-pkg/go.sum | 4 ++-- ocis/go.sum | 4 ++-- ocs/go.mod | 2 +- ocs/go.sum | 4 ++-- proxy/go.mod | 2 +- proxy/go.sum | 4 ++-- storage/go.sum | 4 ++-- storage/pkg/command/gateway.go | 1 - 11 files changed, 16 insertions(+), 17 deletions(-) diff --git a/accounts/go.mod b/accounts/go.mod index a1335ada2b7..7b564a3c54d 100644 --- a/accounts/go.mod +++ b/accounts/go.mod @@ -8,7 +8,7 @@ require ( contrib.go.opencensus.io/exporter/zipkin v0.1.1 github.com/Masterminds/sprig/v3 v3.2.2 // indirect github.com/cs3org/go-cs3apis v0.0.0-20210209082852-35ace33082f5 - github.com/cs3org/reva v1.5.2-0.20210215094754-dda48c9cb779 + github.com/cs3org/reva v1.6.0 github.com/go-chi/chi v4.1.2+incompatible github.com/go-chi/render v1.0.1 github.com/gofrs/uuid v3.3.0+incompatible diff --git a/accounts/go.sum b/accounts/go.sum index 668f85fd524..e57c55fcf9f 100644 --- a/accounts/go.sum +++ b/accounts/go.sum @@ -231,8 +231,8 @@ github.com/cs3org/reva v1.2.2-0.20200924071957-e6676516e61e h1:khITGSnfDXtByQsLe github.com/cs3org/reva v1.2.2-0.20200924071957-e6676516e61e/go.mod h1:DOV5SjpOBKN+aWfOHLdA4KiLQkpyC786PQaXEdRAZ0M= github.com/cs3org/reva v1.5.2-0.20210212085611-d8aa2eb3ec9c h1:fyo4TNiZdfQS27XHnAMb+S2wkdlmBf6ZLkU4uHEgWSA= github.com/cs3org/reva v1.5.2-0.20210212085611-d8aa2eb3ec9c/go.mod h1:24c68Ys3h7srGohymDKSXakN4OrhzABJoKFoMeSIBvk= -github.com/cs3org/reva v1.5.2-0.20210215094754-dda48c9cb779 h1:LJdCYCmoZzrOfUfEt7nngzpPr14ilZGJ0hi9puwxhlE= -github.com/cs3org/reva v1.5.2-0.20210215094754-dda48c9cb779/go.mod h1:3IWlJ4RcYYu0NEnlvP9QG66Inx7F0BtVLJWXit9Q5aw= +github.com/cs3org/reva v1.6.0 h1:xIhO7UtXQZbjYNeekaeQtZRo+HjZWWukCotb1tO4qMA= +github.com/cs3org/reva v1.6.0/go.mod h1:3IWlJ4RcYYu0NEnlvP9QG66Inx7F0BtVLJWXit9Q5aw= github.com/cucumber/godog v0.8.1/go.mod h1:vSh3r/lM+psC1BPXvdkSEuNjmXfpVqrMGYAElF6hxnA= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= diff --git a/ocis-pkg/go.mod b/ocis-pkg/go.mod index 723b3fe9875..02c8b15a9f7 100644 --- a/ocis-pkg/go.mod +++ b/ocis-pkg/go.mod @@ -7,7 +7,7 @@ require ( github.com/ascarter/requestid v0.0.0-20170313220838-5b76ab3d4aee github.com/coreos/go-oidc v2.2.1+incompatible github.com/cs3org/go-cs3apis v0.0.0-20210209082852-35ace33082f5 - github.com/cs3org/reva v1.5.2-0.20210215094754-dda48c9cb779 + github.com/cs3org/reva v1.6.0 github.com/go-chi/chi v4.1.2+incompatible github.com/haya14busa/goverage v0.0.0-20180129164344-eec3514a20b5 github.com/iancoleman/strcase v0.1.2 diff --git a/ocis-pkg/go.sum b/ocis-pkg/go.sum index 047599a30e2..08f5bdb93e8 100644 --- a/ocis-pkg/go.sum +++ b/ocis-pkg/go.sum @@ -242,8 +242,8 @@ github.com/cs3org/reva v1.1.0 h1:Gih6ECHvMMGSx523SFluFlDmNMuhYelXYShdWvjvW38= github.com/cs3org/reva v1.1.0/go.mod h1:fBzTrNuAKdQ62ybjpdu8nyhBin90/3/3s6DGQDCdBp4= github.com/cs3org/reva v1.5.2-0.20210212085611-d8aa2eb3ec9c h1:fyo4TNiZdfQS27XHnAMb+S2wkdlmBf6ZLkU4uHEgWSA= github.com/cs3org/reva v1.5.2-0.20210212085611-d8aa2eb3ec9c/go.mod h1:24c68Ys3h7srGohymDKSXakN4OrhzABJoKFoMeSIBvk= -github.com/cs3org/reva v1.5.2-0.20210215094754-dda48c9cb779 h1:LJdCYCmoZzrOfUfEt7nngzpPr14ilZGJ0hi9puwxhlE= -github.com/cs3org/reva v1.5.2-0.20210215094754-dda48c9cb779/go.mod h1:3IWlJ4RcYYu0NEnlvP9QG66Inx7F0BtVLJWXit9Q5aw= +github.com/cs3org/reva v1.6.0 h1:xIhO7UtXQZbjYNeekaeQtZRo+HjZWWukCotb1tO4qMA= +github.com/cs3org/reva v1.6.0/go.mod h1:3IWlJ4RcYYu0NEnlvP9QG66Inx7F0BtVLJWXit9Q5aw= github.com/cucumber/godog v0.8.1/go.mod h1:vSh3r/lM+psC1BPXvdkSEuNjmXfpVqrMGYAElF6hxnA= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= diff --git a/ocis/go.sum b/ocis/go.sum index ccf7d903667..00f7ba2c3c6 100644 --- a/ocis/go.sum +++ b/ocis/go.sum @@ -286,8 +286,8 @@ github.com/cs3org/reva v0.0.2-0.20200115110931-4c7513415ec5/go.mod h1:Hk3eCcdhtv github.com/cs3org/reva v1.1.0/go.mod h1:fBzTrNuAKdQ62ybjpdu8nyhBin90/3/3s6DGQDCdBp4= github.com/cs3org/reva v1.5.2-0.20210212085611-d8aa2eb3ec9c h1:fyo4TNiZdfQS27XHnAMb+S2wkdlmBf6ZLkU4uHEgWSA= github.com/cs3org/reva v1.5.2-0.20210212085611-d8aa2eb3ec9c/go.mod h1:24c68Ys3h7srGohymDKSXakN4OrhzABJoKFoMeSIBvk= -github.com/cs3org/reva v1.5.2-0.20210215094754-dda48c9cb779 h1:LJdCYCmoZzrOfUfEt7nngzpPr14ilZGJ0hi9puwxhlE= -github.com/cs3org/reva v1.5.2-0.20210215094754-dda48c9cb779/go.mod h1:3IWlJ4RcYYu0NEnlvP9QG66Inx7F0BtVLJWXit9Q5aw= +github.com/cs3org/reva v1.6.0 h1:xIhO7UtXQZbjYNeekaeQtZRo+HjZWWukCotb1tO4qMA= +github.com/cs3org/reva v1.6.0/go.mod h1:3IWlJ4RcYYu0NEnlvP9QG66Inx7F0BtVLJWXit9Q5aw= github.com/cucumber/godog v0.8.1/go.mod h1:vSh3r/lM+psC1BPXvdkSEuNjmXfpVqrMGYAElF6hxnA= github.com/cznic/b v0.0.0-20181122101859-a26611c4d92d h1:SwD98825d6bdB+pEuTxWOXiSjBrHdOl/UVp75eI7JT8= github.com/cznic/b v0.0.0-20181122101859-a26611c4d92d/go.mod h1:URriBxXwVq5ijiJ12C7iIZqlA69nTlI+LgI6/pwftG8= diff --git a/ocs/go.mod b/ocs/go.mod index 24d0c4e2fa8..55e7c213681 100644 --- a/ocs/go.mod +++ b/ocs/go.mod @@ -9,7 +9,7 @@ require ( github.com/UnnoTed/fileb0x v1.1.4 github.com/bmatcuk/doublestar v1.3.4 // indirect github.com/cs3org/go-cs3apis v0.0.0-20210209082852-35ace33082f5 - github.com/cs3org/reva v1.5.2-0.20210215094754-dda48c9cb779 + github.com/cs3org/reva v1.6.0 github.com/go-chi/chi v4.1.2+incompatible github.com/go-chi/render v1.0.1 github.com/golang/protobuf v1.4.3 diff --git a/ocs/go.sum b/ocs/go.sum index 4dc81ab3c41..f75b8afcf11 100644 --- a/ocs/go.sum +++ b/ocs/go.sum @@ -238,8 +238,8 @@ github.com/cs3org/go-cs3apis v0.0.0-20210209082852-35ace33082f5/go.mod h1:UXha4T github.com/cs3org/reva v1.2.2-0.20200924071957-e6676516e61e/go.mod h1:DOV5SjpOBKN+aWfOHLdA4KiLQkpyC786PQaXEdRAZ0M= github.com/cs3org/reva v1.5.2-0.20210212085611-d8aa2eb3ec9c h1:fyo4TNiZdfQS27XHnAMb+S2wkdlmBf6ZLkU4uHEgWSA= github.com/cs3org/reva v1.5.2-0.20210212085611-d8aa2eb3ec9c/go.mod h1:24c68Ys3h7srGohymDKSXakN4OrhzABJoKFoMeSIBvk= -github.com/cs3org/reva v1.5.2-0.20210215094754-dda48c9cb779 h1:LJdCYCmoZzrOfUfEt7nngzpPr14ilZGJ0hi9puwxhlE= -github.com/cs3org/reva v1.5.2-0.20210215094754-dda48c9cb779/go.mod h1:3IWlJ4RcYYu0NEnlvP9QG66Inx7F0BtVLJWXit9Q5aw= +github.com/cs3org/reva v1.6.0 h1:xIhO7UtXQZbjYNeekaeQtZRo+HjZWWukCotb1tO4qMA= +github.com/cs3org/reva v1.6.0/go.mod h1:3IWlJ4RcYYu0NEnlvP9QG66Inx7F0BtVLJWXit9Q5aw= github.com/cucumber/godog v0.8.1/go.mod h1:vSh3r/lM+psC1BPXvdkSEuNjmXfpVqrMGYAElF6hxnA= github.com/cznic/b v0.0.0-20181122101859-a26611c4d92d/go.mod h1:URriBxXwVq5ijiJ12C7iIZqlA69nTlI+LgI6/pwftG8= github.com/cznic/mathutil v0.0.0-20181122101859-297441e03548/go.mod h1:e6NPNENfs9mPDVNRekM7lKScauxd5kXTr1Mfyig6TDM= diff --git a/proxy/go.mod b/proxy/go.mod index 58bcc3ed665..acca4ed1cae 100644 --- a/proxy/go.mod +++ b/proxy/go.mod @@ -8,7 +8,7 @@ require ( contrib.go.opencensus.io/exporter/zipkin v0.1.1 github.com/coreos/go-oidc v2.2.1+incompatible github.com/cs3org/go-cs3apis v0.0.0-20210209082852-35ace33082f5 - github.com/cs3org/reva v1.5.2-0.20210215094754-dda48c9cb779 + github.com/cs3org/reva v1.6.0 github.com/dgrijalva/jwt-go v3.2.0+incompatible github.com/justinas/alice v1.2.0 github.com/micro/cli/v2 v2.1.2 diff --git a/proxy/go.sum b/proxy/go.sum index 1f4372fc175..1e010c6ec77 100644 --- a/proxy/go.sum +++ b/proxy/go.sum @@ -235,8 +235,8 @@ github.com/cs3org/go-cs3apis v0.0.0-20210209082852-35ace33082f5/go.mod h1:UXha4T github.com/cs3org/reva v1.2.2-0.20200924071957-e6676516e61e/go.mod h1:DOV5SjpOBKN+aWfOHLdA4KiLQkpyC786PQaXEdRAZ0M= github.com/cs3org/reva v1.5.2-0.20210212085611-d8aa2eb3ec9c h1:fyo4TNiZdfQS27XHnAMb+S2wkdlmBf6ZLkU4uHEgWSA= github.com/cs3org/reva v1.5.2-0.20210212085611-d8aa2eb3ec9c/go.mod h1:24c68Ys3h7srGohymDKSXakN4OrhzABJoKFoMeSIBvk= -github.com/cs3org/reva v1.5.2-0.20210215094754-dda48c9cb779 h1:LJdCYCmoZzrOfUfEt7nngzpPr14ilZGJ0hi9puwxhlE= -github.com/cs3org/reva v1.5.2-0.20210215094754-dda48c9cb779/go.mod h1:3IWlJ4RcYYu0NEnlvP9QG66Inx7F0BtVLJWXit9Q5aw= +github.com/cs3org/reva v1.6.0 h1:xIhO7UtXQZbjYNeekaeQtZRo+HjZWWukCotb1tO4qMA= +github.com/cs3org/reva v1.6.0/go.mod h1:3IWlJ4RcYYu0NEnlvP9QG66Inx7F0BtVLJWXit9Q5aw= github.com/cucumber/godog v0.8.1/go.mod h1:vSh3r/lM+psC1BPXvdkSEuNjmXfpVqrMGYAElF6hxnA= github.com/cznic/b v0.0.0-20181122101859-a26611c4d92d/go.mod h1:URriBxXwVq5ijiJ12C7iIZqlA69nTlI+LgI6/pwftG8= github.com/cznic/mathutil v0.0.0-20181122101859-297441e03548/go.mod h1:e6NPNENfs9mPDVNRekM7lKScauxd5kXTr1Mfyig6TDM= diff --git a/storage/go.sum b/storage/go.sum index b06cc2f0208..0cdf9c4bfcc 100644 --- a/storage/go.sum +++ b/storage/go.sum @@ -220,8 +220,8 @@ github.com/cs3org/go-cs3apis v0.0.0-20210209082852-35ace33082f5/go.mod h1:UXha4T github.com/cs3org/reva v1.1.0/go.mod h1:fBzTrNuAKdQ62ybjpdu8nyhBin90/3/3s6DGQDCdBp4= github.com/cs3org/reva v1.5.2-0.20210212085611-d8aa2eb3ec9c h1:fyo4TNiZdfQS27XHnAMb+S2wkdlmBf6ZLkU4uHEgWSA= github.com/cs3org/reva v1.5.2-0.20210212085611-d8aa2eb3ec9c/go.mod h1:24c68Ys3h7srGohymDKSXakN4OrhzABJoKFoMeSIBvk= -github.com/cs3org/reva v1.5.2-0.20210215094754-dda48c9cb779 h1:LJdCYCmoZzrOfUfEt7nngzpPr14ilZGJ0hi9puwxhlE= -github.com/cs3org/reva v1.5.2-0.20210215094754-dda48c9cb779/go.mod h1:3IWlJ4RcYYu0NEnlvP9QG66Inx7F0BtVLJWXit9Q5aw= +github.com/cs3org/reva v1.6.0 h1:xIhO7UtXQZbjYNeekaeQtZRo+HjZWWukCotb1tO4qMA= +github.com/cs3org/reva v1.6.0/go.mod h1:3IWlJ4RcYYu0NEnlvP9QG66Inx7F0BtVLJWXit9Q5aw= github.com/cucumber/godog v0.8.1/go.mod h1:vSh3r/lM+psC1BPXvdkSEuNjmXfpVqrMGYAElF6hxnA= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= diff --git a/storage/pkg/command/gateway.go b/storage/pkg/command/gateway.go index 722c369ff79..d04966efaa8 100644 --- a/storage/pkg/command/gateway.go +++ b/storage/pkg/command/gateway.go @@ -143,7 +143,6 @@ func Gateway(cfg *config.Config) *cli.Command { }, }, } - logger.Info().Msgf("rcfg %+v", rcfg) gr.Add(func() error { err := external.RegisterGRPCEndpoint( From 07843042a5365427c472a9c26554c04f2be7b32a Mon Sep 17 00:00:00 2001 From: Ishank Arora Date: Tue, 16 Feb 2021 14:13:32 +0100 Subject: [PATCH 6/6] Separation of concerns --- changelog/unreleased/reva-group-provider.md | 11 ++- storage/pkg/flagset/groups.go | 69 +------------------ storage/pkg/flagset/rest.go | 75 +++++++++++++++++++++ storage/pkg/flagset/sharing.go | 36 +--------- storage/pkg/flagset/sharingsql.go | 47 +++++++++++++ storage/pkg/flagset/users.go | 67 +----------------- 6 files changed, 135 insertions(+), 170 deletions(-) create mode 100644 storage/pkg/flagset/rest.go create mode 100644 storage/pkg/flagset/sharingsql.go diff --git a/changelog/unreleased/reva-group-provider.md b/changelog/unreleased/reva-group-provider.md index 3aacb370076..043e8a6b548 100644 --- a/changelog/unreleased/reva-group-provider.md +++ b/changelog/unreleased/reva-group-provider.md @@ -1,3 +1,10 @@ -Enhancement: Add config for group provider service and sharing SQL driver +Enhancement: Enable group sharing and add config for sharing SQL driver -https://github.com/owncloud/ocis/pull/1626/files +This PR adds config to support sharing with groups. It also introduces a +breaking change for the CS3APIs definitions since grantees can now refer to both +users as well as groups. Since we store the grantee information in a json file, +`/var/tmp/ocis/storage/shares.json`, its previous version needs to be removed as +we won't be able to unmarshal data corresponding to the previous definitions. + +https://github.com/owncloud/ocis/pull/1626 +https://github.com/cs3org/reva/pull/1453 diff --git a/storage/pkg/flagset/groups.go b/storage/pkg/flagset/groups.go index c3f4e3f4168..e472a068e2a 100644 --- a/storage/pkg/flagset/groups.go +++ b/storage/pkg/flagset/groups.go @@ -64,85 +64,20 @@ func GroupsWithConfig(cfg *config.Config) []cli.Flag { EnvVars: []string{"STORAGE_GROUPPROVIDER_JSON"}, Destination: &cfg.Reva.Groups.JSON, }, - &cli.IntFlag{ + &cli.IntFlag{ Name: "group-members-cache-expiration", Value: 5, Usage: "Time in minutes for redis cache expiration.", EnvVars: []string{"STORAGE_GROUP_CACHE_EXPIRATION"}, Destination: &cfg.Reva.Groups.GroupMembersCacheExpiration, }, - - // rest driver - - &cli.StringFlag{ - Name: "rest-client-id", - Value: "", - Usage: "User/group rest driver Client ID", - EnvVars: []string{"STORAGE_REST_CLIENT_ID"}, - Destination: &cfg.Reva.UserGroupRest.ClientID, - }, - &cli.StringFlag{ - Name: "rest-client-secret", - Value: "", - Usage: "User/group rest driver Client Secret", - EnvVars: []string{"STORAGE_REST_CLIENT_SECRET"}, - Destination: &cfg.Reva.UserGroupRest.ClientSecret, - }, - &cli.StringFlag{ - Name: "rest-redis-address", - Value: "localhost:6379", - Usage: "Address for redis server", - EnvVars: []string{"STORAGE_REST_REDIS_ADDRESS"}, - Destination: &cfg.Reva.UserGroupRest.RedisAddress, - }, - &cli.StringFlag{ - Name: "rest-redis-username", - Value: "", - Usage: "Username for redis server", - EnvVars: []string{"STORAGE_REST_REDIS_USERNAME"}, - Destination: &cfg.Reva.UserGroupRest.RedisUsername, - }, - &cli.StringFlag{ - Name: "rest-redis-password", - Value: "", - Usage: "Password for redis server", - EnvVars: []string{"STORAGE_REST_REDIS_PASSWORD"}, - Destination: &cfg.Reva.UserGroupRest.RedisPassword, - }, - &cli.StringFlag{ - Name: "rest-id-provider", - Value: "", - Usage: "The OIDC Provider", - EnvVars: []string{"STORAGE_REST_ID_PROVIDER"}, - Destination: &cfg.Reva.UserGroupRest.IDProvider, - }, - &cli.StringFlag{ - Name: "rest-api-base-url", - Value: "", - Usage: "Base API Endpoint", - EnvVars: []string{"STORAGE_REST_API_BASE_URL"}, - Destination: &cfg.Reva.UserGroupRest.APIBaseURL, - }, - &cli.StringFlag{ - Name: "rest-oidc-token-endpoint", - Value: "", - Usage: "Endpoint to generate token to access the API", - EnvVars: []string{"STORAGE_REST_OIDC_TOKEN_ENDPOINT"}, - Destination: &cfg.Reva.UserGroupRest.OIDCTokenEndpoint, - }, - &cli.StringFlag{ - Name: "rest-target-api", - Value: "", - Usage: "The target application", - EnvVars: []string{"STORAGE_REST_TARGET_API"}, - Destination: &cfg.Reva.UserGroupRest.TargetAPI, - }, } flags = append(flags, TracingWithConfig(cfg)...) flags = append(flags, DebugWithConfig(cfg)...) flags = append(flags, SecretWithConfig(cfg)...) flags = append(flags, LDAPWithConfig(cfg)...) + flags = append(flags, RestWithConfig(cfg)...) return flags } diff --git a/storage/pkg/flagset/rest.go b/storage/pkg/flagset/rest.go new file mode 100644 index 00000000000..2e733596f63 --- /dev/null +++ b/storage/pkg/flagset/rest.go @@ -0,0 +1,75 @@ +package flagset + +import ( + "github.com/micro/cli/v2" + "github.com/owncloud/ocis/storage/pkg/config" +) + +// RestWithConfig applies REST user/group provider cfg to the flagset +func RestWithConfig(cfg *config.Config) []cli.Flag { + return []cli.Flag{ + &cli.StringFlag{ + Name: "rest-client-id", + Value: "", + Usage: "User/group rest driver Client ID", + EnvVars: []string{"STORAGE_REST_CLIENT_ID"}, + Destination: &cfg.Reva.UserGroupRest.ClientID, + }, + &cli.StringFlag{ + Name: "rest-client-secret", + Value: "", + Usage: "User/group rest driver Client Secret", + EnvVars: []string{"STORAGE_REST_CLIENT_SECRET"}, + Destination: &cfg.Reva.UserGroupRest.ClientSecret, + }, + &cli.StringFlag{ + Name: "rest-redis-address", + Value: "localhost:6379", + Usage: "Address for redis server", + EnvVars: []string{"STORAGE_REST_REDIS_ADDRESS"}, + Destination: &cfg.Reva.UserGroupRest.RedisAddress, + }, + &cli.StringFlag{ + Name: "rest-redis-username", + Value: "", + Usage: "Username for redis server", + EnvVars: []string{"STORAGE_REST_REDIS_USERNAME"}, + Destination: &cfg.Reva.UserGroupRest.RedisUsername, + }, + &cli.StringFlag{ + Name: "rest-redis-password", + Value: "", + Usage: "Password for redis server", + EnvVars: []string{"STORAGE_REST_REDIS_PASSWORD"}, + Destination: &cfg.Reva.UserGroupRest.RedisPassword, + }, + &cli.StringFlag{ + Name: "rest-id-provider", + Value: "", + Usage: "The OIDC Provider", + EnvVars: []string{"STORAGE_REST_ID_PROVIDER"}, + Destination: &cfg.Reva.UserGroupRest.IDProvider, + }, + &cli.StringFlag{ + Name: "rest-api-base-url", + Value: "", + Usage: "Base API Endpoint", + EnvVars: []string{"STORAGE_REST_API_BASE_URL"}, + Destination: &cfg.Reva.UserGroupRest.APIBaseURL, + }, + &cli.StringFlag{ + Name: "rest-oidc-token-endpoint", + Value: "", + Usage: "Endpoint to generate token to access the API", + EnvVars: []string{"STORAGE_REST_OIDC_TOKEN_ENDPOINT"}, + Destination: &cfg.Reva.UserGroupRest.OIDCTokenEndpoint, + }, + &cli.StringFlag{ + Name: "rest-target-api", + Value: "", + Usage: "The target application", + EnvVars: []string{"STORAGE_REST_TARGET_API"}, + Destination: &cfg.Reva.UserGroupRest.TargetAPI, + }, + } +} diff --git a/storage/pkg/flagset/sharing.go b/storage/pkg/flagset/sharing.go index f77fea73448..2926170c198 100644 --- a/storage/pkg/flagset/sharing.go +++ b/storage/pkg/flagset/sharing.go @@ -56,41 +56,6 @@ func SharingWithConfig(cfg *config.Config) []cli.Flag { EnvVars: []string{"STORAGE_SHARING_USER_JSON_FILE"}, Destination: &cfg.Reva.Sharing.UserJSONFile, }, - &cli.StringFlag{ - Name: "user-sql-username", - Value: "", - Usage: "Username to be used to connect to the SQL database", - EnvVars: []string{"STORAGE_SHARING_USER_SQL_USERNAME"}, - Destination: &cfg.Reva.Sharing.UserSQLUsername, - }, - &cli.StringFlag{ - Name: "user-sql-password", - Value: "", - Usage: "Password to be used to connect to the SQL database", - EnvVars: []string{"STORAGE_SHARING_USER_SQL_PASSWORD"}, - Destination: &cfg.Reva.Sharing.UserSQLPassword, - }, - &cli.StringFlag{ - Name: "user-sql-host", - Value: "", - Usage: "Hostname of the SQL database", - EnvVars: []string{"STORAGE_SHARING_USER_SQL_HOST"}, - Destination: &cfg.Reva.Sharing.UserSQLHost, - }, - &cli.IntFlag{ - Name: "user-sql-port", - Value: 1433, - Usage: "The port on which the SQL database is exposed", - EnvVars: []string{"STORAGE_SHARING_USER_SQL_PORT"}, - Destination: &cfg.Reva.Sharing.UserSQLPort, - }, - &cli.StringFlag{ - Name: "user-sql-name", - Value: "", - Usage: "Name of the SQL database", - EnvVars: []string{"STORAGE_SHARING_USER_SQL_Name"}, - Destination: &cfg.Reva.Sharing.UserSQLName, - }, &cli.StringFlag{ Name: "public-driver", Value: "json", @@ -110,6 +75,7 @@ func SharingWithConfig(cfg *config.Config) []cli.Flag { flags = append(flags, TracingWithConfig(cfg)...) flags = append(flags, DebugWithConfig(cfg)...) flags = append(flags, SecretWithConfig(cfg)...) + flags = append(flags, SharingSQLWithConfig(cfg)...) return flags } diff --git a/storage/pkg/flagset/sharingsql.go b/storage/pkg/flagset/sharingsql.go new file mode 100644 index 00000000000..7bbeeeabd65 --- /dev/null +++ b/storage/pkg/flagset/sharingsql.go @@ -0,0 +1,47 @@ +package flagset + +import ( + "github.com/micro/cli/v2" + "github.com/owncloud/ocis/storage/pkg/config" +) + +// SharingSQLWithConfig applies the Shring SQL driver cfg to the flagset +func SharingSQLWithConfig(cfg *config.Config) []cli.Flag { + return []cli.Flag{ + &cli.StringFlag{ + Name: "user-sql-username", + Value: "", + Usage: "Username to be used to connect to the SQL database", + EnvVars: []string{"STORAGE_SHARING_USER_SQL_USERNAME"}, + Destination: &cfg.Reva.Sharing.UserSQLUsername, + }, + &cli.StringFlag{ + Name: "user-sql-password", + Value: "", + Usage: "Password to be used to connect to the SQL database", + EnvVars: []string{"STORAGE_SHARING_USER_SQL_PASSWORD"}, + Destination: &cfg.Reva.Sharing.UserSQLPassword, + }, + &cli.StringFlag{ + Name: "user-sql-host", + Value: "", + Usage: "Hostname of the SQL database", + EnvVars: []string{"STORAGE_SHARING_USER_SQL_HOST"}, + Destination: &cfg.Reva.Sharing.UserSQLHost, + }, + &cli.IntFlag{ + Name: "user-sql-port", + Value: 1433, + Usage: "The port on which the SQL database is exposed", + EnvVars: []string{"STORAGE_SHARING_USER_SQL_PORT"}, + Destination: &cfg.Reva.Sharing.UserSQLPort, + }, + &cli.StringFlag{ + Name: "user-sql-name", + Value: "", + Usage: "Name of the SQL database", + EnvVars: []string{"STORAGE_SHARING_USER_SQL_Name"}, + Destination: &cfg.Reva.Sharing.UserSQLName, + }, + } +} diff --git a/storage/pkg/flagset/users.go b/storage/pkg/flagset/users.go index cf3fd72ab80..31120c8f990 100644 --- a/storage/pkg/flagset/users.go +++ b/storage/pkg/flagset/users.go @@ -71,78 +71,13 @@ func UsersWithConfig(cfg *config.Config) []cli.Flag { EnvVars: []string{"STORAGE_USER_CACHE_EXPIRATION"}, Destination: &cfg.Reva.Users.UserGroupsCacheExpiration, }, - - // rest driver - - &cli.StringFlag{ - Name: "rest-client-id", - Value: "", - Usage: "User/group rest driver Client ID", - EnvVars: []string{"STORAGE_REST_CLIENT_ID"}, - Destination: &cfg.Reva.UserGroupRest.ClientID, - }, - &cli.StringFlag{ - Name: "rest-client-secret", - Value: "", - Usage: "User/group rest driver Client Secret", - EnvVars: []string{"STORAGE_REST_CLIENT_SECRET"}, - Destination: &cfg.Reva.UserGroupRest.ClientSecret, - }, - &cli.StringFlag{ - Name: "rest-redis-address", - Value: "localhost:6379", - Usage: "Address for redis server", - EnvVars: []string{"STORAGE_REST_REDIS_ADDRESS"}, - Destination: &cfg.Reva.UserGroupRest.RedisAddress, - }, - &cli.StringFlag{ - Name: "rest-redis-username", - Value: "", - Usage: "Username for redis server", - EnvVars: []string{"STORAGE_REST_REDIS_USERNAME"}, - Destination: &cfg.Reva.UserGroupRest.RedisUsername, - }, - &cli.StringFlag{ - Name: "rest-redis-password", - Value: "", - Usage: "Password for redis server", - EnvVars: []string{"STORAGE_REST_REDIS_PASSWORD"}, - Destination: &cfg.Reva.UserGroupRest.RedisPassword, - }, - &cli.StringFlag{ - Name: "rest-id-provider", - Value: "", - Usage: "The OIDC Provider", - EnvVars: []string{"STORAGE_REST_ID_PROVIDER"}, - Destination: &cfg.Reva.UserGroupRest.IDProvider, - }, - &cli.StringFlag{ - Name: "rest-api-base-url", - Value: "", - Usage: "Base API Endpoint", - EnvVars: []string{"STORAGE_REST_API_BASE_URL"}, - Destination: &cfg.Reva.UserGroupRest.APIBaseURL, - }, - &cli.StringFlag{ - Name: "rest-oidc-token-endpoint", - Value: "", - Usage: "Endpoint to generate token to access the API", - EnvVars: []string{"STORAGE_REST_OIDC_TOKEN_ENDPOINT"}, - Destination: &cfg.Reva.UserGroupRest.OIDCTokenEndpoint, - }, - &cli.StringFlag{ - Name: "rest-target-api", - Value: "", - Usage: "The target application", - EnvVars: []string{"STORAGE_REST_TARGET_API"}, - Destination: &cfg.Reva.UserGroupRest.TargetAPI, - }, } flags = append(flags, TracingWithConfig(cfg)...) flags = append(flags, DebugWithConfig(cfg)...) flags = append(flags, SecretWithConfig(cfg)...) flags = append(flags, LDAPWithConfig(cfg)...) + flags = append(flags, RestWithConfig(cfg)...) return flags }