This module allows to use server environment with fs storage. It is a bridge between fs_storage and server_environment modules. It provides an implementation of the StorageEnvironment class that uses the filesystem as a storage backend.
auto_awesome What this module does
AI-generated from the code · Odoo 19.0Lets administrators configure filesystem storage settings (protocol, options, directory path) from server environment configuration files instead of typing them in Odoo, so storage backends can be managed per deployment.
This module is a bridge between the filesystem storage feature and the server environment feature. It makes the storage configuration fields of fs.storage records readable from server environment configuration files, so the same database can use different storage settings depending on the server it runs on.
The fields that can be driven by the server environment are the storage protocol, its options, the directory path, whether options are evaluated from the environment, the model and field references used by the storage, and the connection check method. The section name used to look up the configuration is the storage record's code.
Because the module installs automatically when both dependencies are present, no manual installation step is needed. On installation it preserves any data already entered manually in those fields so it is not lost when the environment takes over. If the module is later uninstalled, the database columns that were managed by the environment are restored, with the protocol defaulting back to odoofs.
It does not add menus or screens of its own; configuration happens through the existing storage records and the server environment configuration files.
Depends on
Required by other modules
Models and fields (1)
- fs.storage · new model
Text generated by AI (DeepSeek) from reading the Odoo 19.0 code on GitHub; it may contain mistakes, so check the code before deciding. View the code on GitHub
Availability by version
Reviewed: 2026-11-03Confirmation status: 3 confirmed, 6 with no information of 9 versions.
Sources · Odoo 19.0
Confirmed on 2026-11-03 in branch 19.0 of OCA/storage.
terminal Installation and usage
OCA documentation · Odoo 19.0Usage
Source · Odoo 19.0To ease the management of the filesystem storages configuration accross the different environments, the configuration of the filesystem storages can be defined in environment files or directly in the main configuration file. For example, the configuration of a filesystem storage with the code fsprod can be provided in the main configuration file as follows:
[fs_storage.fsprod]
protocol=s3
options={"endpoint_url": "https://my_s3_server/", "key": "KEY", "secret": "SECRET"}
directory_path=my_bucketTo work, a storage.backend record must exist with the code fsprod into the database. In your configuration section, you can specify the value for the following fields:
- protocol
- options
- directory_path
When evaluating directory_path, {db_name} is replaced by the database name. This is usefull in multi-tenant with a setup completly controlled by configuration files.
Migration from storage_backend
The fs_storage addon can be used to replace the storage_backend addon. (It has been designed to be a drop-in replacement for the storage_backend addon). To ease the migration, the fs.storage model defines the high-level methods available in the storage_backend model. These methods are:
- add
- get
- list_files
- find_files
- move_files
- delete
These methods are wrappers around the methods of the fsspec.AbstractFileSystem class (see ). These methods are marked as deprecated and will be removed in a future version (V18) of the addon. You should use the methods of the fsspec.AbstractFileSystem class instead since they are more flexible and powerful. You can access the instance of the fsspec.AbstractFileSystem class using the fs property of a fs.storage record.
No verified information in OCA: Installation, Configuration.
Installation instructions, the distribution package, dependencies and configuration steps are not shown because they have not yet been verified in the module documentation for any version.
Data imported from GitHub: this sheet reflects the latest catalog review, not a live lookup. Always check the module documentation and staging before installing in production.