Рубрики
Личные мысли

Как происходит миграция на новую версию в Odoo?

С выходом каждой новой версии Odoo, возникает желание переехать на новую версию. Версия Odoo с открытым исходным кодом не поддерживает миграцию одной версии в другую. Это одно из преимуществ Enterprise Edition.

Важно понимать, что миграция или обновление версии оду включает в себя 2 больших этапа:

  1. Обновление базы данных и сохранение данных
  2. Обновление модулей к изменениям в системе

Дальше речь идет о первом пункте, а именно — обновлении структуры таблиц в базе данных.

Миграция в Odoo CE

При обновлении базы со старых релизов в более новые, есть отличный open-source проект: OpenUpgrade. Проект подерживается комьюнити и дает возможность обновить проект к последним версиям Odoo CE.

OpenUpgrade основан на менеджере миграций, который встроен в Odoo. С его помошью можно легко обновиться даже с OpenERP 5+.

Готовность скрипта для обновления Odoo на 12 версию:

Как происходит миграция на новую версию в Odoo?
Готовность скрипта для миграции на 12 версию Odoo на 07.08.2021

Миграция в Odoo 13

Скрипт для миграции на 13 версию все еще находиться в разработке. Следить за актуальным состоянием можно тут: github.com/OCA/OpenUpgrade/1733.

Как происходит миграция на новую версию в Odoo?
Готовность скрипта для миграции на 13 версию Odoo на 07.08.2021

Скрипт для миграции на 13 версию вполне рабочий, несмотря на выполнение 172 из 282 тасков. Я в июле 2021 его использовал для миграции с 12 на 13 версию Odoo. В целом все прошло хорошо, база мигрировала без проблем. Были некоторые нюансы, но модули sales, accounting, inventory, project успешно были перенесены.

Миграция в Odoo 14

Скрипт для миграции на 14 версию также находится в работе. Следить за актуальным состоянием можно тут: github.com/OCA/OpenUpgrade/2190.

Как происходит миграция на новую версию в Odoo?
Готовность скрипта для миграции на 14 версию Odoo на 07.08.2021

Как видите, на начало августа 2021 скрипт миграции на 14 версию готов где-то на 1/6. Учитывая, что через 2 месяца будет новая версия оду, ждать работающий скрипт для обновления к odoo 15 можно будет где-то в 2022-2023.

Как происходит обновление в Odoo Enterprise Edition?

Если у вас ентерпрайз и есть действующая лицензия, миграция на актуальную версию это не проблема. По крайней мере, у вас есть возможность воспользоваться Odoo Upgrade Service.

Форма обновления в Odoo Upgrade Service

Самый простой способ обновить базу данных это заполнение формы https://upgrade.odoo.com/upload:

  1. Вводим лицензию
  2. емейл для уведомления о завершении обновления и получения ссылки для скачивания
  3. загружаем дамб БД
  4. выбираем версию, к которой хотим обновится. Доступны 12, 13 и 14 версии.
  5. выбираем окружение, для которого обновляемся.

В течении 20-60 минут вы получите ссылку на скачивание обновленного дампа вашей базы. Важно помнить, что скрипт миграции на upgrade.odoo.com также обновляется и улучшается.


Обновится на EE с помощью odoo upgrade service намного проще. По факту, за вас делают почти все, вам нужно лишь привести свой код в соответствие к требованиям новой версии и все.

Для CE все немного сложнее, и нужно быть готовым к тому, что нужно использовать незавершенный скрипт миграции. При этом, всегда могут возникнуть ошибки связанные с проверками в БД и связями между таблицами.