Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
103 changes: 103 additions & 0 deletions fs_storage_backup/README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,103 @@
=========================
Filesystem Storage Backup
=========================

..
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! source digest: sha256:3292ef4f97f5dcf8a5364cba204599da2169dd30020b9b488ddb72885f85f85b
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
:target: https://odoo-community.org/page/development-status
:alt: Beta
.. |badge2| image:: https://img.shields.io/badge/licence-AGPL--3-blue.png
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
:alt: License: AGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fstorage-lightgray.png?logo=github
:target: https://github.com/OCA/storage/tree/18.0/fs_storage_backup
:alt: OCA/storage
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
:target: https://translation.odoo-community.org/projects/storage-18-0/storage-18-0-fs_storage_backup
:alt: Translate me on Weblate
.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png
:target: https://runboat.odoo-community.org/builds?repo=OCA/storage&target_branch=18.0
:alt: Try me on Runboat

|badge1| |badge2| |badge3| |badge4| |badge5|

With this module you can configure one or more database backup
locations.

**Table of contents**

.. contents::
:local:

Configuration
=============

1. Go to Settings > Technical > FS Storage > FS Storage
2. Select a filesystem you want to use for backups. **NOTE: Make sure
you don't use the filestore as backup location otherwise it's
possible you'll back up the backup**
3. Enable ``Use For Backups``
4. Follow it (using the chatter) if you want to get notified when a
backup fails
5. To know if the backup is working correctly you can run the scheduled
action (``Backup database and delete old backups``) manually to test
it.

Usage
=====

The backup is done automatically by a scheduled action
(``Backup database and delete old backups``).

Known issues / Roadmap
======================

- **Configurable backup frequency**: e.g. backup every 7 days in s3 and
every 4 hours on a FTP server.

Bug Tracker
===========

Bugs are tracked on `GitHub Issues <https://github.com/OCA/storage/issues>`_.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us to smash it by providing a detailed and welcomed
`feedback <https://github.com/OCA/storage/issues/new?body=module:%20fs_storage_backup%0Aversion:%2018.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.

Do not contact contributors directly about support or help with technical issues.

Credits
=======

Authors
-------

* Onestein

Contributors
------------

- Dennis Sluijk [email protected] (https://onestein.nl)

Maintainers
-----------

This module is maintained by the OCA.

.. image:: https://odoo-community.org/logo.png
:alt: Odoo Community Association
:target: https://odoo-community.org

OCA, or the Odoo Community Association, is a nonprofit organization whose
mission is to support the collaborative development of Odoo features and
promote its widespread use.

This module is part of the `OCA/storage <https://github.com/OCA/storage/tree/18.0/fs_storage_backup>`_ project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
1 change: 1 addition & 0 deletions fs_storage_backup/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
from . import models
14 changes: 14 additions & 0 deletions fs_storage_backup/__manifest__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
{
"name": "Filesystem Storage Backup",
"category": "Technical",
"version": "18.0.1.0.0",
"license": "AGPL-3",
"author": "Onestein, Odoo Community Association (OCA)",
"website": "https://github.com/OCA/storage",
"depends": ["fs_storage", "mail"],
"data": [
"data/ir_cron_data.xml",
"data/mail_message_subtype_data.xml",
"views/fs_storage_view.xml",
],
}
16 changes: 16 additions & 0 deletions fs_storage_backup/data/ir_cron_data.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
<?xml version="1.0" encoding="utf-8" ?>
<odoo noupdate="1">
<record model="ir.cron" id="cron_backup_db">
<field name="name">Backup database and delete old backups</field>
<field name="interval_number">1</field>
<field name="interval_type">days</field>
<field name="active">True</field>
<field name="model_id" ref="fs_storage.model_fs_storage" />
<field name="state">code</field>
<field name="code">model.cron_backup_db()</field>
<field
name="nextcall"
eval="(datetime.now() + timedelta(days=1)).strftime('%Y-%m-%d 00:00:00')"
/>
</record>
</odoo>
15 changes: 15 additions & 0 deletions fs_storage_backup/data/mail_message_subtype_data.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
<?xml version="1.0" encoding="utf-8" ?>
<odoo noupdate="1">
<record id="message_subtype_backup_failed" model="mail.message.subtype">
<field name="name">Backup Failed</field>
<field name="description">Backup failed</field>
<field name="res_model">fs.storage</field>
<field name="default" eval="True" />
</record>
<record id="message_subtype_cleanup_failed" model="mail.message.subtype">
<field name="name">Backup Cleanup Failed</field>
<field name="description">Failed to clean up old backups</field>
<field name="res_model">fs.storage</field>
<field name="default" eval="True" />
</record>
</odoo>
177 changes: 177 additions & 0 deletions fs_storage_backup/i18n/fs_storage_backup.pot
Original file line number Diff line number Diff line change
@@ -0,0 +1,177 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * fs_storage_backup
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 16.0\n"
"Report-Msgid-Bugs-To: \n"
"Last-Translator: \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: \n"

#. module: fs_storage_backup
#: model:ir.model.fields,field_description:fs_storage_backup.field_fs_storage__message_needaction
msgid "Action Needed"
msgstr ""

#. module: fs_storage_backup
#: model:ir.model.fields,field_description:fs_storage_backup.field_fs_storage__message_attachment_count
msgid "Attachment Count"
msgstr ""

#. module: fs_storage_backup
#: model:mail.message.subtype,name:fs_storage_backup.message_subtype_cleanup_failed
msgid "Backup Cleanup Failed"
msgstr ""

#. module: fs_storage_backup
#: model:ir.model.fields,field_description:fs_storage_backup.field_fs_storage__backup_dir
msgid "Backup Directory"
msgstr ""

#. module: fs_storage_backup
#: model:mail.message.subtype,name:fs_storage_backup.message_subtype_backup_failed
msgid "Backup Failed"
msgstr ""

#. module: fs_storage_backup
#: model:ir.model.fields,field_description:fs_storage_backup.field_fs_storage__backup_filename_format
msgid "Backup Filename"
msgstr ""

#. module: fs_storage_backup
#: model:ir.actions.server,name:fs_storage_backup.cron_backup_db_ir_actions_server
#: model:ir.cron,cron_name:fs_storage_backup.cron_backup_db
msgid "Backup database and delete old backups"
msgstr ""

#. module: fs_storage_backup
#: model:mail.message.subtype,description:fs_storage_backup.message_subtype_backup_failed
msgid "Backup failed"
msgstr ""

#. module: fs_storage_backup
#: model_terms:ir.ui.view,arch_db:fs_storage_backup.fs_storage_form_view
msgid "Backups"
msgstr ""

#. module: fs_storage_backup
#. odoo-python
#: code:addons/fs_storage_backup/models/fs_storage.py:0
#, python-format
msgid "Database backup failed"
msgstr ""

#. module: fs_storage_backup
#: model:ir.model,name:fs_storage_backup.model_fs_storage
msgid "FS Storage"
msgstr ""

#. module: fs_storage_backup
#. odoo-python
#: code:addons/fs_storage_backup/models/fs_storage.py:0
#: model:mail.message.subtype,description:fs_storage_backup.message_subtype_cleanup_failed
#, python-format
msgid "Failed to clean up old backups"
msgstr ""

#. module: fs_storage_backup
#: model:ir.model.fields,field_description:fs_storage_backup.field_fs_storage__message_follower_ids
msgid "Followers"
msgstr ""

#. module: fs_storage_backup
#: model:ir.model.fields,field_description:fs_storage_backup.field_fs_storage__message_partner_ids
msgid "Followers (Partners)"
msgstr ""

#. module: fs_storage_backup
#: model:ir.model.fields,field_description:fs_storage_backup.field_fs_storage__has_message
msgid "Has Message"
msgstr ""

#. module: fs_storage_backup
#: model:ir.model.fields,help:fs_storage_backup.field_fs_storage__message_needaction
msgid "If checked, new messages require your attention."
msgstr ""

#. module: fs_storage_backup
#: model:ir.model.fields,help:fs_storage_backup.field_fs_storage__message_has_error
msgid "If checked, some messages have a delivery error."
msgstr ""

#. module: fs_storage_backup
#: model:ir.model.fields,field_description:fs_storage_backup.field_fs_storage__backup_include_filestore
msgid "Include Filestore In Backup"
msgstr ""

#. module: fs_storage_backup
#: model:ir.model.fields,field_description:fs_storage_backup.field_fs_storage__message_is_follower
msgid "Is Follower"
msgstr ""

#. module: fs_storage_backup
#: model:ir.model.fields,field_description:fs_storage_backup.field_fs_storage__backup_keep_time
msgid "Keep backups of (in days)"
msgstr ""

#. module: fs_storage_backup
#. odoo-python
#: code:addons/fs_storage_backup/models/fs_storage.py:0
#, python-format
msgid "Keep backups of (in days) must be greater or than 0."
msgstr ""

#. module: fs_storage_backup
#: model:ir.model.fields,field_description:fs_storage_backup.field_fs_storage__message_main_attachment_id
msgid "Main Attachment"
msgstr ""

#. module: fs_storage_backup
#: model:ir.model.fields,field_description:fs_storage_backup.field_fs_storage__message_has_error
msgid "Message Delivery error"
msgstr ""

#. module: fs_storage_backup
#: model:ir.model.fields,field_description:fs_storage_backup.field_fs_storage__message_ids
msgid "Messages"
msgstr ""

#. module: fs_storage_backup
#: model:ir.model.fields,field_description:fs_storage_backup.field_fs_storage__message_needaction_counter
msgid "Number of Actions"
msgstr ""

#. module: fs_storage_backup
#: model:ir.model.fields,field_description:fs_storage_backup.field_fs_storage__message_has_error_counter
msgid "Number of errors"
msgstr ""

#. module: fs_storage_backup
#: model:ir.model.fields,help:fs_storage_backup.field_fs_storage__message_needaction_counter
msgid "Number of messages requiring action"
msgstr ""

#. module: fs_storage_backup
#: model:ir.model.fields,help:fs_storage_backup.field_fs_storage__message_has_error_counter
msgid "Number of messages with delivery error"
msgstr ""

#. module: fs_storage_backup
#: model:ir.model.fields,field_description:fs_storage_backup.field_fs_storage__use_for_backup
msgid "Use For Backups"
msgstr ""

#. module: fs_storage_backup
#: model:ir.model.fields,field_description:fs_storage_backup.field_fs_storage__website_message_ids
msgid "Website Messages"
msgstr ""

#. module: fs_storage_backup
#: model:ir.model.fields,help:fs_storage_backup.field_fs_storage__website_message_ids
msgid "Website communication history"
msgstr ""
Loading