Как попасть на production

23
Путь на production Денис Баженов Tuesday, May 22, 12

Upload: denis-bazhenov

Post on 12-Jun-2015

199 views

Category:

Technology


0 download

DESCRIPTION

Когда говорят о программировании обычно имеют ввиду процесс написания кода. Редко говорят о том как мы запускаем результаты нашей работы в «дикий мир» production’а. В командах с развитыми build-package-deploy циклом с момента написания до момента начала работы кода на production происходит масса интересных вещей.

TRANSCRIPT

Page 1: Как попасть на Production

Путь на production

Денис Баженов

Tuesday, May 22, 12

Page 2: Как попасть на Production

Путь ниндзи на production

Developer Production

Download

Upload

Tuesday, May 22, 12

Page 3: Как попасть на Production

Tuesday, May 22, 12

Page 4: Как попасть на Production

Tuesday, May 22, 12

Page 5: Как попасть на Production

index.php.bak.old.2кто_удалит_получит_по_морде.php

Tuesday, May 22, 12

Page 6: Как попасть на Production

Ниндзей быть невыгодно

Tuesday, May 22, 12

Page 7: Как попасть на Production

Релиз = исходники

Tuesday, May 22, 12

Page 8: Как попасть на Production

Релиз ≠ исходники

VCS Release

Tuesday, May 22, 12

Page 9: Как попасть на Production

Релиз ≠ исходники

Релиз обязан работать, исходники нет

Tuesday, May 22, 12

Page 10: Как попасть на Production

Что происходит?

Компиляция

Фильтрация и генерация ресурсов

Тестирование и верификация

Сборка

Публикация

Tuesday, May 22, 12

Page 11: Как попасть на Production

Хороший релиз

• работает!

• самодостаточен• обладает метаинформацией

• совместим с предыдущим релизом

Tuesday, May 22, 12

Page 12: Как попасть на Production

Tuesday, May 22, 12

Page 13: Как попасть на Production

Toolchain

• version control system

• build tool;

• репозиторий артефактов;

• Continuous Integration server.

Tuesday, May 22, 12

Page 14: Как попасть на Production

Continuous Integration

Tuesday, May 22, 12

Page 15: Как попасть на Production

Continuous Integration

VCS CI-server

CI-serverCI-serverBuild agents

poll

run

Tuesday, May 22, 12

Page 16: Как попасть на Production

Continuous Integration

Tuesday, May 22, 12

Page 17: Как попасть на Production

Continuous Integration

Tuesday, May 22, 12

Page 18: Как попасть на Production

Continuous Integration

Tuesday, May 22, 12

Page 19: Как попасть на Production

Continuous Integration

• не занимаются ресурсы dev. машин;

• более частые сборки;

• более сложные виды тестирования;

• может выступать в качестве репозитория артефактов

Tuesday, May 22, 12

Page 20: Как попасть на Production

VCSCI-server

Build Agent

Compile

Unit/Integration Testing

Package

Acceptance Testing

Publish

Static Analysis

Production

Maven

Developer

Tuesday, May 22, 12

Page 21: Как попасть на Production

На что еще стоит обратить внимание

Tuesday, May 22, 12

Page 22: Как попасть на Production

Pitfalls

• адекватный процесс тестирования;

• контроль времени требуемого на сборку;

• адекватные отчеты при проваленном релизе;

• разбиение release’а на отдельные стадии.

Tuesday, May 22, 12

Page 23: Как попасть на Production

Спасибо за внимание!Денис Баженов <[email protected]>@denis_bazhenovhttp://bazhenov.me

Tuesday, May 22, 12