Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[full-ci] standalone graph service with LDAP #5199

Merged
merged 10 commits into from
Dec 12, 2022

Conversation

butonic
Copy link
Member

@butonic butonic commented Dec 6, 2022

This PR allows setting an API Token for bearer based authentication. Setting a Token will disable the requireAdmin middleware and for now, also disable provisioning roles for new users.

Together with the LDAP backend this allows using the graph service for provisioning.

we will fix creation status codes in a subsequent PR

@butonic butonic requested a review from rhafer December 6, 2022 15:21
@update-docs
Copy link

update-docs bot commented Dec 6, 2022

Thanks for opening this pull request! The maintainers of this repository would appreciate it if you would create a changelog item based on your changes.

@butonic
Copy link
Member Author

butonic commented Dec 6, 2022

Notes:

  • currentUser := ctxpkg.ContextMustGetUser(r.Context()) is used in several places. If we cannot get the user we should check an access token was used (and debug log and trace the request)
  • the requests that require an authenticated user in the context won't work, eg the /me endpoints ... maybe a different router is easier than trying to disable certain endpoints.

@ownclouders
Copy link
Contributor

ownclouders commented Dec 7, 2022

💥 Acceptance test localApiTests-apiGraph-ocis failed. Further test are cancelled...

@butonic butonic force-pushed the standalone-graph-with-ldap-backend branch 5 times, most recently from 13a3ba6 to 5c89176 Compare December 8, 2022 13:09
@butonic
Copy link
Member Author

butonic commented Dec 8, 2022

wow, CI ran into a panic https://drone.owncloud.com/owncloud/ocis/17385/51/4

{"level":"error","service":"sharing","pkg":"rgrpc","traceid":"00000000000000000000000000000000","user-agent":"GuzzleHttp/7","from":"tcp://127.0.0.1:60522","uri":"/cs3.sharing.link.v1beta1.LinkAPI/GetPublicShare","start":"08/Dec/2022:13:20:00 +0000","end":"08/Dec/2022:13:20:00 +0000","time_ns":2351354,"code":"Unknown","time":"2022-12-08T13:20:00.853098244Z","message":"unary"}
{"level":"error","service":"gateway","pkg":"rgrpc","traceid":"00000000000000000000000000000000","user-agent":"GuzzleHttp/7","from":"tcp://127.0.0.1:44660","uri":"/cs3.gateway.v1beta1.GatewayAPI/GetPublicShare","start":"08/Dec/2022:13:20:00 +0000","end":"08/Dec/2022:13:20:00 +0000","time_ns":2865629,"code":"Unknown","time":"2022-12-08T13:20:00.853237877Z","message":"unary"}
goroutine 104980 [running]:
runtime/debug.Stack()
	/usr/local/go/src/runtime/debug/stack.go:24 +0x65
runtime/debug.PrintStack()
	/usr/local/go/src/runtime/debug/stack.go:16 +0x19
github.com/cs3org/reva/v2/internal/grpc/interceptors/recovery.recoveryFunc({0x3ae2f98, 0xc002625e30}, {0x24a7a60, 0x4f971b0})
	/go/pkg/mod/github.com/cs3org/reva/v2@v2.12.0/internal/grpc/interceptors/recovery/recovery.go:48 +0x3a
github.com/grpc-ecosystem/go-grpc-middleware/recovery.recoverFrom({0x3ae2f98?, 0xc002625e30?}, {0x24a7a60?, 0x4f971b0?}, 0xc000cc1b50?)
	/go/pkg/mod/github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/recovery/interceptors.go:61 +0x36
github.com/grpc-ecosystem/go-grpc-middleware/recovery.UnaryServerInterceptor.func1.1()
	/go/pkg/mod/github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/recovery/interceptors.go:29 +0x7b
panic({0x24a7a60, 0x4f971b0})
	/usr/local/go/src/runtime/panic.go:838 +0x207
github.com/cs3org/reva/v2/pkg/storage/utils/decomposedfs/node.ReadNode.func1()
	/go/pkg/mod/github.com/cs3org/reva/v2@v2.12.0/pkg/storage/utils/decomposedfs/node/node.go:241 +0x28
github.com/cs3org/reva/v2/pkg/storage/utils/decomposedfs/node.ReadNode({0xc00087ed20?, 0x400?}, {0x3adc310?, 0xc000f32288}, {0xc0026e0270, 0x24}, {0xc0026e0240, 0x24}, 0x0)
	/go/pkg/mod/github.com/cs3org/reva/v2@v2.12.0/pkg/storage/utils/decomposedfs/node/node.go:311 +0x777
github.com/cs3org/reva/v2/pkg/storage/utils/decomposedfs/lookup.(*Lookup).NodeFromID(0x203000?, {0x3ae2f98?, 0xc0024922a0?}, 0x3aed528?)
	/go/pkg/mod/github.com/cs3org/reva/v2@v2.12.0/pkg/storage/utils/decomposedfs/lookup/lookup.go:77 +0x65
github.com/cs3org/reva/v2/pkg/storage/utils/decomposedfs/lookup.(*Lookup).NodeFromResource(0xc002d9c700?, {0x3ae2f98, 0xc0024922a0}, 0xc002d9c480)
	/go/pkg/mod/github.com/cs3org/reva/v2@v2.12.0/pkg/storage/utils/decomposedfs/lookup/lookup.go:45 +0x53
github.com/cs3org/reva/v2/pkg/storage/utils/decomposedfs.(*Decomposedfs).GetMD(0xc000733810, {0x3ae2f98, 0xc0024922a0}, 0xc002d9c480, {0x0, 0x0, 0x0}, {0x0, 0x0, 0x0})
	/go/pkg/mod/github.com/cs3org/reva/v2@v2.12.0/pkg/storage/utils/decomposedfs/decomposedfs.go:481 +0x69
github.com/cs3org/reva/v2/internal/grpc/services/storageprovider.(*service).Stat(0xc0008faf00, {0x3ae2f98, 0xc002492270}, 0xc0012c0dc0)
	/go/pkg/mod/github.com/cs3org/reva/v2@v2.12.0/internal/grpc/services/storageprovider/storageprovider.go:691 +0x29f
github.com/cs3org/go-cs3apis/cs3/storage/provider/v1beta1._ProviderAPI_Stat_Handler.func1({0x3ae2f98, 0xc002492270}, {0x27871a0?, 0xc0012c0dc0})
	/go/pkg/mod/github.com/cs3org/go-cs3apis@v0.0.0-20221012090518-ef2996678965/cs3/storage/provider/v1beta1/provider_api.pb.go:6238 +0x7b
go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc.UnaryServerInterceptor.func1({0x3ae2f98, 0xc002492150}, {0x27871a0, 0xc0012c0dc0}, 0xc0018a9860, 0xc0065ecaf8)
	/go/pkg/mod/go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc@v0.36.4/interceptor.go:341 +0x437
github.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1.1.1({0x3ae2f98?, 0xc002492150?}, {0x27871a0?, 0xc0012c0dc0?})
	/go/pkg/mod/github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/chain.go:25 +0x3a
github.com/cs3org/reva/v2/internal/grpc/interceptors/eventsmiddleware.NewUnary.func1({0x3ae2f98, 0xc002492120}, {0x27871a0?, 0xc0012c0dc0?}, 0x0?, 0xc0018a9880)
	/go/pkg/mod/github.com/cs3org/reva/v2@v2.12.0/internal/grpc/interceptors/eventsmiddleware/events.go:72 +0xe8
github.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1.1.1({0x3ae2f98?, 0xc002492120?}, {0x27871a0?, 0xc0012c0dc0?})
	/go/pkg/mod/github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/chain.go:25 +0x3a
github.com/cs3org/reva/v2/internal/grpc/interceptors/prometheus.interceptorFromConfig.func1({0x3ae2f98?, 0xc002492120?}, {0x27871a0?, 0xc0012c0dc0?}, 0x23a9b40?, 0x3abcd01?)
	/go/pkg/mod/github.com/cs3org/reva/v2@v2.12.0/internal/grpc/interceptors/prometheus/prometheus.go:72 +0x43
github.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1.1.1({0x3ae2f98?, 0xc002492120?}, {0x27871a0?, 0xc0012c0dc0?})
	/go/pkg/mod/github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/chain.go:25 +0x3a
github.com/cs3org/reva/v2/internal/grpc/interceptors/auth.NewUnary.func2({0x3ae2f98, 0xc002625e30}, {0x27871a0, 0xc0012c0dc0}, 0xc0018a9860, 0xc0018a98e0)
	/go/pkg/mod/github.com/cs3org/reva/v2@v2.12.0/internal/grpc/interceptors/auth/auth.go:160 +0xa06
github.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1.1.1({0x3ae2f98?, 0xc002625e30?}, {0x27871a0?, 0xc0012c0dc0?})
	/go/pkg/mod/github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/chain.go:25 +0x3a
github.com/grpc-ecosystem/go-grpc-middleware/recovery.UnaryServerInterceptor.func1({0x3ae2f98?, 0xc002625e30?}, {0x27871a0?, 0xc0012c0dc0?}, 0xc002223208?, 0x496757?)
	/go/pkg/mod/github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/recovery/interceptors.go:33 +0xc4
github.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1.1.1({0x3ae2f98?, 0xc002625e30?}, {0x27871a0?, 0xc0012c0dc0?})
	/go/pkg/mod/github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/chain.go:25 +0x3a
github.com/cs3org/reva/v2/internal/grpc/interceptors/log.NewUnary.func1({0x3ae2f98, 0xc002625e30}, {0x27871a0, 0xc0012c0dc0}, 0xc0018a9860, 0xc0018a9920)
	/go/pkg/mod/github.com/cs3org/reva/v2@v2.12.0/internal/grpc/interceptors/log/log.go:39 +0x9a
github.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1.1.1({0x3ae2f98?, 0xc002625e30?}, {0x27871a0?, 0xc0012c0dc0?})
	/go/pkg/mod/github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/chain.go:25 +0x3a
github.com/cs3org/reva/v2/internal/grpc/interceptors/useragent.NewUnary.func1({0x3ae2f98, 0xc002625d70}, {0x27871a0, 0xc0012c0dc0}, 0x1?, 0xc0018a9940)
	/go/pkg/mod/github.com/cs3org/reva/v2@v2.12.0/internal/grpc/interceptors/useragent/useragent.go:38 +0xe8
github.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1.1.1({0x3ae2f98?, 0xc002625d70?}, {0x27871a0?, 0xc0012c0dc0?})
	/go/pkg/mod/github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/chain.go:25 +0x3a
github.com/cs3org/reva/v2/internal/grpc/interceptors/token.NewUnary.func1({0x3ae2f98, 0xc002625c50}, {0x27871a0, 0xc0012c0dc0}, 0x5196aa8?, 0xc0018a9960)
	/go/pkg/mod/github.com/cs3org/reva/v2@v2.12.0/internal/grpc/interceptors/token/token.go:44 +0x158
github.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1.1.1({0x3ae2f98?, 0xc002625c50?}, {0x27871a0?, 0xc0012c0dc0?})
	/go/pkg/mod/github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/chain.go:25 +0x3a
github.com/cs3org/reva/v2/internal/grpc/interceptors/appctx.NewUnary.func1({0x3ae2f98, 0xc002625b60}, {0x27871a0, 0xc0012c0dc0}, 0x7f699474dd08?, 0xc0018a9980)
	/go/pkg/mod/github.com/cs3org/reva/v2@v2.12.0/internal/grpc/interceptors/appctx/appctx.go:51 +0x73c
github.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1.1.1({0x3ae2f98?, 0xc002625b60?}, {0x27871a0?, 0xc0012c0dc0?})
	/go/pkg/mod/github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/chain.go:25 +0x3a
github.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1({0x3ae2f98, 0xc002625b60}, {0x27871a0, 0xc0012c0dc0}, 0xc002320a18?, 0x24a66e0?)
	/go/pkg/mod/github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/chain.go:34 +0xbf
github.com/cs3org/go-cs3apis/cs3/storage/provider/v1beta1._ProviderAPI_Stat_Handler({0x2857ba0?, 0xc0008faf00}, {0x3ae2f98, 0xc002625b60}, 0xc002319340, 0xc00129a6c0)
	/go/pkg/mod/github.com/cs3org/go-cs3apis@v0.0.0-20221012090518-ef2996678965/cs3/storage/provider/v1beta1/provider_api.pb.go:6240 +0x138
google.golang.org/grpc.(*Server).processUnaryRPC(0xc001d541e0, {0x3af2990, 0xc001b96820}, 0xc0023a39e0, 0xc00129a870, 0x4fb8df0, 0x0)
	/go/pkg/mod/google.golang.org/grpc@v1.51.0/server.go:1340 +0xd13
google.golang.org/grpc.(*Server).handleStream(0xc001d541e0, {0x3af2990, 0xc001b96820}, 0xc0023a39e0, 0x0)
	/go/pkg/mod/google.golang.org/grpc@v1.51.0/server.go:1713 +0xa1b
google.golang.org/grpc.(*Server).serveStreams.func1.2()
	/go/pkg/mod/google.golang.org/grpc@v1.51.0/server.go:965 +0x98
created by google.golang.org/grpc.(*Server).serveStreams.func1
	/go/pkg/mod/google.golang.org/grpc@v1.51.0/server.go:963 +0x28a
{"level":"error","service":"storage-users","pkg":"rgrpc","traceid":"00000000000000000000000000000000","time":"2022-12-08T13:20:03.260346195Z","message":"runtime error: invalid memory address or nil pointer dereference; stack: goroutine 104980 [running]:\nruntime/debug.Stack()\n\t/usr/local/go/src/runtime/debug/stack.go:24 +0x65\ngithub.mirror.nvdadr.com/cs3org/reva/v2/internal/grpc/interceptors/recovery.recoveryFunc({0x3ae2f98, 0xc002625e30}, {0x24a7a60, 0x4f971b0})\n\t/go/pkg/mod/github.com/cs3org/reva/v2@v2.12.0/internal/grpc/interceptors/recovery/recovery.go:50 +0x65\ngithub.mirror.nvdadr.com/grpc-ecosystem/go-grpc-middleware/recovery.recoverFrom({0x3ae2f98?, 0xc002625e30?}, {0x24a7a60?, 0x4f971b0?}, 0xc000cc1b50?)\n\t/go/pkg/mod/github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/recovery/interceptors.go:61 +0x36\ngithub.mirror.nvdadr.com/grpc-ecosystem/go-grpc-middleware/recovery.UnaryServerInterceptor.func1.1()\n\t/go/pkg/mod/github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/recovery/interceptors.go:29 +0x7b\npanic({0x24a7a60, 0x4f971b0})\n\t/usr/local/go/src/runtime/panic.go:838 +0x207\ngithub.mirror.nvdadr.com/cs3org/reva/v2/pkg/storage/utils/decomposedfs/node.ReadNode.func1()\n\t/go/pkg/mod/github.com/cs3org/reva/v2@v2.12.0/pkg/storage/utils/decomposedfs/node/node.go:241 +0x28\ngithub.mirror.nvdadr.com/cs3org/reva/v2/pkg/storage/utils/decomposedfs/node.ReadNode({0xc00087ed20?, 0x400?}, {0x3adc310?, 0xc000f32288}, {0xc0026e0270, 0x24}, {0xc0026e0240, 0x24}, 0x0)
github.com/cs3org/reva/v2/pkg/storage/utils/decomposedfs/node.ReadNode({0xc00087ed20?, 0x400?}, {0x3adc310?, 0xc000f32288}, {0xc0026e0270, 0x24}, {0xc0026e0240, 0x24}, 0x0)
	/go/pkg/mod/github.com/cs3org/reva/v2@v2.12.0/pkg/storage/utils/decomposedfs/node/node.go:311 +0x777
github.com/cs3org/reva/v2/pkg/storage/utils/decomposedfs/lookup.(*Lookup).NodeFromID(0x203000?, {0x3ae2f98?, 0xc0024922a0?}, 0x3aed528?)
	/go/pkg/mod/github.com/cs3org/reva/v2@v2.12.0/pkg/storage/utils/decomposedfs/lookup/lookup.go:77 +0x65
github.com/cs3org/reva/v2/pkg/storage/utils/decomposedfs/lookup.(*Lookup).NodeFromResource(0xc002d9c700?, {0x3ae2f98, 0xc0024922a0}, 0xc002d9c480)
	/go/pkg/mod/github.com/cs3org/reva/v2@v2.12.0/pkg/storage/utils/decomposedfs/lookup/lookup.go:45 +0x53
github.com/cs3org/reva/v2/pkg/storage/utils/decomposedfs.(*Decomposedfs).GetMD(0xc000733810, {0x3ae2f98, 0xc0024922a0}, 0xc002d9c480, {0x0, 0x0, 0x0}, {0x0, 0x0, 0x0})
	/go/pkg/mod/github.com/cs3org/reva/v2@v2.12.0/pkg/storage/utils/decomposedfs/decomposedfs.go:481 +0x69
github.com/cs3org/reva/v2/internal/grpc/services/storageprovider.(*service).Stat(0xc0008faf00, {0x3ae2f98, 0xc002492270}, 0xc0012c0dc0)
	/go/pkg/mod/github.com/cs3org/reva/v2@v2.12.0/internal/grpc/services/storageprovider/storageprovider.go:691 +0x29f
github.com/cs3org/go-cs3apis/cs3/storage/provider/v1beta1._ProviderAPI_Stat_Handler.func1({0x3ae2f98, 0xc002492270}, {0x27871a0?, 0xc0012c0dc0})
	/go/pkg/mod/github.com/cs3org/go-cs3apis@v0.0.0-20221012090518-ef2996678965/cs3/storage/provider/v1beta1/provider_api.pb.go:6238 +0x7b
go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc.UnaryServerInterceptor.func1({0x3ae2f98, 0xc002492150}, {0x27871a0, 0xc0012c0dc0}, 0xc0018a9860, 0xc0065ecaf8)
	/go/pkg/mod/go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc@v0.36.4/interceptor.go:341 +0x437
github.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1.1.1({0x3ae2f98?, 0xc002492150?}, {0x27871a0?, 0xc0012c0dc0?})
	/go/pkg/mod/github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/chain.go:25 +0x3a
github.com/cs3org/reva/v2/internal/grpc/interceptors/eventsmiddleware.NewUnary.func1({0x3ae2f98, 0xc002492120}, {0x27871a0?, 0xc0012c0dc0?}, 0x0?, 0xc0018a9880)
	/go/pkg/mod/github.com/cs3org/reva/v2@v2.12.0/internal/grpc/interceptors/eventsmiddleware/events.go:72 +0xe8
github.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1.1.1({0x3ae2f98?, 0xc002492120?}, {0x27871a0?, 0xc0012c0dc0?})
	/go/pkg/mod/github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/chain.go:25 +0x3a
github.com/cs3org/reva/v2/internal/grpc/interceptors/prometheus.interceptorFromConfig.func1({0x3ae2f98?, 0xc002492120?}, {0x27871a0?, 0xc0012c0dc0?}, 0x23a9b40?, 0x3abcd01?)
	/go/pkg/mod/github.com/cs3org/reva/v2@v2.12.0/internal/grpc/interceptors/prometheus/prometheus.go:72 +0x43
github.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1.1.1({0x3ae2f98?, 0xc002492120?}, {0x27871a0?, 0xc0012c0dc0?})
	/go/pkg/mod/github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/chain.go:25 +0x3a
github.com/cs3org/reva/v2/internal/grpc/interceptors/auth.NewUnary.func2({0x3ae2f98, 0xc002625e30}, {0x27871a0, 0xc0012c0dc0}, 0xc0018a9860, 0xc0018a98e0)
	/go/pkg/mod/github.com/cs3org/reva/v2@v2.12.0/internal/grpc/interceptors/auth/auth.go:160 +0xa06
github.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1.1.1({0x3ae2f98?, 0xc002625e30?}, {0x27871a0?, 0xc0012c0dc0?})
	/go/pkg/mod/github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/chain.go:25 +0x3a
github.com/grpc-ecosystem/go-grpc-middleware/recovery.UnaryServerInterceptor.func1({0x3ae2f98?, 0xc002625e30?}, {0x27871a0?, 0xc0012c0dc0?}, 0xc002223208?, 0x496757?)
	/go/pkg/mod/github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/recovery/interceptors.go:33 +0xc4
github.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1.1.1({0x3ae2f98?, 0xc002625e30?}, {0x27871a0?, 0xc0012c0dc0?})
	/go/pkg/mod/github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/chain.go:25 +0x3a
github.com/cs3org/reva/v2/internal/grpc/interceptors/log.NewUnary.func1({0x3ae2f98, 0xc002625e30}, {0x27871a0, 0xc0012c0dc0}, 0xc0018a9860, 0xc0018a9920)
	/go/pkg/mod/github.com/cs3org/reva/v2@v2.12.0/internal/grpc/interceptors/log/log.go:39 +0x9a
github.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1.1.1({0x3ae2f98?, 0xc002625e30?}, {0x27871a0?, 0xc0012c0dc0?})
	/go/pkg/mod/github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/chain.go:25 +0x3a
github.com/cs3org/reva/v2/internal/grpc/interceptors/useragent.NewUnary.func1({0x3ae2f98, 0xc002625d70}, {0x27871a0, 0xc0012c0dc0}, 0x1?, 0xc0018a9940)
	/go/pkg/mod/github.com/cs3org/reva/v2@v2.12.0/internal/grpc/interceptors/useragent/useragent.go:38 +0xe8
github.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1.1.1({0x3ae2f98?, 0xc002625d70?}, {0x27871a0?, 0xc0012c0dc0?})
	/go/pkg/mod/github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/chain.go:25 +0x3a
github.com/cs3org/reva/v2/internal/grpc/interceptors/token.NewUnary.func1({0x3ae2f98, 0xc002625c50}, {0x27871a0, 0xc0012c0dc0}, 0x5196aa8?, 0xc0018a9960)
	/go/pkg/mod/github.com/cs3org/reva/v2@v2.12.0/internal/grpc/interceptors/token/token.go:44 +0x158
github.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1.1.1({0x3ae2f98?, 0xc002625c50?}, {0x27871a0?, 0xc0012c0dc0?})
	/go/pkg/mod/github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/chain.go:25 +0x3a
github.com/cs3org/reva/v2/internal/grpc/interceptors/appctx.NewUnary.func1({0x3ae2f98, 0xc002625b60}, {0x27871a0, 0xc0012c0dc0}, 0x7f699474dd08?, 0xc0018a9980)
	/go/pkg/mod/github.com/cs3org/reva/v2@v2.12.0/internal/grpc/interceptors/appctx/appctx.go:51 +0x73c
github.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1.1.1({0x3ae2f98?, 0xc002625b60?}, {0x27871a0?, 0xc0012c0dc0?})
	/go/pkg/mod/github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/chain.go:25 +0x3a
github.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1({0x3ae2f98, 0xc002625b60}, {0x27871a0, 0xc0012c0dc0}, 0xc002320a18?, 0x24a66e0?)
	/go/pkg/mod/github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/chain.go:34 +0xbf
github.com/cs3org/go-cs3apis/cs3/storage/provider/v1beta1._ProviderAPI_Stat_Handler({0x2857ba0?, 0xc0008faf00}, {0x3ae2f98, 0xc002625b60}, 0xc002319340, 0xc00129a6c0)
	/go/pkg/mod/github.com/cs3org/go-cs3apis@v0.0.0-20221012090518-ef2996678965/cs3/storage/provider/v1beta1/provider_api.pb.go:6240 +0x138
google.golang.org/grpc.(*Server).processUnaryRPC(0xc001d541e0, {0x3af2990, 0xc001b96820}, 0xc0023a39e0, 0xc00129a870, 0x4fb8df0, 0x0)
	/go/pkg/mod/google.golang.org/grpc@v1.51.0/server.go:1340 +0xd13
google.golang.org/grpc.(*Server).handleStream(0xc001d541e0, {0x3af2990, 0xc001b96820}, 0xc0023a39e0, 0x0)
	/go/pkg/mod/google.golang.org/grpc@v1.51.0/server.go:1713 +0xa1b
google.golang.org/grpc.(*Server).serveStreams.func1.2()
	/go/pkg/mod/google.golang.org/grpc@v1.51.0/server.go:965 +0x98
created by google.golang.org/grpc.(*Server).serveStreams.func1
	/go/pkg/mod/google.golang.org/grpc@v1.51.0/server.go:963 +0x28a
{"level":"error","service":"storage-users","pkg":"rgrpc","traceid":"00000000000000000000000000000000","time":"2022-12-08T13:20:03.260346195Z","message":"runtime error: invalid memory address or nil pointer dereference; stack: goroutine 104980 [running]:\nruntime/debug.Stack()\n\t/usr/local/go/src/runtime/debug/stack.go:24 +0x65\ngithub.mirror.nvdadr.com/cs3org/reva/v2/internal/grpc/interceptors/recovery.recoveryFunc({0x3ae2f98, 0xc002625e30}, {0x24a7a60, 0x4f971b0})\n\t/go/pkg/mod/github.com/cs3org/reva/v2@v2.12.0/internal/grpc/interceptors/recovery/recovery.go:50 +0x65\ngithub.mirror.nvdadr.com/grpc-ecosystem/go-grpc-middleware/recovery.recoverFrom({0x3ae2f98?, 0xc002625e30?}, {0x24a7a60?, 0x4f971b0?}, 0xc000cc1b50?)\n\t/go/pkg/mod/github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/recovery/interceptors.go:61 +0x36\ngithub.mirror.nvdadr.com/grpc-ecosystem/go-grpc-middleware/recovery.UnaryServerInterceptor.func1.1()\n\t/go/pkg/mod/github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/recovery/interceptors.go:29 +0x7b\npanic({0x24a7a60, 0x4f971b0})\n\t/usr/local/go/src/runtime/panic.go:838 +0x207\ngithub.mirror.nvdadr.com/cs3org/reva/v2/pkg/storage/utils/decomposedfs/node.ReadNode.func1()\n\t/go/pkg/mod/github.com/cs3org/reva/v2@v2.12.0/pkg/storage/utils/decomposedfs/node/node.go:241 +0x28\ngithub.mirror.nvdadr.com/cs3org/reva/v2/pkg/storage/utils/decomposedfs/node.ReadNode({0xc00087ed20?, 0x400?}, {0x3adc310?, 0xc000f32288}, {0xc0026e0270, 0x24}, {0xc0026e0240, 0x24}, 0x0)\n\t/go/pkg/mod/github.com/cs3org/reva/v2@v2.12.0/pkg/storage/utils/decomposedfs/node/node.go:311 +0x777\ngithub.mirror.nvdadr.com/cs3org/reva/v2/pkg/storage/utils/decomposedfs/lookup.(*Lookup).NodeFromID(0x203000?, {0x3ae2f98?, 0xc0024922a0?}, 0x3aed528?)\n\t/go/pkg/mod/github.com/cs3org/reva/v2@v2.12.0/pkg/storage/utils/decomposedfs/lookup/lookup.go:77 +0x65\ngithub.mirror.nvdadr.com/cs3org/reva/v2/pkg/storage/utils/decomposedfs/lookup.(*Lookup).NodeFromResource(0xc002d9c700?, {0x3ae2f98, 0xc0024922a0}, 0xc002d9c480)\n\t/go/pkg/mod/github.com/cs3org/reva/v2@v2.12.0/pkg/storage/utils/decomposedfs/lookup/lookup.go:45 +0x53\ngithub.mirror.nvdadr.com/cs3org/reva/v2/pkg/storage/utils/decomposedfs.(*Decomposedfs).GetMD(0xc000733810, {0x3ae2f98, 0xc0024922a0}, 0xc002d9c480, {0x0, 0x0, 0x0}, {0x0, 0x0, 0x0})\n\t/go/pkg/mod/github.com/cs3org/reva/v2@v2.12.0/pkg/storage/utils/decomposedfs/decomposedfs.go:481 +0x69\ngithub.mirror.nvdadr.com/cs3org/reva/v2/internal/grpc/services/storageprovider.(*service).Stat(0xc0008faf00, {0x3ae2f98, 0xc002492270}, 0xc0012c0dc0)\n\t/go/pkg/mod/github.com/cs3org/reva/v2@v2.12.0/internal/grpc/services/storageprovider/storageprovider.go:691 +0x29f\ngithub.mirror.nvdadr.com/cs3org/go-cs3apis/cs3/storage/provider/v1beta1._ProviderAPI_Stat_Handler.func1({0x3ae2f98, 0xc002492270}, {0x27871a0?, 0xc0012c0dc0})\n\t/go/pkg/mod/github.com/cs3org/go-cs3apis@v0.0.0-20221012090518-ef2996678965/cs3/storage/provider/v1beta1/provider_api.pb.go:6238 +0x7b\ngo.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc.UnaryServerInterceptor.func1({0x3ae2f98, 0xc002492150}, {0x27871a0, 0xc0012c0dc0}, 0xc0018a9860, 0xc0065ecaf8)\n\t/go/pkg/mod/go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc@v0.36.4/interceptor.go:341 +0x437\ngithub.mirror.nvdadr.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1.1.1({0x3ae2f98?, 0xc002492150?}, {0x27871a0?, 0xc0012c0dc0?})\n\t/go/pkg/mod/github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/chain.go:25 +0x3a\ngithub.mirror.nvdadr.com/cs3org/reva/v2/internal/grpc/interceptors/eventsmiddleware.NewUnary.func1({0x3ae2f98, 0xc002492120}, {0x27871a0?, 0xc0012c0dc0?}, 0x0?, 0xc0018a9880)\n\t/go/pkg/mod/github.com/cs3org/reva/v2@v2.12.0/internal/grpc/interceptors/eventsmiddleware/events.go:72 +0xe8\ngithub.mirror.nvdadr.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1.1.1({0x3ae2f98?, 0xc002492120?}, {0x27871a0?, 0xc0012c0dc0?})\n\t/go/pkg/mod/github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/chain.go:25 +0x3a\ngithub.mirror.nvdadr.com/cs3org/reva/v2/internal/grpc/interceptors/prometheus.interceptorFromConfig.func1({0x3ae2f98?, 0xc002492120?}, {0x27871a0?, 0xc0012c0dc0?}, 0x23a9b40?, 0x3abcd01?)\n\t/go/pkg/mod/github.com/cs3org/reva/v2@v2.12.0/internal/grpc/interceptors/prometheus/prometheus.go:72 +0x43\ngithub.mirror.nvdadr.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1.1.1({0x3ae2f98?, 0xc002492120?}, {0x27871a0?, 0xc0012c0dc0?})\n\t/go/pkg/mod/github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/chain.go:25 +0x3a\ngithub.mirror.nvdadr.com/cs3org/reva/v2/internal/grpc/interceptors/auth.NewUnary.func2({0x3ae2f98, 0xc002625e30}, {0x27871a0, 0xc0012c0dc0}, 0xc0018a9860, 0xc0018a98e0)\n\t/go/pkg/mod/github.com/cs3org/reva/v2@v2.12.0/internal/grpc/interceptors/auth/auth.go:160 +0xa06\ngithub.mirror.nvdadr.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1.1.1({0x3ae2f98?, 0xc002625e30?}, {0x27871a0?, 0xc0012c0dc0?})\n\t/go/pkg/mod/github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/chain.go:25 +0x3a\ngithub.mirror.nvdadr.com/grpc-ecosystem/go-grpc-middleware/recovery.UnaryServerInterceptor.func1({0x3ae2f98?, 0xc002625e30?}, {0x27871a0?, 0xc0012c0dc0?}, 0xc002223208?, 0x496757?)\n\t/go/pkg/mod/github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/recovery/interceptors.go:33 +0xc4\ngithub.mirror.nvdadr.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1.1.1({0x3ae2f98?, 0xc002625e30?}, {0x27871a0?, 0xc0012c0dc0?})\n\t/go/pkg/mod/github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/chain.go:25 +0x3a\ngithub.mirror.nvdadr.com/cs3org/reva/v2/internal/grpc/interceptors/log.NewUnary.func1({0x3ae2f98, 0xc002625e30}, {0x27871a0, 0xc0012c0dc0}, 0xc0018a9860, 0xc0018a9920)\n\t/go/pkg/mod/github.com/cs3org/reva/v2@v2.12.0/internal/grpc/interceptors/log/log.go:39 +0x9a\ngithub.mirror.nvdadr.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1.1.1({0x3ae2f98?, 0xc002625e30?}, {0x27871a0?, 0xc0012c0dc0?})\n\t/go/pkg/mod/github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/chain.go:25 +0x3a\ngithub.mirror.nvdadr.com/cs3org/reva/v2/internal/grpc/interceptors/useragent.NewUnary.func1({0x3ae2f98, 0xc002625d70}, {0x27871a0, 0xc0012c0dc0}, 0x1?, 0xc0018a9940)\n\t/go/pkg/mod/github.com/cs3org/reva/v2@v2.12.0/internal/grpc/interceptors/useragent/useragent.go:38 +0xe8\ngithub.mirror.nvdadr.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1.1.1({0x3ae2f98?, 0xc002625d70?}, {0x27871a0?, 0xc0012c0dc0?})\n\t/go/pkg/mod/github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/chain.go:25 +0x3a\ngithub.mirror.nvdadr.com/cs3org/reva/v2/internal/grpc/interceptors/token.NewUnary.func1({0x3ae2f98, 0xc002625c50}, {0x27871a0, 0xc0012c0dc0}, 0x5196aa8?, 0xc0018a9960)\n\t/go/pkg/mod/github.com/cs3org/reva/v2@v2.12.0/internal/grpc/interceptors/token/token.go:44 +0x158\ngithub.mirror.nvdadr.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1.1.1({0x3ae2f98?, 0xc002625c50?}, {0x27871a0?, 0xc0012c0dc0?})\n\t/go/pkg/mod/github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/chain.go:25 +0x3a\ngithub.mirror.nvdadr.com/cs3org/reva/v2/internal/grpc/interceptors/appctx.NewUnary.func1({0x3ae2f98, 0xc002625b60}, {0x27871a0, 0xc0012c0dc0}, 0x7f699474dd08?, 0xc0018a9980)\n\t/go/pkg/mod/github.com/cs3org/reva/v2@v2.12.0/internal/grpc/interceptors/appctx/appctx.go:51 +0x73c\ngithub.mirror.nvdadr.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1.1.1({0x3ae2f98?, 0xc002625b60?}, {0x27871a0?, 0xc0012c0dc0?})\n\t/go/pkg/mod/github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/chain.go:25 +0x3a\ngithub.mirror.nvdadr.com/grpc-ecosystem/go-grpc-middleware.ChainUnaryServer.func1({0x3ae2f98, 0xc002625b60}, {0x27871a0, 0xc0012c0dc0}, 0xc002320a18?, 0x24a66e0?)\n\t/go/pkg/mod/github.com/grpc-ecosystem/go-grpc-middleware@v1.3.0/chain.go:34 +0xbf\ngithub.mirror.nvdadr.com/cs3org/go-cs3apis/cs3/storage/provider/v1beta1._ProviderAPI_Stat_Handler({0x2857ba0?, 0xc0008faf00}, {0x3ae2f98, 0xc002625b60}, 0xc002319340, 0xc00129a6c0)\n\t/go/pkg/mod/github.com/cs3org/go-cs3apis@v0.0.0-20221012090518-ef2996678965/cs3/storage/provider/v1beta1/provider_api.pb.go:6240 +0x138\ngoogle.golang.org/grpc.(*Server).processUnaryRPC(0xc001d541e0, {0x3af2990, 0xc001b96820}, 0xc0023a39e0, 0xc00129a870, 0x4fb8df0, 0x0)\n\t/go/pkg/mod/google.golang.org/grpc@v1.51.0/server.go:1340 +0xd13\ngoogle.golang.org/grpc.(*Server).handleStream(0xc001d541e0, {0x3af2990, 0xc001b96820}, 0xc0023a39e0, 0x0)\n\t/go/pkg/mod/google.golang.org/grpc@v1.51.0/server.go:1713 +0xa1b\ngoogle.golang.org/grpc.(*Server).serveStreams.func1.2()\n\t/go/pkg/mod/google.golang.org/grpc@v1.51.0/server.go:965 +0x98\ncreated by google.golang.org/grpc.(*Server).serveStreams.func1\n\t/go/pkg/mod/google.golang.org/grpc@v1.51.0/server.go:963 +0x28a\n"}
{"level":"error","service":"storage-users","pkg":"rgrpc","traceid":"00000000000000000000000000000000","user-agent":"GuzzleHttp/7","from":"tcp://127.0.0.1:38868","uri":"/cs3.storage.provider.v1beta1.ProviderAPI/Stat","start":"08/Dec/2022:13:20:03 +0000","end":"08/Dec/2022:13:20:03 +0000","time_ns":999286,"code":"Internal","time":"2022-12-08T13:20:03.26040212Z","message":"unary"}

Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>
Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>
Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>
@butonic butonic force-pushed the standalone-graph-with-ldap-backend branch from 5c89176 to 4126c7a Compare December 8, 2022 13:50
Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>
Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>
Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>
Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>
@butonic
Copy link
Member Author

butonic commented Dec 8, 2022

fixed the panic in cs3org/reva#3534

Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>
@rhafer
Copy link
Contributor

rhafer commented Dec 8, 2022

@butonic I was able to reproduce the webui test failure. And AFAICS it's caused by the changed status code in PostUser(). I have no idea why that is. But changing the status code back to ok makes the test succeed again 🤷‍♂️

I somehow suspect this to be a weird issue with test-middleware ... but that is just a wild guess.

@butonic butonic force-pushed the standalone-graph-with-ldap-backend branch from 5c3ca10 to 8f00f63 Compare December 8, 2022 22:49
@butonic
Copy link
Member Author

butonic commented Dec 8, 2022

@individual-it how do we bump the version of the test middleware? https://github.com/owncloud/owncloud-test-middleware/blob/a8233f8f5895a74d09e83b75199883c62a8bbf8a/src/helpers/graphHelper.js#L28 needs to check for 201 ... as well ... as the actual acceptance tests and the code itself.

@butonic butonic marked this pull request as ready for review December 8, 2022 23:32
@butonic butonic self-assigned this Dec 8, 2022
@individual-it
Copy link
Member

@butonic

@butonic
Copy link
Member Author

butonic commented Dec 9, 2022

thx, we should get this part of the changes in ASAP

@butonic
Copy link
Member Author

butonic commented Dec 9, 2022

to test set up an ldap server and set these environment variables:

// disable events
"GRAPH_EVENTS_ENDPOINT": "",

// directly talk to ldap
"GRAPH_IDENTITY_BACKEND": "ldap", // ldap is the default

// LDAP connection
"GRAPH_LDAP_URI": "ldap://ldap",
"GRAPH_LDAP_CACERT": "",
"GRAPH_LDAP_INSECURE": "true",
"GRAPH_LDAP_BIND_DN": "cn=admin,dc=owncloud,dc=com",
"GRAPH_LDAP_BIND_PASSWORD": "admin",

"GRAPH_LDAP_SERVER_UUID": "true",
"GRAPH_LDAP_SERVER_USE_PASSWORD_MODIFY_EXOP": "false",
"GRAPH_LDAP_SERVER_WRITE_ENABLED": "true",

// schema definition
"GRAPH_LDAP_USER_BASE_DN": "ou=users,dc=owncloud,dc=com",
"GRAPH_LDAP_USER_SCOPE": "sub",
"GRAPH_LDAP_USER_FILTER": "",
"GRAPH_LDAP_USER_OBJECTCLASS": "inetOrgPerson",
"GRAPH_LDAP_USER_EMAIL_ATTRIBUTE": "mail",
"GRAPH_LDAP_USER_DISPLAYNAME_ATTRIBUTE": "displayName",
"GRAPH_LDAP_USER_NAME_ATTRIBUTE": "uid",
"GRAPH_LDAP_USER_UID_ATTRIBUTE": "entryUUID",
"GRAPH_LDAP_GROUP_BASE_DN": "ou=groups,dc=owncloud,dc=com",
"GRAPH_LDAP_GROUP_SEARCH_SCOPE": "sub",
"GRAPH_LDAP_GROUP_FILTER": "",
"GRAPH_LDAP_GROUP_OBJECTCLASS": "groupOfNames",
"GRAPH_LDAP_GROUP_NAME_ATTRIBUTE": "cn",
"GRAPH_LDAP_GROUP_ID_ATTRIBUTE": "entryUUID",

// we use an api token to authenticate requests
"GRAPH_HTTP_API_TOKEN": "a-secret-api-token",

// the jwt is not needed for the ldap backend
"GRAPH_JWT_SECRET":"unused",

@butonic butonic changed the title standalone graph service with LDAP [full-ci] standalone graph service with LDAP Dec 9, 2022
Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>
@butonic butonic force-pushed the standalone-graph-with-ldap-backend branch from 8f00f63 to b563c1f Compare December 9, 2022 10:53
Copy link
Contributor

@micbar micbar left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>
@sonarcloud
Copy link

sonarcloud bot commented Dec 12, 2022

Kudos, SonarCloud Quality Gate passed!    Quality Gate passed

Bug A 0 Bugs
Vulnerability A 0 Vulnerabilities
Security Hotspot A 0 Security Hotspots
Code Smell A 5 Code Smells

60.0% 60.0% Coverage
0.0% 0.0% Duplication

@butonic
Copy link
Member Author

butonic commented Dec 12, 2022

TODO in a subsequent PR

@butonic butonic merged commit d359a7c into master Dec 12, 2022
@delete-merged-branch delete-merged-branch bot deleted the standalone-graph-with-ldap-backend branch December 12, 2022 11:46
ownclouders pushed a commit that referenced this pull request Dec 12, 2022
Author: Jörn Friedrich Dreyer <jfd@owncloud.com>
Date:   Mon Dec 12 12:46:10 2022 +0100

    [full-ci] standalone graph service with LDAP (#5199)

    * standalone graph service with LDAP

    Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>

    * no panic on PATCH and DELETE

    Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>

    * fix apitoken yaml key

    Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>

    * update user, fix response codes

    Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>

    * fix group creation return code

    Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>

    * remove unknown user property

    Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>

    * fix create return code checks in graph feature context

    Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>

    * updating uses 200 OK when returning a body

    Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>

    * revert user statusCreated change for now

    Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>

    * revert return code changes

    Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>

    Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants