Repository
OCA/server-tools · module folder · Try on Runboat
Module version
1.0.0
Category
Tools
Folder size
0.34 MB
License
AGPL-3
Application
No
Auto-installable
No
Website
https://github.com/OCA/server-tools
Last tracking update
2026-08-07 08:23:02
Authors
Odoo Community Association (OCA), Binhex
Maintainers
Odoo Community Association (OCA), Binhex
Committers
Weblate, OCA-git-bot, oca-ci, r.perez
Odoo dependencies
OCA/server-env:
OCA/server-tools:
OCA/storage:
odoo/odoo:
- web
- bus
Python dependencies
cryptography, paramiko<4.0.0, pysftp, fsspec>=2025.3.0, python_slugify, fsspec>=2024.5.0
System dependencies
None
Required by
None
Description
This module enhances the database backup functionality in Odoo by introducing support for storing backups as files using the `fsspec` library. It is designed to address the need for reliable and flexible backup solutions, enabling businesses to safeguard their data by storing backups on various filesystems, including cloud storage providers, network drives, and local secure storage.

By integrating with the `fs_file` addon from the OCA storage repository, this module allows users to automate the backup process and store the resulting files in a configured filesystem. It provides an easy-to-use interface for configuring backup methods, managing stored backups, and ensuring data integrity for disaster recovery or multi-environment setups.

Code Analysis

Views touched (5)
XML IDNameModelTypeStatus
db_backup_fs_file_form_view db.backup.fs.file.form.view db.backup.fs.file form New
db_backup_fs_file_search_view db.backup.fs.file.search.view db.backup.fs.file search New
db_backup_fs_file_tree_view db.backup.fs.file.tree.view db.backup.fs.file tree New
view_backup_conf_form db.backup form Inherits auto_backup.view_backup_conf_form
view_backup_conf_tree db.backup tree Inherits auto_backup.view_backup_conf_tree
HTTP endpoints (0)

No HTTP endpoints found for this module.

Models touched (2)

New fields (4)
  • fs_file_backup_count Integer
    compute='_compute_fs_file_backup_count'
  • fs_file_backup_ids One2many → db.backup.fs.file
    comodel_name='db.backup.fs.file' inverse_name='db_backup_id' string='Fs File Backups'
  • method Selection
    ondelete={'fs_file': 'cascade'} selection_add=[('fs_file', 'Fs File')]
  • responsible_id Many2one → res.users
    help='User to be notified.' args: 'res.users'
Public methods (3)
  • action_backup(self)
    Override the action_backup method to add the fs_file method.
  • action_open_fs_backups_view(self)
  • cleanup(self)
    Extend cleanup to fs_file backups.

New fields (3)
  • db_backup_id Many2one → db.backup
    required=True string='DB Backup' args: 'db.backup'
  • is_expired Boolean
    compute='_compute_is_expired' help='Indicates whether the backup has exceeded its storage time.'
  • name Char
    required=True args: 'Backup Filename'
Public methods (2)
  • fs_storage(self)
    @api.model
  • get_fs_storage_filename(self)
Status
Open migration PR — not merged yet for this version
CI status
green — ready to merge
Open since
92 days ago
Last activity
29 days ago
Repository
OCA/server-tools
Pull request
[16.0] [BACKPORT] [MIG] auto_backup_fs_file (#3621)
Status
Open migration PR — not merged yet for this version
CI status
green — ready to merge
Open since
92 days ago
Last activity
30 days ago
Repository
OCA/server-tools
Pull request
[18.0] [MIG] auto_backup_fs_file (#3619)