In software engineering, continuous integration (CI) implements the continuous 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.

learn more… | top users | synonyms

4
votes
1answer
52 views

gitflow model with UAT releases is too chaotic, how to simplify?

At $DAYJOB, we have the following release/delivery pipeline: Get new features, work on new features. Once all features are completed, our own QA performs regressions, etc. QA signs off on first UAT ...
22
votes
7answers
2k views

Automatically reverting commits that fail the build

A colleague of mine told me that he is thinking in making our CI server to revert commits that failed the build, so the HEAD in master is always stable (as in passing the build at least). Is this a ...
15
votes
2answers
486 views

Is it good practice to store software version numbers in VCS?

A product version, such as v1.0.0.100, represents not only a unique production release of software, but helps identify feature sets and hotfix stages for said product. Right now I see two ways to ...
0
votes
0answers
24 views

Deployment keys vs. virtual users on GitHub

GitHub supports deployment keys which are attached to a repository instead of a user. Such a key can be used to read and write the repository and is intended as a mean for automatic processes ...
1
vote
1answer
63 views

Development Workflow (Git/CI) in varied tech level .NET Shop

tl;dr: I need a development workflow for ASP.NET apps that works for the designer on a Mac, the content writers who don't have visual studio, and the C#/.NET developers (mostly me), such that we can ...
1
vote
2answers
46 views

Deploy a website via apt/yum to different environments without rebuilding for each?

I want to setup a continuous integration pipeline for the first time. I have a website that includes a config file that points to MySQL and Redis. I would like to build a package once and then deploy ...
2
votes
2answers
98 views

Should unit tests run on every git branch?

I am new to repo management / continuous integration. I designed a repo in the following way PROJ |-src |-include |-lib |-config PROJ_Unit_Tests |-src |-config PROJ_Doc When I now do ...
5
votes
3answers
278 views

Is continuous integration more than just automatically testing code?

Is continuous integration about more than just automatically testing code, either periodically or after every commit to the main repository? Before today, I'd heard the term CI, and about CI services ...
2
votes
1answer
238 views

Build automation vs deploy automation vs continuous integration

I want to become more efficient and I want to use ops tools efficiently. With this in mind, I wanted to learn more about continuous integration, but it seems that there is many different things ...
5
votes
4answers
180 views

How do you scale your integration testing?

I am investigating techniques and strategies for scaling our growing number of integration tests on our current product, so that they can (humanly) remain part of our development, and CI process. At ...
-1
votes
1answer
127 views

A good workflow to start with Continuous Delivery?

My team is facing a couple of new challanges in the near future, as we will start developing a couple of (micro)services which will run in a cloud environment. Therefore we want to establish a ...
3
votes
4answers
406 views

Why does CI stipulate that we should be able to rollback to any version of a software?

I was reading the book "Continuous delivery, reliable software deployments through build, tests and deployment automation ". And the author mentions that one should be able to rollback to any version ...
0
votes
1answer
141 views

Atlassian Bamboo package from multiple repositories

We're currently developing a server/client application. The server is a maven Java EE project. The client interfaces are in HTML5. We use Stateless REST interfaces to communicate with each other. As ...
1
vote
1answer
120 views

How would a one man team benefit from a continous integration setup? [duplicate]

I am a one man team. I develop an in house database, and the web interface. My current workflow is code on my development machine. Test. Push to a central git server. Log into the production server ...
1
vote
0answers
175 views

Single branch Strategy in Agile development

Currently in our project we have trunk , release branches also hotfix brances , we are planning to maintain single branch strategy instead maintain multiple. can any one explain what are all the ...
1
vote
2answers
177 views

Why does Jenkins warn you if you tell it to check for changes every minute?

In the past when I've set up Jenkins to look for version control changes every second by using the cron format of "* * * * *" (or something like that). When you do this, it gives you a warning and ...
3
votes
1answer
69 views

Dependency promotion strategies: siloed or orchestrated?

We have a lot of apps and web services (some public facing products, some internal and part of a private "backend") that are interdependent on one another. Each one of these components has 4 ...
-1
votes
2answers
1k views

Scheduling a Jenkins job to only run integration test [closed]

My current company has a Jenkins/DotCi setup. Our current process for CI is when dev pushes to github, jenkins runs unit tests on all branches and reports back to us via email if the unit tests ...
1
vote
2answers
94 views

Implementing Continuous Integration with a volatile hierarchy of library dependencies

Recently my company setup a build server using Bamboo and a private Nuget Feed which is populated by the successful builds being deployed from the build server. There is a hierarchy of projects under ...
0
votes
1answer
62 views

Continuous Integration for API wrappers

I'm setting up the Continuous Integration process for our API and I've split my brain trying to figure out how to connect that process with the API wrapper libs too. Here's what I want to happen: I ...
0
votes
1answer
100 views

Continuous Integration for different languages [closed]

So, I understand Continuous Integration in theory, and have used Beanstalk. However, I've been charged with creating the process at my current PHP shop. My hope was maybe PHPCI, since it looked ...
0
votes
1answer
256 views

continuous integration with Xcode [closed]

I'm looking to setup CI. I only own one Mac. I do have a copy of OS X 4.0 Server (free with my Apple Developer Program license). I currently use Git for source control. I would prefer something ...
6
votes
1answer
293 views

What are the advantages of continuous deployment? [closed]

Continuous deployment require a lot of effort, beyond what is needed for continuous integration. Since every change corresponds to a release (more or less), there is far less time and resources ...
4
votes
1answer
169 views

When deploying code to a production server, how are non-source code assets such as images and PDFs managed?

Currently, I am trying to set up deployment procedures and GIT for a group of websites. Code and assets are between 15 and 20GB. The code and related text files are probably closer to 150MB. When ...
3
votes
2answers
198 views

Tracking internal builds versus public builds

At our office, we use JIRA to track issues reported by our QA teams. We also have Bamboo which builds each time we commit to our Git (Stash) repository. QA picks a build from Bamboo and they work with ...
-1
votes
1answer
272 views

Cross-platform CI builds [closed]

Does any Continuous Integration system out there offer building a project on several operating systems at the same time? Like, building the code on Windows, Linux, *BSD and OSX per commit? I ...
25
votes
7answers
3k views

Is it a good practice to run unit tests in version control hooks?

From the technical point of view it is possible to add some pre/post push hooks which will run unit tests before allowing some specific commit to be merged to remote default branch. My question is - ...
3
votes
4answers
321 views

Convincing my boss that touching the Database is integration testing [closed]

I am currently working on introducing continuous integration and switching to git, and as part of that, we must also better structure our tests. We have agreed on splitting the tests in "integration" ...
10
votes
4answers
4k views

How to use github, branches and automatic releases for version management? [closed]

I understand most of the basic Git/Github concepts by now, however I still have trouble understanding the bigger picture. These are some things that I have managed to get working so far: Push ...
1
vote
2answers
164 views

Client / Server dependencies with Continuous Integration

I'm starting to use continuous integration for one of my projects and had some questions about structure and architecture. It's basically a multi-device webservice that is split into one server ...
1
vote
1answer
483 views

Tomcat + Spring + CI workflow [closed]

We're starting our very first project with Spring and java web stack. This project will be mainly about rewriting quite large ERP/CRM from Zend Framework to Java. Important factor in my question is ...
5
votes
2answers
2k views

Why is build.number an “abuse” of semantic versioning?

I was explaining a proposed build system (Gradle/Artifactory/Jenkins/Chef) to one of our senior architects, and he made a comment to me that I sort of disagree with, but am not experienced enough to ...
5
votes
1answer
78 views

Coping with build order requirements in automated builds

I have three Scala packages being built as separate sbt projects in separate repos with a dependency graph like this: M---->D ^ ^ | | +--+--+ ^ | S S is a service. ...
1
vote
2answers
3k views

Is Chef an appropriate tool to use for application deployment? [closed]

We use Chef for both config management (making sure a "DB Node" has the right version of the right DB on it; that an "App Server" has the right version of Java and env vars on it, etc.). as well as ...
3
votes
1answer
413 views

Building software with version numbers

This is not a question about how to number versions. We have an application with a certain version numbering scheme. We also have a Jenkins CI server (soon to be replaced with Atlassian's Bamboo) ...
1
vote
4answers
164 views

Track performance numbers

I have a (large) software project in a git repository. There is a benchmark suite that spits out lots of numbers (time per benchmark, allocations done per benchmark) I’d like to track. What is the ...
1
vote
2answers
2k views

Can XCode work with TFS?

We have been using Team Foundation Server (TFS) for source code management of our solution which contains components for a number of platforms - asp.net, windows & android so far. We now wish to ...
6
votes
2answers
227 views

Continuous integration policy problems

Currently our model, with respect to SVN and automated build, looks like Which, as far as I know, wasn't the way SVN was meant to be used. But the process works okay from a technical standpoint. ...
1
vote
2answers
83 views

Is there such a thing as API documentation management?

So I started thinking, what is the best practice for publishing generated documentation (e.g. Doxygen, NaturalDocs, etc.) in terms of infrastructure? I would be generating it through continuous ...
4
votes
1answer
242 views

Continuous Integration using Docker

One of the main advantages of Docker is the isolated environment it brings, and I want to leverage that advantage in my continuous integration workflow. A "normal" CI workflow goes something like ...
5
votes
1answer
132 views

Where do the responsibilities of build tools end and those of CI tools start? [duplicate]

In the delivery of software, and within the sense of the deployment pipeline, where do the responsibilities of build tools, like Maven, end, and the responsibilities of CI start? As a rough example ...
1
vote
0answers
83 views

How to use Subversion in conjunction with DTAP with several Scrum teams?

I've read How Do You Pull Something from a Release?, but it doesn't solve our problems, as our case is more complex. Our situation is as follows. We're developing an application for an internal ...
0
votes
2answers
250 views

Continuous Integration / Deployment: Test on commit, pull request, or what?

I read about CI/CD, loved it, but I'm having trouble with the details as everything I read was high level. Some authors seemed to suggest that there couldn't be any failing commits on the repository ...
2
votes
0answers
578 views

Creating an automated test framework for UI smoke testing

I am doing my thesis on the subject of automated UI testing at a company that applies continuous integration to their projects. The company builds intranets in Microsoft SharePoint 2013 and my task is ...
2
votes
2answers
158 views

Enforcing coding standards: What are the trade-offs of different methods?

Our team has recently agreed on some very light coding standards, and that we need a means of enforcing them. We already have a mature Continuous Integration practice including frequent, small ...
2
votes
1answer
217 views

How to break up Yocto layers for continuous integration?

We are building embedded software using a Linux setup based on the Yocto project. We have a couple different configurations that we are building for different purposes (but the same target). I have ...
1
vote
2answers
2k views

CI runner on same server of GitLab?

I'm setting up a GitLab server in my company and now I'm adding GitLab CI to it. Before start this task I'd like to understand if there are any disadvantages running my runners on the same server ...
1
vote
1answer
129 views

Making applications build system-aware

Build systems for web applications are great: they give dependency management, code minification, and the ability to use tech like SASS or CoffeeScript that require pre-processing. However, I find ...
-2
votes
1answer
59 views

Managing deployment scripts in the process of continuous delivery

My question concerns deployment scripts in the process of continuous delivery. Continuous delivery recommends that deployment scripts should be versioned into SCM just as normal code. What is the ...
-1
votes
2answers
238 views

Should developers “own” the build server(s)? [closed]

The build server at our company sucks. The build agents (there are a dozen of them, each is a separate VM, and apparently they are all living on their own ESX server) are SLOW. The web interface is ...