Your SlideShare is downloading. ×
0
MAGENTO AND CONTINUOUS INTEGRATION
Damian Luszczymak
● Freelancer
● Magento since 2008
● Father of Magento Hackathon
● Firegento Member
● Search, Import / Ex...
Battle Plan
Coding Guidelines
Programming style is a set of rules or
guidelines used when writing the source code
for a computer progr...
! phpcs !
● PEAR
● PSR-1
● PSR-2
● Zend
● …..
https://github.com/madedotcom/phpcs-magento-r
ules
Git Hook
Check if php syntax is correct
.git/hooks/pre-commit
#!/usr/bin/php
<?php
// Grab all added, copied or modified f...
Know your IDE
http://magicento.com
PHPUnit → EcomDev
● EcomDev/EcomDev_PHPUnit/
This extension was created especially for resolving this problem and promotin...
CI
● Jenkins / Hudson
● Codeship.io
● Drone.io
● Cloudbees.com
● Circelci.com
Your journey just started
● Continues Deployment
● Build Notifications
● Github vs. Bitbucket vs. Private server
● Modman
...
Twitter / IRC => @daim2k5
info@icyapp.de
Join Firegento ;-)
Magento and Continuous Integration - Damian Luszczymak
Magento and Continuous Integration - Damian Luszczymak
Magento and Continuous Integration - Damian Luszczymak
Magento and Continuous Integration - Damian Luszczymak
Magento and Continuous Integration - Damian Luszczymak
Magento and Continuous Integration - Damian Luszczymak
Magento and Continuous Integration - Damian Luszczymak
Magento and Continuous Integration - Damian Luszczymak
Magento and Continuous Integration - Damian Luszczymak
Magento and Continuous Integration - Damian Luszczymak
Magento and Continuous Integration - Damian Luszczymak
Magento and Continuous Integration - Damian Luszczymak
Magento and Continuous Integration - Damian Luszczymak
Magento and Continuous Integration - Damian Luszczymak
Magento and Continuous Integration - Damian Luszczymak
Magento and Continuous Integration - Damian Luszczymak
Magento and Continuous Integration - Damian Luszczymak
Magento and Continuous Integration - Damian Luszczymak
Magento and Continuous Integration - Damian Luszczymak
Magento and Continuous Integration - Damian Luszczymak
Magento and Continuous Integration - Damian Luszczymak
Magento and Continuous Integration - Damian Luszczymak
Magento and Continuous Integration - Damian Luszczymak
Magento and Continuous Integration - Damian Luszczymak
Upcoming SlideShare
Loading in...5
×

Magento and Continuous Integration - Damian Luszczymak

950

Published on

Magento and Continuous Integration, what you can do ! How you can use CI Systems with Magento and how to start.

I show you one possible way to introduce this in small company's or even for your private project without much money.

Published in: Technology

Transcript of "Magento and Continuous Integration - Damian Luszczymak"

  1. 1. MAGENTO AND CONTINUOUS INTEGRATION
  2. 2. Damian Luszczymak ● Freelancer ● Magento since 2008 ● Father of Magento Hackathon ● Firegento Member ● Search, Import / Export
  3. 3. Battle Plan
  4. 4. Coding Guidelines Programming style is a set of rules or guidelines used when writing the source code for a computer program. It is often claimed that following a particular programming style will help programmers to read and understand source code conforming to the style, and help to avoid introducing errors.
  5. 5. ! phpcs ! ● PEAR ● PSR-1 ● PSR-2 ● Zend ● ….. https://github.com/madedotcom/phpcs-magento-r ules
  6. 6. Git Hook Check if php syntax is correct .git/hooks/pre-commit #!/usr/bin/php <?php // Grab all added, copied or modified files into $output array exec('git diff --cached --name-status --diff-filter=ACM', $output); foreach ($output as $file) { $fileName = trim(substr($file, 1)); // We only want to check PHP files if (pathinfo($fileName,PATHINFO_EXTENSION) == "php") { $lint_output = array(); // Check syntax with PHP lint exec("php -l " . escapeshellarg($fileName), $lint_output, $return); if ($return == 0) { continue; } else { echo implode("n", $lint_output), "n"; exit(1); } } } exit(0);
  7. 7. Know your IDE
  8. 8. http://magicento.com
  9. 9. PHPUnit → EcomDev ● EcomDev/EcomDev_PHPUnit/ This extension was created especially for resolving this problem and promoting test driven development practices in Magento developers community. It doesn't change core files or brake your Magento instalment database, because all the system objects are replaced during the run-time with the test ones and a separate database connection is used for tests.
  10. 10. CI ● Jenkins / Hudson ● Codeship.io ● Drone.io ● Cloudbees.com ● Circelci.com
  11. 11. Your journey just started ● Continues Deployment ● Build Notifications ● Github vs. Bitbucket vs. Private server ● Modman ● Composer (no git submodules available :-( )
  12. 12. Twitter / IRC => @daim2k5 info@icyapp.de
  13. 13. Join Firegento ;-)
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×