2016-10-10 1 views
2

У меня есть 2 экземпляра Odoo v9, работающих на одном сервере (Ubuntu 14.04). Я хочу внести изменения (установить модули, изменить исходный код или что-то еще) в экземпляре разработки и после подтверждения, что они в порядке, переместите изменения в производственный экземпляр. Есть ли способ сделать это, не повторяя весь процесс развития?Обновление изменений с экземпляра разработки до экземпляра Production в Odoo

спасибо.

ответ

1

Как я понимаю, вы не хотите останавливать производственный экземпляр.

Если они являются только XML-файлами, вы можете уйти, обновив модуль только из внешнего интерфейса (Apps-> Your Module -> Update. Хотя если вы изменили файл __openerp__.py внутри своего модуля, вам нужно ввести режим отладки и нажмите Update Apps List первую очередь.

для изменений в файлах, которые находятся внутри static папки вашего модуля, вам не нужно останавливать сервер. Хотя, пользователи должны щелкнуть ctr + shift + R для того, чтобы очистить их кэша и довести до их браузера новый контент.

Для исходного кода Python я боюсь, что вам нужно остановить бот h экземпляров сервера, чтобы код можно было правильно перекомпилировать. (См. Примечание 1 на этом)

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

Примечание 1: Питон документация о компиляции модулей Python выше других упоминает:

В качестве важного ускорения времени запуска для коротких программ, которые использовать много стандартных модули, , если файл с именем spam.pyc существует в каталоге , где находится spam.py, предполагается, что он содержит уже имеющуюся версию спама модуля, которая уже была «с байтом». Модификация Время версии spam.py, используемое для создания spam.pyc, записывается в spam.pyc, а файл .pyc игнорируется, если они не соответствуют.

Теоретически, если вы модифицируете файлA.py в модуле и создается новый файлA.pyc, сервер сможет его интерпретировать и использовать. В любом случае у меня была проблема с двумя экземплярами, выполнявшимися там, где файл py создавал поле, и XML-файл использовал его, и сервер сообщил, что файл не был создан для представления XML, это означает, что сервер действительно забирал и проанализировать XML-файл, но не перекомпилировать py.

+0

Спасибо за ваш ответ, это было то, что я искал. – khaz