mirror of
https://gh.wpcy.net/https://github.com/WeblateOrg/weblate.git
synced 2026-05-28 02:41:04 +08:00
127 lines
3.4 KiB
ReStructuredText
Vendored
127 lines
3.4 KiB
ReStructuredText
Vendored
Backing up and moving Weblate
|
|
=============================
|
|
|
|
Backing up
|
|
----------
|
|
|
|
Weblate stores data in several locations and you should consider how to backup
|
|
each of them properly. You might not need to backup some of the data depending
|
|
on the configuration.
|
|
|
|
Database
|
|
~~~~~~~~
|
|
|
|
Location depends on your database setup.
|
|
|
|
Database is the most important storage for Weblate. Always configure regular
|
|
backups of your database, without it all your translations setup will be gone.
|
|
|
|
Files
|
|
~~~~~
|
|
|
|
If you have enough backup space, simply backup whole :setting:`DATA_DIR`. This
|
|
is safe bet even if you will include some files which do not have to be backed
|
|
up. Following sections in detail describe what you should backup and what you
|
|
can skip.
|
|
|
|
.. _backup-dumps:
|
|
|
|
Dumped data for backups
|
|
+++++++++++++++++++++++
|
|
|
|
Stored in :setting:`DATA_DIR` ``/backups``.
|
|
|
|
Weblate dumps various data here and you can use the files here for better
|
|
backups. The files are updated daily (requires running Celery beats server, see
|
|
:ref:`celery`). Currently this includes:
|
|
|
|
* Translation memory dump in JSON format.
|
|
|
|
Version control repositories
|
|
++++++++++++++++++++++++++++
|
|
|
|
Stored in :setting:`DATA_DIR` ``/vcs``.
|
|
|
|
The version control repositories contain copy of your upstream repositories
|
|
with Weblate changes. If you have push on commit enabled on all your
|
|
translation components, then all Weblate changes are included upstream and you
|
|
do not have to backup the repositories on Weblate side. They can be cloned
|
|
again from upstream locations with no data loss.
|
|
|
|
SSH and GPG keys
|
|
++++++++++++++++
|
|
|
|
Stored in :setting:`DATA_DIR` ``/ssh`` and :setting:`DATA_DIR` ``/home``.
|
|
|
|
If you are using Weblate generated SSH or GPG keys, you should backup these
|
|
locations, otherwise you will loose to private keys and you will have to
|
|
regenerate new ones.
|
|
|
|
User uploaded files
|
|
+++++++++++++++++++
|
|
|
|
Stored in :setting:`DATA_DIR` ``/media``.
|
|
|
|
You should backup user uploaded files (eg. :ref:`screenshots`).
|
|
|
|
Translation memory
|
|
++++++++++++++++++
|
|
|
|
Stored in :setting:`DATA_DIR` ``/memory``.
|
|
|
|
The translation memory content. It is recommended to back it up using
|
|
:djadmin:`dump_memory` in JSON format instead of using binary format as that
|
|
might eventually change (and it is incompatible between Python 2 and Python 3).
|
|
Weblate prepares this dump daily, see :ref:`backup-dumps`.
|
|
|
|
Fulltext index
|
|
++++++++++++++
|
|
|
|
Stored in :setting:`DATA_DIR` ``/whoosh``.
|
|
|
|
It is recommended to not backup this and regenerate it from scratch on restore.
|
|
|
|
Celery tasks
|
|
------------
|
|
|
|
The Celery tasks queue might contain some information, but usually it's not
|
|
needed to backup. At most your will loose not processed updates to translation
|
|
memory. The fulltext or repository updates are anyway recommended to perform on
|
|
restore, so there is no problem in losing these.
|
|
|
|
.. seealso::
|
|
|
|
:ref:`celery`
|
|
|
|
Restoring
|
|
---------
|
|
|
|
1. Restore all data you have backed up.
|
|
|
|
2. Recreate fulltext index using :djadmin:`rebuild_index`:
|
|
|
|
.. code-block:: sh
|
|
|
|
./manage.py rebuild_index --clean --all
|
|
|
|
3. Restore your :ref:`translation-memory` using :djadmin:`import_memory`.
|
|
|
|
.. code-block:: sh
|
|
|
|
./manage.py import_memory memory.json
|
|
|
|
4. Update all repositories using :djadmin:`updategit`.
|
|
|
|
.. code-block:: sh
|
|
|
|
./manage.py updategit --all
|
|
|
|
Moving Weblate installation
|
|
---------------------------
|
|
|
|
Weblate installation should be relocatable, to move to different systems just
|
|
follow backup and restore instructions above.
|
|
|
|
.. seealso::
|
|
|
|
:ref:`py3`
|