Оновлення Weblate¶
Оновлення образу Docker¶
The official Weblate Docker image (see Установлення за допомогою Docker) integrates all upgrade steps. Typically, no manual interaction is needed beyond pulling the latest (or at least newer) version.
Дивись також
Загальні настанови щодо оновлення¶
Always look for new changes to Вимоги для програмного забезпечення before upgrading.
Once all requirements are installed or upgraded, ensure your
settings.py
matches the changes in the configuration (consult
settings_example.py
for correct values).
Always check Version-specific instructions before upgrading. If you are skipping any version(s), be sure to follow instructions for all versions you are skipping during such upgrade. It’s sometimes better to upgrade gradually to an intermediate version to ensure a smooth migration. Upgrading across multiple releases should work, but is not as well tested as single version upgrades!
Примітка
Always back up the full database before upgrading, so that you can roll back the database if the upgrade fails, see Резервне копіювання і пересування Weblate.
Stop the WSGI and Celery processes to avoid old processes running while upgrading. Otherwise incompatible changes in the database might occur.
Upgrade Weblate
Для встановлень за допомогою pip цього можна досягти такою командою:
pip install -U "Weblate[all]==version"
Або, якщо ви просто хочете отримати найсвіжішу випущену версію:
pip install -U "Weblate[all]"
Якщо ви не хочете встановлювати усі необов’язкові залежності, зробіть так:
pip install -U Weblate
Using Git checkout, you need to fetch new source code and update your installation:
cd weblate-src git pull # Update Weblate inside your virtualenv . ~/weblate-env/bin/pip install -e '.[all]' # Install dependencies directly when not using virtualenv pip install --upgrade -e . # Install optional dependencies directly when not using virtualenv pip install --upgrade -e '.[all]'
New Weblate releases might have new Залежності Python, check if they cover the features you want.
Upgrade the configuration file by following either
settings_example.py
, or Version-specific instructions.Upgrade the database:
weblate migrate --noinput
Зберіть оновлені статичні файли (див. Запуск сервера і Обслуговування статичних файлів):
weblate collectstatic --noinput --clear
Стисніть файли JavaScript і CSS (необов’язково, див. Стиснення клієнтських даних):
weblate compress
If you are running an installation from Git, you should also regenerate locale files every time you upgrade. You can do this by invoking:
weblate compilemessages
Перевірте, чи є працездатною ваша конфігурація (див. також Промислові налаштування):
weblate check --deploy
Restart the Celery worker (see Фонові завдання з використанням Celery).
Version-specific instructions¶
Змінено в версії 5.0: Специфічні настанови щодо версій тепер включено до приміток щодо випуску, див. Weblate 5.7.2.
Оновлення із застарілої основної версії¶
Підтримки оновлення до нових основних версій не передбачено. Завжди виконуйте оновлення до найсвіжішої проміжної версії початкового основного випуску. Оновлення, у яких пропущено цей крок, вважаються непідтримуваними — вони не працюватимуть як слід.
Якщо ви оновлюєте систему з версії 2.x, завжди спочатку оновіться до версії 3.0.1.
Якщо ви оновлюєте систему з версії 3.x, завжди спочатку оновіться до версії 4.0.4.
Якщо ви оновлюєтесь з версії 4.x, завжди спочатку оновлюйтесь до 5.0.2.
Перенесення даних з інших баз даних до PostgreSQL¶
If you are not running Weblate with a different database than PostgreSQL, consider migrating to PostgreSQL for better performance by doing the following steps. Remember to stop both, the web and Celery servers beforehand, otherwise you might end up with inconsistent data.
Створення бази даних у PostgreSQL¶
It is usually a good idea to run Weblate in a separate database, and a separate user account:
# If PostgreSQL was not installed before, set the main password
sudo -u postgres psql postgres -c "\password postgres"
# Create a database user called "weblate"
sudo -u postgres createuser -D -P weblate
# Create the database "weblate" owned by "weblate"
sudo -u postgres createdb -E UTF8 -O weblate weblate
Перенесення даних до PostgreSQL за допомогою pgloader¶
The pgloader is a generic migration tool to migrate data to PostgreSQL. You can use it to migrate your Weblate database.
Adjust your
settings.py
to use PostgreSQL as database.Перенесіть схему до бази даних PostgreSQL:
weblate migrate weblate sqlflush | weblate dbshell
3. Run the pgloader to transfer the data. The following script can be used to migrate the database, but you might want to learn more about pgloader to better understand what it does, and tweak it to match your setup:
LOAD DATABASE FROM mysql://weblate:password@localhost/weblate INTO postgresql://weblate:password@localhost/weblate WITH include no drop, truncate, create no tables, create no indexes, no foreign keys, disable triggers, reset sequences, data only ALTER SCHEMA 'weblate' RENAME TO 'public' ;
Перенесення даних з Pootle¶
As Weblate was originally written as a replacement for Pootle, it is supported
to migrate the user accounts from it. You can dump the users from Pootle and
import them using importusers
.