Post on 12-Jun-2015
description
Путь на production
Денис Баженов
Tuesday, May 22, 12
Путь ниндзи на production
Developer Production
Download
Upload
Tuesday, May 22, 12
Tuesday, May 22, 12
Tuesday, May 22, 12
index.php.bak.old.2кто_удалит_получит_по_морде.php
Tuesday, May 22, 12
Ниндзей быть невыгодно
Tuesday, May 22, 12
Релиз = исходники
Tuesday, May 22, 12
Релиз ≠ исходники
VCS Release
Tuesday, May 22, 12
Релиз ≠ исходники
Релиз обязан работать, исходники нет
Tuesday, May 22, 12
Что происходит?
Компиляция
Фильтрация и генерация ресурсов
Тестирование и верификация
Сборка
Публикация
Tuesday, May 22, 12
Хороший релиз
• работает!
• самодостаточен• обладает метаинформацией
• совместим с предыдущим релизом
Tuesday, May 22, 12
Tuesday, May 22, 12
Toolchain
• version control system
• build tool;
• репозиторий артефактов;
• Continuous Integration server.
Tuesday, May 22, 12
Continuous Integration
Tuesday, May 22, 12
Continuous Integration
VCS CI-server
CI-serverCI-serverBuild agents
poll
run
Tuesday, May 22, 12
Continuous Integration
Tuesday, May 22, 12
Continuous Integration
Tuesday, May 22, 12
Continuous Integration
Tuesday, May 22, 12
Continuous Integration
• не занимаются ресурсы dev. машин;
• более частые сборки;
• более сложные виды тестирования;
• может выступать в качестве репозитория артефактов
Tuesday, May 22, 12
VCSCI-server
Build Agent
Compile
Unit/Integration Testing
Package
Acceptance Testing
Publish
Static Analysis
Production
Maven
Developer
Tuesday, May 22, 12
На что еще стоит обратить внимание
Tuesday, May 22, 12
Pitfalls
• адекватный процесс тестирования;
• контроль времени требуемого на сборку;
• адекватные отчеты при проваленном релизе;
• разбиение release’а на отдельные стадии.
Tuesday, May 22, 12
Спасибо за внимание!Денис Баженов <denis@bazhenov.me>@denis_bazhenovhttp://bazhenov.me
Tuesday, May 22, 12