Upload
eric-hogue
View
502
Download
1
Tags:
Embed Size (px)
Citation preview
Introduction To Continuous Integration With Jenkins
Sunshine PHP 2015
Eric Hogue@ehogue
erichogue.ca 1
Wikipedia
the practice, in software engineering, of merging all developer working copies with a shared mainline several times a day
http://en.wikipedia.org/wiki/Continuous_integration
2
Automated Build
3
4
Self Testing
5
Fast
6
Continuous Integration
7
8
CI Tools
9
10
Builder
11
Build Results
12
Reports
13
Reports
14
Trends
15
Plugins
16
Chuck Norris
17
Ready
18
Demo Project
https://github.com/EricHogue/CIPresentation19
20
21
http://192.168.56.101:8080/
22
23
24
Plugins
● Git● Phing● Green Balls
● ChuckNorris
25
26
27
28
Code Location
29
When to Build
30
Build Tools
31
Phing
32
How to Build
33
How to Build
34
35
PHP Tools
36
Dynamic Tests
37
38
39
Failed Build
40
Publish PHPUnit Report
41
Publish PHPUnit Report
42
43
44
Publish Code Coverage
45
46
47
48
Static Tests
49
PHP_CodeSniffer
50
Publish Checkstyle results
51
52
53
54
PHP Depend
55
Publish JDepend
56
57
Classes
58
Coupling
59
Afferent Coupling Efferent Coupling
Abstractness
AC / TC60
Instability
Ce / (Ce + Ca)61
Distance
Idealized line → A + I = 162
Abstraction Instability Chart
63
Overview Pyramid - Inheritance
64
Average Number of Derived Classes
Average Hierarchy Height
Overview Pyramid - Size And Complexity
65
66
Overview Pyramid - Size And Complexity
67
Overview Pyramid - Coupling
68
69
PHP Mess Detector
70
Rulessets
71
Publish PMD
72
73
74
75
PHP Copy Paste Detector
76
Publish Duplicate Code Analysis
77
78
Violations
79
80
81
82
83
Email Notifications
84
85
More Notifications
86
87
Benefits
88
Quick Feedback
89
Metrics
90
Automation
91
Confidence
92
https://github.com/EricHogue/CIPresentation
Comments: https://joind.in/13462twitter: @ehogue
PHP Mentoring: http://phpmentoring.org/
93
● TrafficJam.jpg - Thomanication - https://www.flickr.com/photos/thomanication/6216702247● is_it_worth_the_time.png - xkcd - http://xkcd.com/1205/● LionSelfie.jpg - Silke Remmery - https://www.flickr.com/photos/silkeremmery/15856169578/in/faves-96579472@N07/● RacingDownTheRunway.jpg - Philipp Lücke - https://www.flickr.com/photos/philippluecke/6993495094/in/faves-96579472@N07/● PreciousTreasure.jpg - Dave Sutherland - https://www.flickr.com/photos/raptortheangel/12786162594/in/faves-96579472@N07/● ComputerBug.jpg - Brendan Dolan-Gavitt - https://www.flickr.com/photos/moyix/2352619003/in/faves-96579472@N07/● CatchItIfYouCan.jpg - Tim Mowrer - https://www.flickr.com/photos/mekin/281791343/in/faves-96579472@N07/● CILights.jpg - Jan Krutisch - https://www.flickr.com/photos/jankrutisch/4272142306/in/photostream/● ConductorFrederikMagleConductingASymphonyOrchestra10.jpg - Frederik Magle Music - https://www.flickr.
com/photos/frederikmagle/7026769687/in/photostream/● Ready.jpg - amanda tipton - https://www.flickr.com/photos/demandaj/6789626120● StaticWallpaper.jpg - James Spinks - https://www.flickr.com/photos/realjimbob/13270099● DynamicEarthCME.jpg - NASA Goddard Space Flight Center - https://www.flickr.com/photos/gsfc/7402440272● Containers.jpg - www.GlynLowe.comhttps://www.flickr.com/photos/batega/2056949264 - https://www.flickr.
com/photos/glynlowe/10921733615● MetricMania.jpg - Josep Ma. Rosell - https://www.flickr.com/photos/batega/2056949264● CheaperByTheYard.jpg - Bill Smith - https://www.flickr.com/photos/byzantiumbooks/16173360807● IHateWhenSomeoneLeavesaMessintheBathroom.jpg - e_monk - https://www.flickr.com/photos/e_monk/5931790591● FadeToGrey.jpg - Andreas Levers - https://www.flickr.com/photos/96dpi/2571056264● LCConversion.jpg - Ginny - https://www.flickr.com/photos/ginnerobot/2548843369● NotSoMiniBoot.jpg - Eric E Castro - https://www.flickr.com/photos/ecastro/6195349092● LEGOShip.jpg - Andrey Belenko - https://www.flickr.com/photos/belenko/4295897526● GrungeWarningSignDoNotReadThisSign.jpg - Nicolas Raymond - https://www.flickr.com/photos/80497449@N04/7417352980● Notifications.jpg - Ben Schumin - http://www.flickr.com/photos/schuminweb/9806474636/● MoreBrokenWindows.jpg - brainflakes. - https://www.flickr.com/photos/brainflakes/2763231289● Fragile.jpg - Eye - the world through my I - https://www.flickr.com/photos/ccpixel/● BalancingAct.jpg - Colin Harris ADE - https://www.flickr.com/photos/classblog/5136926303● Escalator.jpg - Adam Lederer - https://www.flickr.com/photos/elmada/2466685791● ZombieWeb.jpg - GollyGforce - Living My Worst Nightmare - https://www.flickr.com/photos/see-through-the-eye-of-g/8218600295● LegoMicroTrophy.jpg - David Luders - https://www.flickr.com/photos/42988571@N08/15965163069● GearWork2.jpg - Curious Expeditions - https://www.flickr.com/photos/curiousexpeditions/489992128● BobTheBuilder.jpg - clement127 - https://www.flickr.com/photos/clement127/15943249419● RulesRulesRules.jpg - Ricardo Liberato - https://www.flickr.com/photos/liberato/2292651755
94