Pascal Bleser
e3e58e28c1
groupware: blob streaming (upload and download)
2026-04-13 16:39:51 +02:00
Pascal Bleser
3fd0661eb7
groupware: more JMAP operations implementation
2026-04-13 16:39:51 +02:00
Pascal Bleser
bb99be8732
groupware: further implementation and improvements
2026-04-13 16:39:51 +02:00
Pascal Bleser
b408f895ae
upgrade Stalwart to 0.13.2
2026-04-13 16:39:51 +02:00
Pascal Bleser
ff579adc3b
refactored the Session object, refactored the services/groupware directory, and started Swagger documentation implementation
2026-04-13 16:39:51 +02:00
Pascal Bleser
975ce31d56
groupware: refactoring the API mechanisms
2026-04-13 16:39:51 +02:00
Pascal Bleser
c093527c3d
groupware: implement JSON:API's error response format, with a revamped error handling in jmap and services/groupware
2026-04-13 16:39:51 +02:00
Pascal Bleser
2c1ccbb22e
Refactor groupware service after ADR decision on the Groupware API
...
* after having decided that the Groupware API should be a standalone
independent custom REST API that is using JMAP data models as much as
possible,
* removed Groupware APIs from the Graph service
* moved Groupware implementation to the Groupware service, and
refactored a few things accordingly
2026-04-13 16:39:51 +02:00
Pascal Bleser
cff4f55633
Groupware and jmap: cleanup and API documentation
2026-04-13 16:39:51 +02:00
Pascal Bleser
241fd4aa70
groupware: remove unneeded messages.go that was a remainder from an earlier implementation attempt, which also fixes compilation issues due to changes in main
2026-04-13 16:39:51 +02:00
Pascal Bleser
9271e25d38
opencloud_full: upgrade Stalwart to 0.12.5, and use the ghcr.io container repository to avoid Hub limits
2026-04-13 16:39:51 +02:00
Pascal Bleser
2f582858b5
Groupware improvements: refactoring, k6 tests
...
* refactored the models to be strongly typed with structs and mapstruct
to decompose the dynamic parts of the JMAP payloads
* externalized large JSON strings for tests into .json files under
testdata/
* added a couple of fantasy Graph groupware APIs to explore further
options
* added k6 scripts to test those graph/me/messages APIs, with a setup
program to set up users in LDAP, fill their IMAP inbox, activate them
in Stalwart, cleaning things up, etc...
2026-04-13 16:39:51 +02:00
Pascal Bleser
da824a4037
fix Stalwart LDAP configuration
2026-04-13 16:39:51 +02:00
Pascal Bleser
ea45bcff64
Use password policy overlay in LDAP and configure Stalwart to use it
2026-04-13 16:39:51 +02:00
Pascal Bleser
2a8681b401
upgrade Stalwart to 0.12.4
2026-04-13 16:39:51 +02:00
Pascal Bleser
1c0f38f291
groupware: removed debugging logs
2026-04-13 16:39:51 +02:00
Pascal Bleser
72ac728c73
jwkset: remove debugging printlns
2026-04-13 16:39:51 +02:00
Pascal Bleser
1f2764c83c
auth-api: fix: was missing newly introduced metrics
2026-04-13 16:39:51 +02:00
Pascal Bleser
3998c7fffd
groupware and jmap improvements and refactoring
2026-04-13 16:39:51 +02:00
Pascal Bleser
f59d44a5b5
upgrade Stalwart to 0.12
2026-04-13 16:39:51 +02:00
Pascal Bleser
a99f2270bf
minor corrections to the Stalwart configuration
2026-04-13 16:39:51 +02:00
Pascal Bleser
75f814fda2
Introduce a the auth-api service
...
* primitive implementation to demonstrate how it could work, still to
be considered WIP at best
* add new dependency: MicahParks/jwkset and MicahParks/keyfunc to
retrieve the JWK set from KeyCloak to verify the signature of the
JWTs sent as part of Bearer authentication in the /auth API
* (minor) opencloud/.../service.go: clean up a logging statement that
was introduced earlier to hunt down why the auth-api service was not
being started
2026-04-13 16:39:50 +02:00
Pascal Bleser
1e2e2b46df
add an auth-api service to make an exemplary implementation of an external authentication API for third party services such as Stalwart
2026-04-13 16:39:50 +02:00
Pascal Bleser
dc73c8d7b1
move services/groupware/pkg/jmap to pkg/jmap
2026-04-13 16:39:50 +02:00
Pascal Bleser
1f4f0ff601
WIP: restructure the Jmap client, and implement the /me/messages Graph API endpoint with it
2026-04-13 16:39:50 +02:00
Pascal Bleser
bac50f4edb
add an OIDC Directory to Stalwart, requires exposing Keycloak port 8080 directly to access the userinfo endpoint using HTTP since the certificates in traefik are self-signed and end up being rejected by Stalwart with no option to bypass the certificate check
2026-04-13 16:39:50 +02:00
Pascal Bleser
39f224024a
rename Stalwart fallback admin username from 'admin' to 'mailadmin' since 'admin' exists as a regular user in LDAP and thus won't have access to the administration
2026-04-13 16:39:50 +02:00
Pascal Bleser
bc88bc7217
add missing routing for /groupware (currently unprotected for testing)
2026-04-13 16:39:50 +02:00
Pascal Bleser
1aedde8de6
WIP: initial implementation of the groupware service
2026-04-13 16:39:50 +02:00
Pascal Bleser
2dc96b179c
Add Stalwart container to the opencloud_full deployment, using the OpenLDAP container as a directory for user authentication
2026-04-13 16:39:50 +02:00
dependabot[bot]
113de08e28
build(deps-dev): bump dotenv from 16.4.7 to 17.4.2 in /services/idp
...
Bumps [dotenv](https://github.com/motdotla/dotenv ) from 16.4.7 to 17.4.2.
- [Changelog](https://github.com/motdotla/dotenv/blob/master/CHANGELOG.md )
- [Commits](https://github.com/motdotla/dotenv/compare/v16.4.7...v17.4.2 )
---
updated-dependencies:
- dependency-name: dotenv
dependency-version: 17.4.2
dependency-type: direct:development
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-04-13 15:27:26 +02:00
Ralf Haferkamp
233ff383e7
chore: bump IDP javascript dependencies
2026-04-13 12:01:52 +02:00
dependabot[bot]
b78d3ed42b
build(deps): bump github.com/nats-io/nats.go from 1.49.0 to 1.50.0
...
Bumps [github.com/nats-io/nats.go](https://github.com/nats-io/nats.go ) from 1.49.0 to 1.50.0.
- [Release notes](https://github.com/nats-io/nats.go/releases )
- [Commits](https://github.com/nats-io/nats.go/compare/v1.49.0...v1.50.0 )
---
updated-dependencies:
- dependency-name: github.com/nats-io/nats.go
dependency-version: 1.50.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-04-13 09:53:48 +02:00
dependabot[bot]
d029201b83
build(deps): bump go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc
...
Bumps [go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc](https://github.com/open-telemetry/opentelemetry-go ) from 1.42.0 to 1.43.0.
- [Release notes](https://github.com/open-telemetry/opentelemetry-go/releases )
- [Changelog](https://github.com/open-telemetry/opentelemetry-go/blob/main/CHANGELOG.md )
- [Commits](https://github.com/open-telemetry/opentelemetry-go/compare/v1.42.0...v1.43.0 )
---
updated-dependencies:
- dependency-name: go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc
dependency-version: 1.43.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-04-13 09:52:58 +02:00
opencloudeu
b9ed197a23
[tx] updated from transifex
2026-04-12 00:05:15 +00:00
Ralf Haferkamp
9cfe4dadb6
bump reva to get TenantAPI service
2026-04-09 17:46:50 +02:00
Ralf Haferkamp
d9f39773e7
proxy: add memory cache for tenant id mapping
...
This is to reduce the number of "proxy->gateway->users->ldap" roundtrips
for the tenant id mapping.
The cache currently has a non-configurable ttl of 10 min.
Related: #2310
2026-04-09 17:46:50 +02:00
Ralf Haferkamp
a931e53c26
proxy: Allow mapping from an external tenant id to the internal id
...
When the tenant id coming in via the OIDC claims doesn't match the
tenant id on the provisioned user, a mapping can be configured and
resolved via the reva TenantAPI service (now started as part of the
"users" service).
Closes : #2310
2026-04-09 17:46:50 +02:00
Ralf Haferkamp
b8c4f581fb
chore: bump reva to latest main
2026-04-08 11:45:37 +02:00
dependabot[bot]
4c86d2a289
build(deps): bump golang.org/x/image from 0.36.0 to 0.38.0
...
Bumps [golang.org/x/image](https://github.com/golang/image ) from 0.36.0 to 0.38.0.
- [Commits](https://github.com/golang/image/compare/v0.36.0...v0.38.0 )
---
updated-dependencies:
- dependency-name: golang.org/x/image
dependency-version: 0.38.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-04-08 10:18:43 +02:00
Jannik Stehle
c9a41a4bfd
Merge pull request #2555 from pedropintosilva/feat/enable-insert-remote-file
...
feat: enable EnableInsertRemoteFile WOPI flag for Collabora
2026-04-08 10:00:46 +02:00
dependabot[bot]
369d03d532
build(deps-dev): bump css-minimizer-webpack-plugin in /services/idp
...
Bumps [css-minimizer-webpack-plugin](https://github.com/webpack/css-minimizer-webpack-plugin ) from 7.0.4 to 8.0.0.
- [Release notes](https://github.com/webpack/css-minimizer-webpack-plugin/releases )
- [Changelog](https://github.com/webpack/css-minimizer-webpack-plugin/blob/main/CHANGELOG.md )
- [Commits](https://github.com/webpack/css-minimizer-webpack-plugin/compare/v7.0.4...v8.0.0 )
---
updated-dependencies:
- dependency-name: css-minimizer-webpack-plugin
dependency-version: 8.0.0
dependency-type: direct:development
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-04-07 14:10:08 +02:00
dependabot[bot]
9123e88f10
build(deps): bump github.com/go-ldap/ldap/v3 from 3.4.12 to 3.4.13
...
Bumps [github.com/go-ldap/ldap/v3](https://github.com/go-ldap/ldap ) from 3.4.12 to 3.4.13.
- [Release notes](https://github.com/go-ldap/ldap/releases )
- [Commits](https://github.com/go-ldap/ldap/compare/v3.4.12...v3.4.13 )
---
updated-dependencies:
- dependency-name: github.com/go-ldap/ldap/v3
dependency-version: 3.4.13
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-04-07 14:06:25 +02:00
Ralf Haferkamp
87a9660157
adr: Add thoughts about guest users ( #2183 )
...
* adr: Add thoughts about guest users
The approach to take has not been decide yet. This just reflects
the current research/concept work.
* adr(guests): incorporate review feedback
* Mark ADR as postponed for now
We'd like to go for a more light-weight approach as discussed in:
https://github.com/opencloud-eu/opencloud/issues/2513
2026-04-07 13:18:56 +02:00
dependabot[bot]
4a7d06fbd3
build(deps): bump github.com/open-policy-agent/opa from 1.14.1 to 1.15.0 ( #2535 )
...
Bumps [github.com/open-policy-agent/opa](https://github.com/open-policy-agent/opa ) from 1.14.1 to 1.15.0.
- [Release notes](https://github.com/open-policy-agent/opa/releases )
- [Changelog](https://github.com/open-policy-agent/opa/blob/main/CHANGELOG.md )
- [Commits](https://github.com/open-policy-agent/opa/compare/v1.14.1...v1.15.0 )
---
updated-dependencies:
- dependency-name: github.com/open-policy-agent/opa
dependency-version: 1.15.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-04-07 09:09:08 +02:00
opencloudeu
c7d920c212
[tx] updated from transifex
2026-04-07 00:05:34 +00:00
opencloudeu
9a6a99cd8c
[tx] updated from transifex
2026-04-05 00:05:39 +00:00
Ralf Haferkamp
33f45fa965
feat(multi-tenancy): verify tenant via OIDC claim
...
When multi-tenancy is enable we now allow to specify an OIDC claim
against which the tenantid of the user resolved via CS3 apis is matched.
Partial: #2310
2026-04-02 16:10:53 +02:00
Ralf Haferkamp
a1d4e86b96
devtools: sync csp.yaml with opencloud-compose repo
2026-04-02 16:10:53 +02:00
opencloudeu
9e615837c6
[tx] updated from transifex
2026-04-02 00:05:58 +00:00