ignite: open source continuous integration
DESCRIPTION
Open Source Continuous IntegrationPatrick Reynolds,Kitware Inc.TRANSCRIPT
Open Source Continuous Integration
Patrick ReynoldsKitware, Inc.
Inertia
• Open Source Software needs to be far better than the alternatives
The Value of Software
“Free” Shocks People
Credibility
• Determined by reputation and price
• OSS needs something better
Open the Code
Open the Testing Process
Open Everything
The More Metrics the Better
• Coding Style• Coverage• Dynamic Analysis• Static Analysis• Packaging
Lots of Tools
• CMake, CTest, CDash, etc.
• Ant, JUnit, Hudson, etc.
• The list goes on
CMake, CTest, CDash, etc.
• Integrated stack of tools
• Accomplish our listed goals for continuous integration
CDash
Keep Developers Honest
• Easy to see who “broke the build”
• Nightly and Continuous Builds
• Style Builds
Engage Users
• Experimental Builds
• Users see the whole process instead of just the code.
• Proof of cross-platform support
From Theory to Practice
• Bad Workflow• Better Workflow• Best Workflow
Bad Workflow
• Commit Code• Cross fingers• Get angry emails from users
Better Workflow
• Write Tests• Write Code• Test Code• Commit Code• Get angry emails from OSX and Windows users
Best Workflow
• Write Tests• Write Code• Test Code• Commit Code• Fix the OSX and Windows bugs emailed to you
from the dashboards
Results
• Quality metrics that outclass those of proprietary Software
• Less worry, more fun.
Thank You
Patrick ReynoldsKitware Inc.http://[email protected]