Commit Graph
29 Commits
Author SHA1 Message Date
Nicolas Clerc 5149283688 (backend) sign OnlyOffice conversion requests with JWT
The OnlyOffice server rejects unsigned /converter requests with error
code -8 when JWT is enabled.

Add a dedicated WOPI_ONLYOFFICE_CONVERT_JWT_SECRET setting and fix the
JWT body token format to match the OnlyOffice conversion API: encode
parameters directly instead of wrapping them in {"payload": …}, and
send only {"token": "…"} in the request body.

Enable JWT on the development OnlyOffice container so the issue is
caught locally.
2026-06-08 11:59:32 +02:00
Nicolas Clerc 88e2693704 (backend) add OnlyOffice conversion backend
Drive needs a server-side path to convert legacy Office files without opening an
interactive editor session.

Use OnlyOffice's conversion API as the first supported provider for the POC.
2026-06-02 15:23:42 +02:00
Nicolas Clerc 9995a2af30 📝(doc) document user account reconciliation
Explain the CSV import flow and the form URL setting so admins can run
account merges.
2026-05-27 17:36:47 +02:00
Nathan Panchout 3731033f5b 🔧(project) add DJANGO_EMAIL_URL_APP environment variable
Share invitation emails embedded `Site.domain` directly, producing
schemeless links that mail clients failed to resolve. Introduce a
`DJANGO_EMAIL_URL_APP` environment variable holding the app's
absolute URL used when building invitation links, with a fallback
on the current Site domain when unset. Wire it in dev env, helm
dev values, the helm example and the env reference.
2026-04-23 12:05:26 +02:00
Nathan Vasse 86f07a1999 ⬆️(frontend) upgrade cunningham-react and ui-kit
Upgrade cunningham-react to 4.3.0 and ui-kit to 0.20.0.
Theme names are renamed to match the new naming
convention (anct→anct-light, dark→dsfr-dark,
default→dsfr-light). Replace custom deepMerge with
the deepmerge library.
2026-04-07 15:39:33 +02:00
Nathan Vasse ab9d4e462a 🔧(ci) allow env override in compose for e2e tests
Add an ENV_OVERRIDE variable so docker-compose can load an
extra env file (e.g. common.e2e) on top of common.local.
This lets the e2e runner enable WOPI_CLIENTS=collabora
without touching the default dev config.
2026-02-25 11:37:00 +01:00
Nathan Vasse 4d09beebb2 🔧(conf) disable SupportsRename for Collabora
Collabora does not post messages when a file is renamed
so the frontend cannot reflect the change. Disabling
SupportsRename hides the rename option in the editor.
2026-02-24 17:38:37 +01:00
Nathan Vasse a78b017f06 🐛(backend) remove scheme from OIDC redirect allowed hosts
The OIDC_REDIRECT_ALLOWED_HOSTS setting expects host:port
values without the http:// scheme prefix. Including the
scheme caused redirect validation to fail silently.
2026-02-23 15:44:26 +01:00
Nathan Vasse 6eb1813dbf 🔧(docker) allow overriding common env file in compose
The backend service was hardcoded to use common.local. We
now use ENV_OVERRIDE to select the env file, consistent with
the postgresql config. This enables e2e tests to use their
own common.e2e env file.
2026-02-12 09:54:52 +01:00
Manuel Raynaud 6899f02e8d ♻️(backend) force link_reach to be in sync with parents
For the same reason we not create an access when a child is created, we
have to not set value to link_reach allowing null value. A root will
have the link_reach set to restricted when created and then every
children are set to null. when the link_configuration will be updated,
descendants will be sync when the new link_reach is higher than the
previous one. Also move scenarios are impacted. When moving to the root,
we force the link_reach to restricted and when moving in an existing
item, we sync it with parents.
2026-02-06 15:58:19 +01:00
Manuel Raynaud 201d728343 ️(backend) revert AWS_S3_REGION_NAME configuration
The AWS_S3_REGION_NAME settins has been changed in the
env.d/development/common file previously. This modification does not
make anysense, our minio config don't use it.
2026-01-28 08:05:14 +01:00
Manuel Raynaud ca6cbacff3 🏗️(ds_proxy) introduce how to use ds_proxy with Drive
We want to add documentation showing how to use DS_Proxy with Drive.
With proxy is fully optionnal and is here if you want to an encryption
layer between Drive and the object storage.
2026-01-23 09:18:03 +01:00
Fabre FlorianandQuentin BEY 03124f4bf1 (backend) add indexed search feature flag
Add setting FEATURES_INDEXED_SEARCH that allows to disable the
search of indexed files while using the indexation tools.

Signed-off-by: Fabre Florian <ffabre@hybird.org>
2025-12-16 22:50:25 +01:00
Fabre FlorianandQuentin BEY 0d5631cf9c (backend) Fix access token storage issues
When indexer service is not configured, the search view should work
event with a disabled OIDC_STORE_ACCESS_TOKEN.
Disable token storage for the unit tests.
Add bin/fernetkey that generates a key for the OIDC_STORE_REFRESH_TOKEN_KEY
setting.

Signed-off-by: Fabre Florian <ffabre@hybird.org>
2025-12-16 22:50:25 +01:00
Fabre FlorianandQuentin BEY 5492a68a99 (backend) enable limit for the indexed content
Use SEARCH_INDEXER_CONTENT_MAX_SIZE as limit (in bytes) for the file content.
Fix default configuration of OIDC_STORE_ACCESS_TOKEN

Signed-off-by: Fabre Florian <ffabre@hybird.org>
2025-12-16 22:50:25 +01:00
Fabre FlorianandQuentin BEY cad05aa4ff 🔧(compose) disable indexer in default configuration
Set SEARCH_INDEXER_CLASS=None as default configuration for dev.
Add documentation for Find service setup.

Signed-off-by: Fabre Florian <ffabre@hybird.org>
2025-12-16 22:50:25 +01:00
Fabre FlorianandQuentin BEY eb4b511569 (backend) add indexer service
Add SearchIndexer service that handles indexation & search API calls to Find
Add SEARCH_INDEXER_* settings to configure it.

Signed-off-by: Fabre Florian <ffabre@hybird.org>
2025-12-16 22:50:25 +01:00
Nathan Vasse a485186b1b (back) add resource server settings
Those settings are required to setup the app as a
resource server using django-lasuite library.
2025-10-30 11:02:15 +01:00
Nathan Vasse 66eeac21f3 (back) add messages widget settings vars
We need those vars to allow customization for the feedback button
to opens the messages widget.
2025-09-29 16:27:33 +02:00
Manuel Raynaud f56c54501a 🔧(compose) add onlyoffice service
We want to use both collabora and onlyoffice. We add onlyoffice in the
compose stack.
2025-09-26 16:01:16 +02:00
Manuel Raynaud 9462f7b243 (back) fully compute wopisrc url in the backend
All the info needed to compute the wopisrc url was sent to the front
application and the front application will have to compute it. Instead
of this, everything is made in the back application, the front just have
to use it.
2025-09-26 16:01:14 +02:00
Manuel Raynaud e2a2cb1de8 ♻️(backend) use PUT presigned-url to upload files
The file upload to the object storage backend was made using a presigned
post. But not many object storage solution implement this method. They
all used presigned url combined with the put_object method. We choose to
change to this method to be more widely compatible.
2025-09-23 18:00:39 +02:00
Nathan Vasse c61878253b 🔧(conf) setup handy local e2e env
We want to be able to quickly start a local isolated env for the
e2e testing, we don't want to share to same db with the classic
dev env because the e2e db should be empty before tests execution.
And we don't want to clear our dev db every time. Also provide a new
makefile handy command to launch the e2e env and the tests in one
command, great.
2025-08-27 15:45:15 +02:00
Manuel Raynaud ca11ac0e89 🔧(project) change env.d system by using local files
We had lot of problems with the previous env.d system.
Users were often confused by the need to change
the env.d files manually, leading to issues
when using the project locally.
This commit introduces a new system that uses
.env.local files, which are automatically created
and can be modified by users without affecting
the original env.d files. This should simplify
the development process and reduce confusion by
removing the need to manually edit env.d files.
2025-08-18 11:45:52 +02:00
Nathan VasseandManuel Raynaud 94bff57020 🔧(conf) update FRONTEND_THEME default value
The dsfr value does not work now that we implemented its usage
on the frontend side. It was causing a crash.
2025-07-29 14:29:23 +02:00
Nathan Vasse 2706d4b745 (back) add frontend envvar to settings and config
We need more envvar to pass to the frontend to allow greater
customization for instances of Drive.
2025-07-03 09:31:46 +02:00
Manuel Raynaud 5866183724 📝(doc) list environment variable configurable
Create a documentation listing all environment variable that can be
configured in the project.
2025-06-27 16:34:21 +02:00
Manuel Raynaud 9b421705f1 ♻️(back) remove usage of mozilla-oidc in favor of django-lasuite
We have implemented in a common library, django-lasuite. This library
integrates all the OIDC code we already made. We need this first refacto
in order to use new feature like resource server API.
2025-05-19 17:43:14 +02:00
Manuel Raynaud 7eed577278 (back) add first backend version
The first backend version is able to manage items object and their
lifecycle
2025-02-11 14:57:09 +01:00