Сontinuous integration - step to continuous deployment
DESCRIPTION
continuous IntegrationTRANSCRIPT
![Page 2: Сontinuous Integration - step to continuous deployment](https://reader034.vdocuments.net/reader034/viewer/2022052618/554cb3bbb4c905aa608b4c9a/html5/thumbnails/2.jpg)
Rodionov Igor
Cooking Drupal
~ 5 years~ 14 projects~ 60 patches
~16 approved
Sponsors
Gold sponsor
Silver sponsor Silver sponsor
Bronze sponsorBronze sponsor
Organization
![Page 3: Сontinuous Integration - step to continuous deployment](https://reader034.vdocuments.net/reader034/viewer/2022052618/554cb3bbb4c905aa608b4c9a/html5/thumbnails/3.jpg)
Drupal based project
![Page 4: Сontinuous Integration - step to continuous deployment](https://reader034.vdocuments.net/reader034/viewer/2022052618/554cb3bbb4c905aa608b4c9a/html5/thumbnails/4.jpg)
Drupal based project
![Page 5: Сontinuous Integration - step to continuous deployment](https://reader034.vdocuments.net/reader034/viewer/2022052618/554cb3bbb4c905aa608b4c9a/html5/thumbnails/5.jpg)
Drupal based project
![Page 6: Сontinuous Integration - step to continuous deployment](https://reader034.vdocuments.net/reader034/viewer/2022052618/554cb3bbb4c905aa608b4c9a/html5/thumbnails/6.jpg)
Why?
![Page 7: Сontinuous Integration - step to continuous deployment](https://reader034.vdocuments.net/reader034/viewer/2022052618/554cb3bbb4c905aa608b4c9a/html5/thumbnails/7.jpg)
Club of anonymous drupalers
![Page 8: Сontinuous Integration - step to continuous deployment](https://reader034.vdocuments.net/reader034/viewer/2022052618/554cb3bbb4c905aa608b4c9a/html5/thumbnails/8.jpg)
Club of anonymous drupalers
![Page 9: Сontinuous Integration - step to continuous deployment](https://reader034.vdocuments.net/reader034/viewer/2022052618/554cb3bbb4c905aa608b4c9a/html5/thumbnails/9.jpg)
Club of anonymous drupalers
Take control over your project!
![Page 10: Сontinuous Integration - step to continuous deployment](https://reader034.vdocuments.net/reader034/viewer/2022052618/554cb3bbb4c905aa608b4c9a/html5/thumbnails/10.jpg)
Continuous integration
• Build• Inspection• Test• Deploy / Artifact
![Page 11: Сontinuous Integration - step to continuous deployment](https://reader034.vdocuments.net/reader034/viewer/2022052618/554cb3bbb4c905aa608b4c9a/html5/thumbnails/11.jpg)
Continuous integration
• Get rid of routine• Regression testing• Fast Feedback• Confidence in the project• Frequent release
![Page 12: Сontinuous Integration - step to continuous deployment](https://reader034.vdocuments.net/reader034/viewer/2022052618/554cb3bbb4c905aa608b4c9a/html5/thumbnails/12.jpg)
Continuous integration
![Page 13: Сontinuous Integration - step to continuous deployment](https://reader034.vdocuments.net/reader034/viewer/2022052618/554cb3bbb4c905aa608b4c9a/html5/thumbnails/13.jpg)
Deploy
![Page 14: Сontinuous Integration - step to continuous deployment](https://reader034.vdocuments.net/reader034/viewer/2022052618/554cb3bbb4c905aa608b4c9a/html5/thumbnails/14.jpg)
Deploy
Code Run
SVNGITCVS MercurialFTPSFTP
Bash ManualBash SSHVCS Hooks CronCapistrano Phingistrano
![Page 15: Сontinuous Integration - step to continuous deployment](https://reader034.vdocuments.net/reader034/viewer/2022052618/554cb3bbb4c905aa608b4c9a/html5/thumbnails/15.jpg)
Inspection
![Page 16: Сontinuous Integration - step to continuous deployment](https://reader034.vdocuments.net/reader034/viewer/2022052618/554cb3bbb4c905aa608b4c9a/html5/thumbnails/16.jpg)
Inspection – Copy - Paste
PHPCPD
pear install phpunit/phpcpd
![Page 17: Сontinuous Integration - step to continuous deployment](https://reader034.vdocuments.net/reader034/viewer/2022052618/554cb3bbb4c905aa608b4c9a/html5/thumbnails/17.jpg)
Inspection - Mess
phplint
icosaedro.it/phplint
![Page 18: Сontinuous Integration - step to continuous deployment](https://reader034.vdocuments.net/reader034/viewer/2022052618/554cb3bbb4c905aa608b4c9a/html5/thumbnails/18.jpg)
Inspection - Mess
PHPMDphpmd.org
______________________________
Code Size Rules
Design Rules
Naming Rules
Unused Code Rules
![Page 19: Сontinuous Integration - step to continuous deployment](https://reader034.vdocuments.net/reader034/viewer/2022052618/554cb3bbb4c905aa608b4c9a/html5/thumbnails/19.jpg)
Inspection – Code Style
Code Sniffer
pear install PHP_CodeSniffer
Drupal Code Sniffer
drupal.org/project/drupalcs
![Page 20: Сontinuous Integration - step to continuous deployment](https://reader034.vdocuments.net/reader034/viewer/2022052618/554cb3bbb4c905aa608b4c9a/html5/thumbnails/20.jpg)
Test
![Page 21: Сontinuous Integration - step to continuous deployment](https://reader034.vdocuments.net/reader034/viewer/2022052618/554cb3bbb4c905aa608b4c9a/html5/thumbnails/21.jpg)
Test
Selenium + Unit testing framework
+ Functional tests
- Unit tests
+ Java Script support
- Access Drupal API
- Atomicity
- Fragile tests
- Multithreading
- Performance
![Page 22: Сontinuous Integration - step to continuous deployment](https://reader034.vdocuments.net/reader034/viewer/2022052618/554cb3bbb4c905aa608b4c9a/html5/thumbnails/22.jpg)
Test
Simpletest/Simpletest clone
+ Functional tests
+ Unit tests
- Java Script support
+ Access Drupal API
+ Atomicity
+ Fragile tests
+ Multithreading
+ Performance
![Page 23: Сontinuous Integration - step to continuous deployment](https://reader034.vdocuments.net/reader034/viewer/2022052618/554cb3bbb4c905aa608b4c9a/html5/thumbnails/23.jpg)
Test
Simpletest/Simpletest clone/Selenium
+ Functional tests
+ Unit tests
+ Java Script support
+ Access Drupal API
+ Atomicity
+ Fragile tests
+ Multithreading
+ Performance
![Page 24: Сontinuous Integration - step to continuous deployment](https://reader034.vdocuments.net/reader034/viewer/2022052618/554cb3bbb4c905aa608b4c9a/html5/thumbnails/24.jpg)
Build
![Page 25: Сontinuous Integration - step to continuous deployment](https://reader034.vdocuments.net/reader034/viewer/2022052618/554cb3bbb4c905aa608b4c9a/html5/thumbnails/25.jpg)
Build
![Page 26: Сontinuous Integration - step to continuous deployment](https://reader034.vdocuments.net/reader034/viewer/2022052618/554cb3bbb4c905aa608b4c9a/html5/thumbnails/26.jpg)
Build
•Contribute•Custom•Forked
![Page 27: Сontinuous Integration - step to continuous deployment](https://reader034.vdocuments.net/reader034/viewer/2022052618/554cb3bbb4c905aa608b4c9a/html5/thumbnails/27.jpg)
Build
•Contribute•Custom•Forked Patches
![Page 28: Сontinuous Integration - step to continuous deployment](https://reader034.vdocuments.net/reader034/viewer/2022052618/554cb3bbb4c905aa608b4c9a/html5/thumbnails/28.jpg)
Build
Drush make
projects[admin_menu][version] = "3.0-rc1"
projects[admin_menu][subdir] = "contrib/dev"
projects[admin_menu][patch][] = "patches/admin_menu_font.patch"
![Page 29: Сontinuous Integration - step to continuous deployment](https://reader034.vdocuments.net/reader034/viewer/2022052618/554cb3bbb4c905aa608b4c9a/html5/thumbnails/29.jpg)
Build
• Drush make
• Corporate repository modules
• Fork core & modules
• Contribe your patches
![Page 30: Сontinuous Integration - step to continuous deployment](https://reader034.vdocuments.net/reader034/viewer/2022052618/554cb3bbb4c905aa608b4c9a/html5/thumbnails/30.jpg)
Build
Do not store
![Page 31: Сontinuous Integration - step to continuous deployment](https://reader034.vdocuments.net/reader034/viewer/2022052618/554cb3bbb4c905aa608b4c9a/html5/thumbnails/31.jpg)
Build
Modules Drush migrate
ObjectsFeatures
Ctoolsdefault hooks
ConfigurationsStrongarm
CtoolsFeatures
ContentUuid
Uuid featuresFeatures
![Page 32: Сontinuous Integration - step to continuous deployment](https://reader034.vdocuments.net/reader034/viewer/2022052618/554cb3bbb4c905aa608b4c9a/html5/thumbnails/32.jpg)
Build - phing
• $ phing make• $ phing install• $ phing update• $ phing test• $ phing inspect• $ phing create• $ phing phpcsetc ...
![Page 33: Сontinuous Integration - step to continuous deployment](https://reader034.vdocuments.net/reader034/viewer/2022052618/554cb3bbb4c905aa608b4c9a/html5/thumbnails/33.jpg)
Summing up
• Control over the project• Reduced the time of release• Reduced the risks• The accumulation of "technical
expertise“• Flexible integration of third-party code• 75% of developers became happy
![Page 35: Сontinuous Integration - step to continuous deployment](https://reader034.vdocuments.net/reader034/viewer/2022052618/554cb3bbb4c905aa608b4c9a/html5/thumbnails/35.jpg)
Rodionov Igor
Cooking Drupal
~ 5 years~ 14 projects~ 60 patches
~16 approved
Sponsors
Gold sponsor
Silver sponsor Silver sponsor
Bronze sponsorBronze sponsor
Organization