Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Continuous integration - Best practices [closed]

I've been thinking about CI and automatic builds a lot lately and am interested in knowing if there are any best practices for setting up and maintaining a continuous integration environment. Do you keep all your CI related files checked in with your project source? How would you usually structure your CI and build files? Any tips are welcome!

like image 785
Kristoffer Ahl Avatar asked Aug 29 '09 15:08

Kristoffer Ahl


2 Answers

  1. Start with a one step build. If you don't have that, you can not have any reasonable CI
  2. If it isn't in source control, it doesn't exist
  3. If setting up and maintaining your CI exceeds the effort of setting up a developer workstation then you are overly dependent on your IDE or your project structure is overly complicated. Consider that as a refactoring opportunity.
  4. You don't need anything fancy to do CI. You don't even need to know what it is to do it. I wrote about my earlier experience here, when I implemented a naive CI before I ever heard the term CI.
like image 63
sal Avatar answered Oct 12 '22 23:10

sal


If you haven't already, definitely check out the Continuous Integration book from the Martin Fowler series, by Duvall/Matyas/Glover. It covers all of the questions you ask in depth with solid examples.

like image 35
John Feminella Avatar answered Oct 12 '22 23:10

John Feminella