Як розгорнути зміни БД від розробника до виробництва в Magento


9

Мені відомо, що модулі мають сценарії встановлення та встановлення даних, щоб зробити БД портативним від розробника до виробництва.

Але в нашому випадку у нас є розробники інтерфейсу, які додають атрибути та продукти через інтерфейс адміністратора, який зберігається в БД розробки.

У день випуску ми не можемо повторити всі кроки, які ми зробили в середовищі розробників, оскільки це буде занадто виснажливим і трудомістким.

Чи є спосіб обробляти такі зміни БД під час розгортання.

На даний момент ми виконуємо різницю між DB і розробниками DB, і генеруємо SQL, який запускається в день випуску. Але це мало небезпечно, оскільки DB розробки може містити тестові трансакційні дані, і ми можемо закінчити блокування таблиць транзакцій у prod, якщо наш SQL має будь-які заяви, що змінюють таблиці транзакцій.

Чи є найкраща практика навколо цього? Заздалегідь дякую за допомогу

Відповіді:


8

Існують різні розширення для міграції даних між середовищами, але їх використання - це відстріл себе у ногу. Ви, безумовно, не хочете накручувати виробниче середовище, якщо щось піде не так.

Єдиний правильний спосіб перенесення даних - це використання сценаріїв налаштування.

Крім того, це дозволить створити нові середовища (наприклад, для нових риб вашої команди), які будуть відповідати поточному стану речей.

Добре питання до речі.


Я особисто виявив, що деякі модулі Magento Connect не завжди повністю сумісні з точки зору запуску сценаріїв налаштування з нуля. Мені ще належить розібратися, що саме сталося, але налаштування нашого магазину знаходиться в такому стані, що, починаючи з порожньої бази даних, сценарії встановлення конфліктують між собою, і магазин не може завантажувати порожню базу даних. Щоб знову почати з нуля, нам потрібно буде застосовувати модулі один за одним по порядку. Або виправляти помилки в програмному забезпеченні, яке ми не писали.
nbering

Як ви вводите зміни в сценарій, зроблені на панелі адміністратора Magento? Наприклад: додати атрибути та продукти чи змінити конфігурацію якогось розширення?
Андреа

1
@Andrea ви просто не змінюєте зміни в панелі адміністратора Magento. Все через сценарії налаштування. Звичайно, в деяких випадках, якщо ви хочете спробувати щось, в чому ви не впевнені, ви все-таки щось зміните в адміністраторі, але в цьому випадку ці зміни потрібно повернути та застосувати ще раз за допомогою сценарію настройки.
user487772

Як вигадка. Ми в більшості випадків використовували сценарії налаштування. На щастя, наш розробник користувальницького інтерфейсу не проти робити сценарії налаштування, як тільки він його розвісив. Ви також можете створити квиток для створення нового сценарію налаштування та призначити його розробникам. Також у нас є команда з маркетингу, яка використовує функцію CMS magento. Замість того, щоб робити ці зміни у середовищі розробників, ми попросили їх внести ці зміни у виробництво безпосередньо. Ми додали роль CMS, яка надала б їм доступ лише до функцій CMS. Потім ми періодично публікуємо зміни CMS від Prod до Stage, а потім QA та Dev за допомогою спеціального сценарію.
Jeetendra Pujari
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.