SlideShare a Scribd company logo
Continuous Integration With  Евгений Л. email: true1false0@ya.ru @beeprobot
- Что такое CI. - Нет холиварам. - Как подключить ? Не будет.
- Что такое Jenkins ? - Организация работы с CI. - Наболевшее. Будет.
Kohsuke Kawaguchi Немного истории.
Hudson Hudson Jenkins Немного истории.
http://www.wakaleo.com/resources/polls Немного статистики.
Немного статистики.
Релизы. 1.408 (2011/04/18) 1.407 (2011/04/15) 1.406 (2011/04/11) 1.405 (2011/04/04) 1.404 (2011/03/27) 1.403 (2011/03/20) http://jenkins-ci.org/changelog
252 Проектов  http://ci.jenkins-ci.org/ Картинка главной страницы. Стабильность Дженкинса ?
Полезные метрики. - Checkstyle Trend  (PHP_CodeSniffer) - Duplicate Code Trend  (phpcpd) - PMD Trend (PHP_PMD) - Code Coverage  (PHP_CodeCoverage)
Уведомления.
Наболевшее.
Метрики на наших проектах.
Метрики на наших проектах.
Метрики на наших проектах.
Бесполезно.
Разбитые окна.
Почему ? - Нет времени разбираться. - Сложно вычищать. - Сложно поддерживать чистоту. - У меня и так всё работает. - etc
Сложно ? http://ci.jenkins-ci.org/ Jenkins » Jenkins core » jenkins_main_trunk
Сложно ? http://ci.jenkins-ci.org/ Jenkins » Jenkins core » jenkins_main_trunk
Сложно ? http://ci.jenkins-ci.org/ Jenkins » Jenkins core » jenkins_main_trunk
Сложно ? http://ci.jenkins-ci.org/ Jenkins » Jenkins core » jenkins_main_trunk
Ругается на всякую фигню. - Исправлять. - Настраивать. - В крайнем случае вставлять хаки.
Ругается на всякую фигню. - Исправлять. - Настраивать. - В крайнем случае вставлять хаки. А может всё это и не надо ?
..... public function ... () { } Avoid really long methods.. Violations of this rule usually indicate that the method is doing too much. Try to reduce the method size by creating helper methods and removing any copy/pasted code.
Мартин Фаулер Звёзды в шоке.
Мартин Фаулер Кент Бек Звёзды в шоке.
Мартин Фаулер Кент Бек Роберт Мартин Звёзды в шоке.
И что же делать ? - Потратить несколько человеко-дней и всё вычистить. - Включить в критерии готовности задачи, +0 Checkstyle, +0 PMD etc. - Ничего не делать.
http://www.wakaleo.com/download-ci-with-hudson Continuous Integration With Hudson Что почитать ? http://jenkins-php.org/ https://wiki.jenkins-ci.org/display/JENKINS/Jenkins+and+PHP
Что ещё почитать ? С. Макконнелл  Совершенный код Роберт Мартин  Чистый код. Создание, анализ и рефакторинг
Качество - это делать что-либо правильно, даже когда никто не смотрит.  Генри Форд
Евгений Л. email: true1false0@ya.ru @beeprobot
Ad

Recommended

50 оттенков кеширования: обзор актуальных батареек - Григорий Петров, VoxImplant
50 оттенков кеширования: обзор актуальных батареек - Григорий Петров, VoxImplant
it-people
 
Настоящее и будущее рекомендательных систем. Михаил Ройзнер
Настоящее и будущее рекомендательных систем. Михаил Ройзнер
Yandex
 
Continuous integration
Continuous integration
MageCloud
 
Алексей Рыстенко: Continuous Integration
Алексей Рыстенко: Continuous Integration
Oleg Poludnenko
 
Continuous Integration для тестировщиков
Continuous Integration для тестировщиков
Uladzimir Kryvenka
 
Continuous Integration для QA
Continuous Integration для QA
Ivan Kolodyazhny
 
Особенности тестирования NoSql приложений
Особенности тестирования NoSql приложений
Uladzimir Kryvenka
 
Константин Назаров – Распараллеливание сборки Parallels Desktop для Mac
Константин Назаров – Распараллеливание сборки Parallels Desktop для Mac
404fest
 
Caché github continuous intergration
Caché github continuous intergration
InterSystems
 
Приемы Сontinuous Integration при разработке приложений на Caché
Приемы Сontinuous Integration при разработке приложений на Caché
InterSystems CEE
 
Project under control
Project under control
Alex Simanovich
 
Кирилл Комлев. О реализации continuous integration для web проектов
Кирилл Комлев. О реализации continuous integration для web проектов
Olesya_V
 
Wgforge CI/CD
Wgforge CI/CD
Кузьмицкий Александр
 
Юрий Цыганенко, QA как услуга
Юрий Цыганенко, QA как услуга
SQADays_2009_Piter
 
Agile foss tools
Agile foss tools
alexyakima
 
QA Fest 2016. Антон Серпутько. Автоматизация запуска тестов с помощью Jenkins...
QA Fest 2016. Антон Серпутько. Автоматизация запуска тестов с помощью Jenkins...
QAFest
 
Jenkins 2. Как сделать мажорный релиз и не развалить сообщество?
Jenkins 2. Как сделать мажорный релиз и не развалить сообщество?
CEE-SEC(R)
 
Тестирование весна 2013 лекция 5
Тестирование весна 2013 лекция 5
Technopark
 
Тестирование осень 2013 лекция 5
Тестирование осень 2013 лекция 5
Technopark
 
Continuous Integration(как мы подружили frontend и backend)
Continuous Integration(как мы подружили frontend и backend)
Talks&Works
 
Continuous integration, или как мы подружили front end и back-end
Continuous integration, или как мы подружили front end и back-end
wlbl
 
Jenkins 2.0: Организуем тестирование в составе Continuous Delivery
Jenkins 2.0: Организуем тестирование в составе Continuous Delivery
SQALab
 
13 октября, DEV {web} - конференция о Highload веб-разработке. "Управление ок...
13 октября, DEV {web} - конференция о Highload веб-разработке. "Управление ок...
IT-Portfolio
 
Chef @DevWeb
Chef @DevWeb
Alex Chistyakov
 
Dev collaboration
Dev collaboration
Eduard Antsupov
 
CD with Jenkins. Lessons Learned
CD with Jenkins. Lessons Learned
Кирилл Толкачёв
 
WordPress Kitchen MeetUp Summer 2015 - Никита Галкин "Каноны современной разр...
WordPress Kitchen MeetUp Summer 2015 - Никита Галкин "Каноны современной разр...
WordCamp Kyiv
 

More Related Content

Similar to Continuous integration with Jenkins. (19)

Caché github continuous intergration
Caché github continuous intergration
InterSystems
 
Приемы Сontinuous Integration при разработке приложений на Caché
Приемы Сontinuous Integration при разработке приложений на Caché
InterSystems CEE
 
Project under control
Project under control
Alex Simanovich
 
Кирилл Комлев. О реализации continuous integration для web проектов
Кирилл Комлев. О реализации continuous integration для web проектов
Olesya_V
 
Wgforge CI/CD
Wgforge CI/CD
Кузьмицкий Александр
 
Юрий Цыганенко, QA как услуга
Юрий Цыганенко, QA как услуга
SQADays_2009_Piter
 
Agile foss tools
Agile foss tools
alexyakima
 
QA Fest 2016. Антон Серпутько. Автоматизация запуска тестов с помощью Jenkins...
QA Fest 2016. Антон Серпутько. Автоматизация запуска тестов с помощью Jenkins...
QAFest
 
Jenkins 2. Как сделать мажорный релиз и не развалить сообщество?
Jenkins 2. Как сделать мажорный релиз и не развалить сообщество?
CEE-SEC(R)
 
Тестирование весна 2013 лекция 5
Тестирование весна 2013 лекция 5
Technopark
 
Тестирование осень 2013 лекция 5
Тестирование осень 2013 лекция 5
Technopark
 
Continuous Integration(как мы подружили frontend и backend)
Continuous Integration(как мы подружили frontend и backend)
Talks&Works
 
Continuous integration, или как мы подружили front end и back-end
Continuous integration, или как мы подружили front end и back-end
wlbl
 
Jenkins 2.0: Организуем тестирование в составе Continuous Delivery
Jenkins 2.0: Организуем тестирование в составе Continuous Delivery
SQALab
 
13 октября, DEV {web} - конференция о Highload веб-разработке. "Управление ок...
13 октября, DEV {web} - конференция о Highload веб-разработке. "Управление ок...
IT-Portfolio
 
Chef @DevWeb
Chef @DevWeb
Alex Chistyakov
 
Dev collaboration
Dev collaboration
Eduard Antsupov
 
CD with Jenkins. Lessons Learned
CD with Jenkins. Lessons Learned
Кирилл Толкачёв
 
WordPress Kitchen MeetUp Summer 2015 - Никита Галкин "Каноны современной разр...
WordPress Kitchen MeetUp Summer 2015 - Никита Галкин "Каноны современной разр...
WordCamp Kyiv
 
Caché github continuous intergration
Caché github continuous intergration
InterSystems
 
Приемы Сontinuous Integration при разработке приложений на Caché
Приемы Сontinuous Integration при разработке приложений на Caché
InterSystems CEE
 
Кирилл Комлев. О реализации continuous integration для web проектов
Кирилл Комлев. О реализации continuous integration для web проектов
Olesya_V
 
Юрий Цыганенко, QA как услуга
Юрий Цыганенко, QA как услуга
SQADays_2009_Piter
 
Agile foss tools
Agile foss tools
alexyakima
 
QA Fest 2016. Антон Серпутько. Автоматизация запуска тестов с помощью Jenkins...
QA Fest 2016. Антон Серпутько. Автоматизация запуска тестов с помощью Jenkins...
QAFest
 
Jenkins 2. Как сделать мажорный релиз и не развалить сообщество?
Jenkins 2. Как сделать мажорный релиз и не развалить сообщество?
CEE-SEC(R)
 
Тестирование весна 2013 лекция 5
Тестирование весна 2013 лекция 5
Technopark
 
Тестирование осень 2013 лекция 5
Тестирование осень 2013 лекция 5
Technopark
 
Continuous Integration(как мы подружили frontend и backend)
Continuous Integration(как мы подружили frontend и backend)
Talks&Works
 
Continuous integration, или как мы подружили front end и back-end
Continuous integration, или как мы подружили front end и back-end
wlbl
 
Jenkins 2.0: Организуем тестирование в составе Continuous Delivery
Jenkins 2.0: Организуем тестирование в составе Continuous Delivery
SQALab
 
13 октября, DEV {web} - конференция о Highload веб-разработке. "Управление ок...
13 октября, DEV {web} - конференция о Highload веб-разработке. "Управление ок...
IT-Portfolio
 
WordPress Kitchen MeetUp Summer 2015 - Никита Галкин "Каноны современной разр...
WordPress Kitchen MeetUp Summer 2015 - Никита Галкин "Каноны современной разр...
WordCamp Kyiv
 

Continuous integration with Jenkins.