Commit Graph

359 Commits

Author SHA1 Message Date
jkoberg 3629babb7e use name instead id for map
Signed-off-by: jkoberg <jkoberg@owncloud.com>
2023-11-13 11:00:05 +01:00
jkoberg 73f87a003c refactor settings/pkg/store/defaults
Signed-off-by: jkoberg <jkoberg@owncloud.com>
2023-11-10 13:02:21 +01:00
mmattel 5e74b50efb [docs-only] Fix envvars with a array slice ([]string) 2023-11-09 12:22:59 +01:00
Martin 89fb341738 Merge pull request #7690 from owncloud/fix_envvar_duration_descriptions
[docs-only] Fix envvars with a duration.
2023-11-09 09:28:36 +01:00
Florian Schade 643158b67b enhancement: add sharedWithMe graph beta endpoint (#7633) 2023-11-08 20:02:58 +01:00
mmattel b13b880921 [docs-only] Fix envvars with a duration. 2023-11-08 18:32:39 +01:00
Ralf Haferkamp 94d2befc25 Make v1beta1/roleManagement/permissions/roleDefinitions/ beta
To align with the current spec.
2023-11-08 15:46:24 +01:00
Ralf Haferkamp e084e5a722 graph/sharebyme: Use cache for user and group lookups 2023-11-08 14:45:44 +01:00
Ralf Haferkamp c9df9f5f31 graph: Make user and group lookup cache re-usable
drives.go implemented a local user/group cache (ttl based) to speed up repeated
user and group lookups. This commit moves the implementation to the 'identity' module
to make it usable outside of drives.go.
2023-11-08 14:45:44 +01:00
Ralf Haferkamp f2599dfa76 graph: Make createGroupModelFromCS3() function public
This is useful outside the identity module so make it available
2023-11-08 14:45:44 +01:00
Ralf Haferkamp 65daa93c1e Fix url path for getsharedbyme
it's 'drive' not 'drives'
2023-11-08 09:31:45 +01:00
Ralf Haferkamp d2cff38ab4 graph/sharedbyme: Add user and group names to permissions 2023-11-06 09:35:27 +01:00
Ralf Haferkamp 580a4e0d92 graph/sharedbyme: populate the permissions property
Set the exipration date, grantedToV2 and link attributes on the
permissions.

The displayName for users and groups isn't expanded yet (only the "id" is set)
Also, the "roles" attribute cannot be populated yet.
2023-11-06 09:35:27 +01:00
Ralf Haferkamp 454ec52955 graph/sharedbyme: Use existing method to initialize driveitem properties
getDriveItem does a Stat() call on the resource and sets the
corresponding DriveItem properties.
2023-11-06 09:35:27 +01:00
Ralf Haferkamp b0538559c2 graph: Populate 'ParentRef' in driveitems 2023-11-06 09:35:27 +01:00
Ralf Haferkamp f18775b1cb graph: Initial implementation of /me/drives/sharedByMe endpoint
This adds a still incomplete implementation of the new /me/drives/sharedByMe
endpoint. For now it only sets the driveItem Id property. The 'permissions' relation
is not supported yet.

This endpoint is added to the /v1beta1 route, to indicate that it is
still imcomplete and might require changes.
2023-11-06 09:35:27 +01:00
Ralf Haferkamp 86b061421e Disable debug log during test 2023-11-06 09:35:27 +01:00
Dominik Schmidt db32fb46f9 Audio Metadata (#7490)
* Add audio facet to search protobuf message

* Add audio metadata to search index

* Return audio facet from search if available

* Store audio metadata in arbitrary metadata

* Add audio facet to driveItems listings

* Make tests coding style more consistent

* Fix tests

* Add changelog

* Make valueToString code more defensive

* Log status code as well
2023-11-06 08:56:46 +01:00
jkoberg 6e510be180 return 423 on tag create when file is locked
Signed-off-by: jkoberg <jkoberg@owncloud.com>
2023-10-26 16:07:50 +02:00
Roman Perekhod d185b7145f implement sharing roles (#7524)
Co-authored-by: Roman Perekhod <rperekhod@owncloud.com>
2023-10-24 15:01:11 +02:00
Ralf Haferkamp 4465c9385d graph/education: Fix issues reported by sonarcloud 2023-09-27 15:39:00 +02:00
Ralf Haferkamp a34d467285 graph/education: slightly improve error handling and logging
- Use var for common errors
- Add the addition error message to the Error() output of errorcode.Error
- in PatchEducationSchool() use errorcode.RenderError() to turn the errorcode
  in to the right HTTP Status (instead of return 500 always)
2023-09-27 15:39:00 +02:00
Ralf Haferkamp 4f59de9c52 graph/education: Check school number for duplicates before adding a school 2023-09-27 15:39:00 +02:00
Ralf Haferkamp e2849bf19d graph/education: Add getSchoolByNumber helper
Sometimes we explicit need to lookup by number and not numberOrID
2023-09-27 15:39:00 +02:00
Ralf Haferkamp ce808eaa17 graph/education: Remove unreachable code
An LDAP Modify operation never returns LDAPResultEntryAlreadyExists errors.
That error can only happen for LDAPAdd or LDAPModifyDN.
2023-09-27 15:39:00 +02:00
Ralf Haferkamp 16debe6fa5 graph/education: Use helper for creating attribute list 2023-09-27 15:39:00 +02:00
Ralf Haferkamp 164edd16c0 graph/education: Don't leak LDAP errors into the graph error message 2023-09-27 15:39:00 +02:00
Jörn Friedrich Dreyer c083f598b7 fix group id claim (#7352)
Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>
2023-09-26 15:13:15 +02:00
jkoberg 1f1aa50c54 hard exit when services fail
Signed-off-by: jkoberg <jkoberg@owncloud.com>
2023-09-21 13:53:18 +02:00
Ralf Haferkamp 8f284e7c2b Add OCIS_LDAP_BIND_PASSWORD envvar and deprecate LDAP_BIND_PASSWORD
For some reason LDAP_BIND_PASSWORD was forgotten when all the other global LDAP_
variables got renamed.

Also marks LDAP_BIND_PASSWORD and LDAP_USER_SCHEMA_ID_IS_OCTETSTRING for removal with 5.0.0

Partial: #7176
2023-09-20 19:00:11 +02:00
Jörn Friedrich Dreyer 8cbf261568 give graph driveItems some love (#7250)
* give graph driveItems some love

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

* extract parseIDParam()

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

* add GetDriveItem(Children) tests

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

---------

Signed-off-by: Jörn Friedrich Dreyer <jfd@butonic.de>
2023-09-08 15:40:06 +02:00
Ralf Haferkamp a01f5d94c2 graph: debug logging for requireadmin middleware 2023-09-07 20:54:14 +02:00
Ralf Haferkamp ace1d70ba8 Fix wrong log-level for debug output 2023-09-06 08:32:34 +02:00
jkoberg bd716156fc let ocis init set the serviceaccounts
Signed-off-by: jkoberg <jkoberg@owncloud.com>
2023-08-31 12:11:44 +02:00
jkoberg 0cd5ad6415 use service accounts for graph
Signed-off-by: jkoberg <jkoberg@owncloud.com>
2023-08-31 12:11:43 +02:00
Daniel Swärd 49fc22d532 Add missing tracing references to multiple services. (#7110) 2023-08-23 15:17:17 +02:00
Christian Richter d7139d4127 remove deprecated variables
Signed-off-by: Christian Richter <crichter@owncloud.com>
2023-08-22 17:25:24 +02:00
Ralf Haferkamp c0181f8144 graph: honor the OCIS_LDAP_GROUP_SCHEMA_MEMBER setting
Fixes: #7032
2023-08-17 11:06:34 +02:00
jkoberg 49cdcad129 unify eventstream creation
Signed-off-by: jkoberg <jkoberg@owncloud.com>
2023-08-16 10:14:12 +02:00
Daniël Franke 952ebe7d7d Pass context to event publishing.
To allow tracing propagation via events, we need to pass the context
to the `Publish` function of reva events. This adds the context
everywhere where events are published. If there was no context to pass,
we started a new one with `context.Background()`.
2023-08-11 12:01:19 +02:00
Daniel Swärd fc3dce05f4 Add missing tracing initialization for graph service (#6988)
* Convert webdav to service trace provider

* graph: Add missing tracing initialization to graph service
2023-08-08 13:14:45 +02:00
Daniel Swärd 6a5e21eff4 Replacing implicit grpc client initialization with explicit package local variables. 2023-07-31 12:57:59 +02:00
Daniël Franke 919404bafe Move graph service to service tracer.
This changes the graph service away from using global tracers,
which makes debugging tracing issues easier going forward.
2023-07-12 12:56:33 +02:00
Ralf Haferkamp 51bc49d5b5 graph: Add config knob to set a minimal grace period for schoolTermination
When setting a terminationDate on a School, it's possible to configure a grace
period now so that only terminationDate that are at least a certain time in the
future can be set.
We also now forbid to set a terminationDate in the past.
2023-07-12 08:48:19 +02:00
Ralf Haferkamp 0bc36f1cf5 graph: Turn PatchEducationSchool test into test table 2023-07-12 08:48:19 +02:00
Ralf Haferkamp 5304184bd6 graph: Add 'terminationDate' property to educationSchool
Schools can now have a terminationDate set. Schools can only be deleted if the
terminationDate is in the past. Schools without a terminationDate cannot be deleted.
2023-07-12 08:48:19 +02:00
Ralf Haferkamp b74eeed359 ldap: Implement missing methods for 3.4.5 go-ldap in ldap reconnect wrapper 2023-07-11 16:05:32 +02:00
mmattel 6ad53971ef [docs-only] Increase readability for log level values in the description 2023-07-07 10:33:42 +02:00
mmattel d7b447b791 [docs-only] Increase readability for tracing values in the description 2023-07-07 09:50:39 +02:00
Ralf Haferkamp c9a9fddef1 Consitently switch to stretchr/testify
We were using stretchr/testify and test-go/testify inconsitently and
sometimes mixed in the same tests. This can cause very strange issue,
e.g when using things like mock.MatchedBy().

This moves all our code to stretchr/testify, which seems to be far
more active and maintained then test-go/testify.
2023-06-29 13:44:49 +02:00