Миграция клиентских модулей, позади сцены
Новость с официального блога OpenERP
Миграция DB с клиентскими модулями полностью возможна и поддержано нашей платформой миграции. Вот подробные шаги:
1) Партнер делает дамп своей клиентской DB (целая DB с клиентскими модулями)
2) Он загружает эту DB на нашу платформу миграции: http://migration.openerp.com/
3) OpenERP делает работу миграции:
— восстанавливает базу данных
- деинсталирует все клиентские модули
- выполняет все скрипты, требуемые для обновления сервера
- выполняет обновление сервера (-u все)
- делает дамп мигрированной базы данных
- адаптирует общие скрипты в случае необходимости (ошибка во время одного из предыдущих шагов, или функциональные тесты не прошли),
Важный факт — то, что мы мигрируем оригинальную базу данных. Все делается в оригинальной базе данных. Например, мы восстанавливаем v6.0 базу данных и выполняем все скрипты в этой базе данных. В конце процесса эта v6.0 база данных становится v6.1 базой данных.
4) потом партнер получает электронное письмо со ссылкой с его страницей запроса миграции, где он может загрузить мигрировавшую базу данных.
На этой странице доступны, 2 мигрированные базы данных:
* 1 С его клиентскими нетронутыми данными о модулях
* 1 БЕЗ клиентских данных о модулях (клиентские виды, клиентские технологические процессы, некоторые приложения… и что-либо, что будет препятствовать тому, чтобы мы делали функциональные тесты, было удалено). Эта база данных главным образом полезна для нас, никогда не устанавливайте ее на производственном сервере
Он может также получить доступ к некоторой дополнительной и важной информации как:
* технический лог файл: мигрировали все технические изменения между оригинальной версией и версией миграции.
* функциональный лог файл: описывает некоторые важные функциональные различия между предыдущей версией и новой. Также списки некоторых важных перемещение данных, которое мы должны были выполнить на базе данных как добавление нового объекта, когда это требуется.
* список различных миграционных процессов, мы выполняли на той базе данных с сервером, добавлениями и перечисленными числами пересмотра скриптов миграции.
В том пункте сделана работа от стороны OpenERP, все гарантированные модули (и их данные) мигрируются. Теперь у партнера есть выбор для клиентской части: он может обращаться с мигрированием непосредственно или попросить, чтобы OpenERP сделал это для него.
Если он хочет делать это непосредственно:
5) партнер добавляет свои клиентские модули в новой окружающей среде сервера OpenERP, восстанавливает DB с клиентскими модулями, выполняет обновление сервера
6) Партнер сам решает любую проблему, которая может произойти
Возможно, что не понадобится ни какой работы делать в мигрированной базе данных относительно клиентских модулей. Например, если у Вас есть клиентские модули, расширяющие модель 'продукта', добавляя поля. Если схема базы данных моделей 'продукта' не изменилась, Вы восстановите все данные, связанные с Вашей новым полем, и никакой работа не нужно делать вообще.
Другой пример, если у Вас есть v5.0 база данных с клиентскими модулем, добавляющим поле к 'mrp.procurement' модели. Вам ни надо ничего делать Вашей мигрировавшей v6.0 базе данных относительно этого поля, потому что мы уже мигрировали 'mrp.procurement' модель к 'procurement.order' модели в v6.0. Данные, связанные с этим полем, будут присутствовать в 'procurement_order' таблице. Конечно, Вы должны будете преобразовать модуль сам по себе, что означает код питона и xml файлы…
Конкретный пример:
Чтобы показать Вам, как это работает конкретно, вот, пример и пошаговый процесс:
У меня есть своя база данных, работающая на v6.0 OpenERP со следующими клиентскими установленными модулями:
- l10n_es_account
- l10n_es_partner
- l10n_es_toponyms
1) Я делаю дамп своей DB и загружаю ее на http://migration.openerp.com, и определяю, что хочу мигрировать к v6.1
2) несколько минут спустя (потому что моя DB содержит немного данных), я получаю электронное письмо подтверждения, говоря, что перемещение могло закончиться успешно и ссылка загрузки мигрироваванной DB: http://migration.openerp.com/status/a07bf528f8804b6da90bc86bd2bb6849.html
3) Я создаю новую v6.1 окружающую среду со своими клиентскими модулями
4) Я восстанавливаю мигрировавшую DB (с незасвидетельствованным модулем)
5) Я выполняю обновление сервера (-u все)
6) если техническая проблема происходит во время обновления сервера или во время моих функциональных тестов:
* я пытаюсь установить их, если они происходят из моих клиентских модулей
* если проблема происходит из гарантированного модуля:
- Я посылаю электронное письмо в Миграционную службу, если я подозреваю, что это — проблема миграции ([email protected])
- Я посылаю электронное письмо в Отдел Поддержки, если я подозреваю, что это — сервер, приложений или проблема клиента ([email protected])
7) в нашем случае никакая проблема не произошла во время обновления сервера (3 клиентских модуля теперь установлены). База данных не должна быть изменена от стороны партнера вида. (ОТМЕТЬТЕ: некоторые функциональные тесты должны все еще быть сделаны прежде, чем утвердить миграцию.)
Обслуживание от OpenERP:
OpenERP может сделать для Вас работу по перемещению клиентских модулей от одной версии до любой будущей версии. Это — дополнительное обслуживание, не включенное в контракт OERP Enterprise. Цена этой миграционной службы основана на строках текста программы клиентских модулей (800€ за партию из 1000 линий кода). Не стесняйтесь связываться со своим партнером или своим Менеджером по работе с заказчиками OpenERP за дополнительной информацией.
Миграция DB с клиентскими модулями полностью возможна и поддержано нашей платформой миграции. Вот подробные шаги:
1) Партнер делает дамп своей клиентской DB (целая DB с клиентскими модулями)
2) Он загружает эту DB на нашу платформу миграции: http://migration.openerp.com/
3) OpenERP делает работу миграции:
— восстанавливает базу данных
- деинсталирует все клиентские модули
- выполняет все скрипты, требуемые для обновления сервера
- выполняет обновление сервера (-u все)
- делает дамп мигрированной базы данных
- адаптирует общие скрипты в случае необходимости (ошибка во время одного из предыдущих шагов, или функциональные тесты не прошли),
Важный факт — то, что мы мигрируем оригинальную базу данных. Все делается в оригинальной базе данных. Например, мы восстанавливаем v6.0 базу данных и выполняем все скрипты в этой базе данных. В конце процесса эта v6.0 база данных становится v6.1 базой данных.
4) потом партнер получает электронное письмо со ссылкой с его страницей запроса миграции, где он может загрузить мигрировавшую базу данных.
На этой странице доступны, 2 мигрированные базы данных:
* 1 С его клиентскими нетронутыми данными о модулях
* 1 БЕЗ клиентских данных о модулях (клиентские виды, клиентские технологические процессы, некоторые приложения… и что-либо, что будет препятствовать тому, чтобы мы делали функциональные тесты, было удалено). Эта база данных главным образом полезна для нас, никогда не устанавливайте ее на производственном сервере
Он может также получить доступ к некоторой дополнительной и важной информации как:
* технический лог файл: мигрировали все технические изменения между оригинальной версией и версией миграции.
* функциональный лог файл: описывает некоторые важные функциональные различия между предыдущей версией и новой. Также списки некоторых важных перемещение данных, которое мы должны были выполнить на базе данных как добавление нового объекта, когда это требуется.
* список различных миграционных процессов, мы выполняли на той базе данных с сервером, добавлениями и перечисленными числами пересмотра скриптов миграции.
В том пункте сделана работа от стороны OpenERP, все гарантированные модули (и их данные) мигрируются. Теперь у партнера есть выбор для клиентской части: он может обращаться с мигрированием непосредственно или попросить, чтобы OpenERP сделал это для него.
Если он хочет делать это непосредственно:
5) партнер добавляет свои клиентские модули в новой окружающей среде сервера OpenERP, восстанавливает DB с клиентскими модулями, выполняет обновление сервера
6) Партнер сам решает любую проблему, которая может произойти
Возможно, что не понадобится ни какой работы делать в мигрированной базе данных относительно клиентских модулей. Например, если у Вас есть клиентские модули, расширяющие модель 'продукта', добавляя поля. Если схема базы данных моделей 'продукта' не изменилась, Вы восстановите все данные, связанные с Вашей новым полем, и никакой работа не нужно делать вообще.
Другой пример, если у Вас есть v5.0 база данных с клиентскими модулем, добавляющим поле к 'mrp.procurement' модели. Вам ни надо ничего делать Вашей мигрировавшей v6.0 базе данных относительно этого поля, потому что мы уже мигрировали 'mrp.procurement' модель к 'procurement.order' модели в v6.0. Данные, связанные с этим полем, будут присутствовать в 'procurement_order' таблице. Конечно, Вы должны будете преобразовать модуль сам по себе, что означает код питона и xml файлы…
Конкретный пример:
Чтобы показать Вам, как это работает конкретно, вот, пример и пошаговый процесс:
У меня есть своя база данных, работающая на v6.0 OpenERP со следующими клиентскими установленными модулями:
- l10n_es_account
- l10n_es_partner
- l10n_es_toponyms
1) Я делаю дамп своей DB и загружаю ее на http://migration.openerp.com, и определяю, что хочу мигрировать к v6.1
2) несколько минут спустя (потому что моя DB содержит немного данных), я получаю электронное письмо подтверждения, говоря, что перемещение могло закончиться успешно и ссылка загрузки мигрироваванной DB: http://migration.openerp.com/status/a07bf528f8804b6da90bc86bd2bb6849.html
3) Я создаю новую v6.1 окружающую среду со своими клиентскими модулями
4) Я восстанавливаю мигрировавшую DB (с незасвидетельствованным модулем)
5) Я выполняю обновление сервера (-u все)
6) если техническая проблема происходит во время обновления сервера или во время моих функциональных тестов:
* я пытаюсь установить их, если они происходят из моих клиентских модулей
* если проблема происходит из гарантированного модуля:
- Я посылаю электронное письмо в Миграционную службу, если я подозреваю, что это — проблема миграции ([email protected])
- Я посылаю электронное письмо в Отдел Поддержки, если я подозреваю, что это — сервер, приложений или проблема клиента ([email protected])
7) в нашем случае никакая проблема не произошла во время обновления сервера (3 клиентских модуля теперь установлены). База данных не должна быть изменена от стороны партнера вида. (ОТМЕТЬТЕ: некоторые функциональные тесты должны все еще быть сделаны прежде, чем утвердить миграцию.)
Обслуживание от OpenERP:
OpenERP может сделать для Вас работу по перемещению клиентских модулей от одной версии до любой будущей версии. Это — дополнительное обслуживание, не включенное в контракт OERP Enterprise. Цена этой миграционной службы основана на строках текста программы клиентских модулей (800€ за партию из 1000 линий кода). Не стесняйтесь связываться со своим партнером или своим Менеджером по работе с заказчиками OpenERP за дополнительной информацией.
2 комментария