"What is Continuous Integration for you?" — I ask. "Make a build, testing, checking results" — you will answer naively.
However teamwork often requires support for more twisted build scripts: start build for one branch, for the other, merge this two branches and start build again, start the test twice and if test "blinked", start it 5 times — and many other interesting scenarios. Such scenarios can be unsupportable by CI servers — we have to invent a wheel and use a crutch.
In this talk, you will learn about scenarios of projects build in JetBrains for the needs in which you have to show creativity and courage. We will consider how JetBrains use CI TeamCity server and what additions had to be implemented to support the build scripts of own Java and .NET projects.