Your SlideShare is downloading. ×
0
Continuous Integration
with Phing and Hudson
If it hurts do it more often.
- Wisdom of the Internet

All Images have been ...
Test Driven
Development (TDD)

Image Source: http://www.aaroncohen.me/wp-content/uploads/2013/04/2011-04-28.tdd_.png. Than...
Our Concerns

•  For our new architecture, we
wanted:
o 
o 
o 
o 

Tests
Build Scripts
Packaging (Client of the REST)
Auto...
Java World

•  Unit Testing: Junit
•  Packaging: Jar/War
•  Building: Ant/Maven
•  Continuous Integration: Hudson

Image S...
Looked for PHP
Solutions

•  Testing: PHPUnit
•  Build Scripts: Phing
•  Packaging: Phar
•  CI: Hudson
Image Source: http:...
Phing (PHing Is Not GNU)

•  PHP project build system based on ​Apache Ant
•  Philosophy
o 
o 
o 
o 
o 
o 

Simple XML bui...
Phing (PHing Is Not GNU)

•  Features
o  PHPUnit and SimpleTest unit tests (including test result and coverage
reports)
o ...
Code Snippet – build.xml

tech.vocanic.com
Lint and Prep

tech.vocanic.com
Test

tech.vocanic.com
Deploy

tech.vocanic.com
Phar

tech.vocanic.com
Starting a Development Server

tech.vocanic.com
Composing from Phing Files

tech.vocanic.com
Code Coverage & Test Results

tech.vocanic.com
Generating PHP Docs

tech.vocanic.com
Reports (Test Results)

tech.vocanic.com
Reports (PHP Docs)

tech.vocanic.com
Reports (Code Coverage)

tech.vocanic.com
Lots more on offer

tech.vocanic.com
Hudson

•  Continuous Integration
•  Philosophy
o  Building/testing software projects continuously
o  Monitoring execution...
Hudson

•  Features
o 
o 
o 
o 
o 
o 

Easy Installations
Easy Configuration
E-mail Integration
Test Reporting
Publishing ...
Security - Hudson + LDAP

tech.vocanic.com
Add Plugins

tech.vocanic.com
Set Up a Job - Basics

tech.vocanic.com
Set Up a Job - Source Code

tech.vocanic.com
Set Up a Job – Triggers

tech.vocanic.com
Set Up a Job – Post Run

tech.vocanic.com
Job Dashboard

tech.vocanic.com
Console Output

tech.vocanic.com
tech.vocanic.com
Upcoming SlideShare
Loading in...5
×

2013 10-28 php ug presentation - ci using phing and hudson

988

Published on

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
988
On Slideshare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
Downloads
3
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Transcript of "2013 10-28 php ug presentation - ci using phing and hudson"

  1. 1. Continuous Integration with Phing and Hudson If it hurts do it more often. - Wisdom of the Internet All Images have been downloaded from Google Image Search and many thanks to all creators. I am too lazy to attribute each image. tech.vocanic.com
  2. 2. Test Driven Development (TDD) Image Source: http://www.aaroncohen.me/wp-content/uploads/2013/04/2011-04-28.tdd_.png. Thanks to the creator. tech.vocanic.com
  3. 3. Our Concerns •  For our new architecture, we wanted: o  o  o  o  Tests Build Scripts Packaging (Client of the REST) Auto-Deployment tech.vocanic.com
  4. 4. Java World •  Unit Testing: Junit •  Packaging: Jar/War •  Building: Ant/Maven •  Continuous Integration: Hudson Image Source: http://www.jbase.com/new/products/images/java.png Thanks to the creator. tech.vocanic.com
  5. 5. Looked for PHP Solutions •  Testing: PHPUnit •  Build Scripts: Phing •  Packaging: Phar •  CI: Hudson Image Source: http://www.jbase.com/new/products/images/java.png Thanks to the creator. tech.vocanic.com
  6. 6. Phing (PHing Is Not GNU) •  PHP project build system based on ​Apache Ant •  Philosophy o  o  o  o  o  o  Simple XML buildfiles Rich set of provided tasks Easily extendable via PHP classes Platform-independent: works on UNIX, Windows, Mac OSX No required external dependencies Built for PHP5 Image Source: http://www.phing.info/trac/chrome/site/logo.gif Thanks to the creator. tech.vocanic.com
  7. 7. Phing (PHing Is Not GNU) •  Features o  PHPUnit and SimpleTest unit tests (including test result and coverage reports) o  file system operations o  SQL execution, o  CVS/SVN/GIT operations, o  tools for creating PEAR packages, o  documentation generation (DocBlox, PhpDocumentor) and o  much, much more. Image Source: http://www.phing.info/trac/chrome/site/logo.gif Thanks to the creator. tech.vocanic.com
  8. 8. Code Snippet – build.xml tech.vocanic.com
  9. 9. Lint and Prep tech.vocanic.com
  10. 10. Test tech.vocanic.com
  11. 11. Deploy tech.vocanic.com
  12. 12. Phar tech.vocanic.com
  13. 13. Starting a Development Server tech.vocanic.com
  14. 14. Composing from Phing Files tech.vocanic.com
  15. 15. Code Coverage & Test Results tech.vocanic.com
  16. 16. Generating PHP Docs tech.vocanic.com
  17. 17. Reports (Test Results) tech.vocanic.com
  18. 18. Reports (PHP Docs) tech.vocanic.com
  19. 19. Reports (Code Coverage) tech.vocanic.com
  20. 20. Lots more on offer tech.vocanic.com
  21. 21. Hudson •  Continuous Integration •  Philosophy o  Building/testing software projects continuously o  Monitoring executions of externally-run jobs Image Source: http://wiki.eclipse.org/images/1/18/Hudson-bust.png Thanks to the creator. tech.vocanic.com
  22. 22. Hudson •  Features o  o  o  o  o  o  Easy Installations Easy Configuration E-mail Integration Test Reporting Publishing Docs (PHP Docs, Code Coverage etc) Plugin Support Image Source: http://wiki.eclipse.org/images/1/18/Hudson-bust.png Thanks to the creator. tech.vocanic.com
  23. 23. Security - Hudson + LDAP tech.vocanic.com
  24. 24. Add Plugins tech.vocanic.com
  25. 25. Set Up a Job - Basics tech.vocanic.com
  26. 26. Set Up a Job - Source Code tech.vocanic.com
  27. 27. Set Up a Job – Triggers tech.vocanic.com
  28. 28. Set Up a Job – Post Run tech.vocanic.com
  29. 29. Job Dashboard tech.vocanic.com
  30. 30. Console Output tech.vocanic.com
  31. 31. tech.vocanic.com
  1. A particular slide catching your eye?

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

×