continious integration - Иван Лещёв
TRANSCRIPT
25 -27 April, 2014 http://camp2014.drupal.dn.ua
Continuous Integration
CONTINUOUS INTEGRATION
•Непрерывная интеграция (англ. Continuous Integration) — это практика разработки программного обеспечения, которая …
•Пишем код
•…
•Profit
КОМАНДА
• Дружный коллектив профессионалов. Офис в центре города.
• Шантаж.
• Угрозы.
• Подкуп.
ОКРУЖЕНИЕ
• SSH
• CVS
• Drush
• etc
ИНСТАНСЫ РАЗРАБОТЧИКА
• Рабочий
• Полурабочий
• Нерабочий
ДОСТАВКА ФУНКЦИОНАЛА
• Features
• hook_install / hook_update_7xxx
• экспорт/импорт контента
• прочее
ДОСТАВКА ФУНКЦИОНАЛА
function igo_deploy_install() { for ($i = 7001; $i < 8000; $i++) {
$candidate = 'igo_deploy_update_' . $i;if (function_exists($candidate)) {
$candidate();}
}}
function igo_deploy_update_7001() { module_enable(array('igo_dependencies'));
ДОСТАВКА ФУНКЦИОНАЛА
• UUID
• VBO
• свой модуль миграции
• маркер версии
ДОСТАВКА ФУНКЦИОНАЛА
• queue api
• двойной импорт для восстановления связей
ДОСТАВКА ФУНКЦИОНАЛА
svn updrush vset maintenance_mode 1drush updb -ydrush igo-deploy-cleanupdrush fra -ydrush igo-import-contentdrush queue-run igo_deploy_scan_folderdrush queue-run igo_deploy_entity_importdrush igo-import-fixesdrush cc alldrush vset maintenance_mode 0
THANK YOU!
Лещёв Иван