Введение
В статье описан опыт развертывания девелоперской версии Magento-приложения с использованием Magento Composer'а. Структура типового Magento-приложения в нашей компании:
- Magento
- Сторонние модули, используемые в проекте
- Разрабатываемые нами модули, используемые более, чем в одном нашем проекте
- Разрабатываемый нами модуль, содержащий функционал конкретно для данного проекта
- Тема для конкретного проекта
Девелоперская версия Magento-приложения должна позволять разрабатывать код наших модулей и заливать изменения в соответствующие репозитории, позволяя коду общих модулей мигрировать между проектами.
В связи с началом нового проекта для развертывания Magento-приложений решили попробовать Magento Composer. На данный момент у нас код каждого проекта хранится в своем SVN-репозитории, плюс в отдельном — все разрабатываемые нами модули (как общие, так и специализированные):
- инсталляция Magento и сторонние модули для проекта 01;
- инсталляция Magento и сторонние модули для проекта 02;
- ...
- наши модули;
Для использования Magento Composer'а проект разделили на следующие части (каждая в своем git-репозитории):
- z_mage_composer_prj_01_full: скрипты развертывания всего проекта, тема, сторонние модули, не доступные через Magento Composer;
- z_mage_composer_mod_01: первый модуль, от которого зависит проект;
- z_mage_composer_mod_02: второй модуль, от которого зависит проект;