Questions tagged [continuous-integration]

Continuous integration (CI) is the building and automated testing of the full software product on a frequent schedule: at least once a day, often several times a day and sometimes as often as after every check in to the version control system.

Concept

Continuous integration is an important part of an agile software development process. Integration is an important step to detect quality issues, so if it is done frequently, problems will be detected earlier and fewer at a time. Hence, continuous integration can help to reduce the overall cost of the process. Although continuous integration could be automated with simple scripting, it is generally more advantageous to use tools built for this purpose, especially for complex projects with many modular parts.

Tools

One of the first tools to become popular for this purpose was CruiseControl. Now there are many such products, both open source and proprietary.

References

Martin Fowler has a good writeup of what it all means in Continuous Integration.

11923 questions
126
votes
2 answers

Travis.yml ./gradlew : Permission denied

Using Travis CI for an existing Android project calling $ ./gradlew build connectedCheck I get this error: /home/travis/build.sh: line 45: ./gradlew: Permission denied The command "./gradlew build connectedCheck" failed and exited with 126 during…
Gabriele Mariotti
  • 192,671
  • 57
  • 469
  • 489
122
votes
12 answers

Best practices when using Terraform

I'm in the process of swapping over our infrastructure into terraform. What's the best practice for actually managing the terraform files and state? I realize it's infrastructure as code, and i'll commit my .tf files into git, but do I commit…
Marc Young
  • 3,541
  • 3
  • 15
  • 21
122
votes
5 answers

Showing Travis build status in GitHub repo

I remember recently seeing the Travis build status of a pr or commit in GitHub browsing the repository (but can't find where). I'm not talking about the Travis build status images in README.md but an actual GitHub feature (green box with a friendly…
andig
  • 12,004
  • 10
  • 48
  • 85
119
votes
10 answers

How to select different app.config for several build configurations

I have a dll-type project that contains MSTest integration tests. On my machine the tests pass, and I want the same to happen on a CI server (I use TeamCity). But the tests fail, because I need to tweak some settings in app.config. This is why I was…
119
votes
6 answers

Bamboo Vs. Hudson(a.k.a. Jenkins) vs Any other CI systems

Anyone out there have experience with both Hudson and Bamboo? Any thoughts on the relative strengths and weaknesses of these products? Okay, since folks keep mentioning other CI products I'll open this up further. Here are my general problem. I want…
Karthik Ramachandran
  • 11,347
  • 9
  • 43
  • 52
119
votes
4 answers

Jenkins CI Pipeline Scripts not permitted to use method groovy.lang.GroovyObject

I am Using Jenkins 2 for compiling Java Projects, I want to read the version from a pom.xml, I was following this example: https://github.com/jenkinsci/pipeline-plugin/blob/master/TUTORIAL.md The example suggest: It seems that there is some…
117
votes
11 answers

CruiseControl [.Net] vs TeamCity for continuous integration?

I would like to ask you which automated build environment you consider better, based on practical experience. I'm planning to do some .Net and some Java development, so I would like to have a tool that supports both these platforms. I've been…
116
votes
14 answers

"Pretty" Continuous Integration for Python

This is a slightly.. vain question, but BuildBot's output isn't particularly nice to look at.. For example, compared to.. phpUnderControl Jenkins Hudson CruiseControl.rb ..and others, BuildBot looks rather.. archaic I'm currently playing with…
dbr
  • 153,498
  • 65
  • 266
  • 333
114
votes
12 answers

How can I auto increment the C# assembly version via our CI platform (Hudson)?

Myself and my group are horrendous at incrementing assembly version numbers and we frequently ship assemblies with 1.0.0.0 versions. Obviously, this causes a lot of headaches. We're getting a lot better with our practices via our CI platform and…
Allen Rice
  • 18,062
  • 13
  • 77
  • 111
111
votes
9 answers

How do you run NUnit tests from Jenkins?

I'm looking to run automated NUnit tests for a C# application, nightly and on each commit to svn. Is this something that Jenkins-CI can do? Is there an online tutorial or how-to document which documents a similar setup that I can look at?
blueberryfields
  • 35,755
  • 24
  • 82
  • 160
107
votes
3 answers

How to upgrade msbuild to C# 6?

I want to use C# 6 in my project (null propagation, other features). I've installed VS 2015 on my PC and it works brilliantly and builds test code like var user = new SingleUserModel(); //all model fields are null var test =…
Anna Prosvetova
  • 1,397
  • 2
  • 9
  • 14
106
votes
7 answers

Jenkins scripted pipeline or declarative pipeline

I'm trying to convert my old style project base workflow to a pipeline based on Jenkins. While going through docs I found there are two different syntaxes named scripted and declarative. Such as the Jenkins web declarative syntax release recently…
Nayana Adassuriya
  • 19,806
  • 20
  • 87
  • 131
104
votes
12 answers

Best branching strategy when doing continuous integration?

What is the best branching strategy to use when you want to do continuous integration? Release Branching: develop on trunk, keep a branch for each release. Feature Branching: develop each feature in a separate branch, only merge once stable. Does…
KingNestor
  • 59,315
  • 50
  • 115
  • 149
103
votes
18 answers

What is the point of a "Build Server"?

I haven't worked for very large organizations and I've never worked for a company that had a "Build Server". What is their purpose? Why aren't the developers building the project on their local machines, or are they? Are some projects so large…
KingNestor
  • 59,315
  • 50
  • 115
  • 149
100
votes
9 answers

Hudson or Teamcity for continuous integration?

We are a Java shop looking for a CI tool to use. Both Hudson and Teamcity seem to be free but Teamcity seems slicker and with more support. I was wondering why one would still use Hudson and if anyone could provide any argument for/against either?
pdeva
  • 36,445
  • 42
  • 122
  • 154