Book Review: Learning Continuous Integration with TeamCity
As a reward for reviewing another book from Packt Publishing I recently received a copy of Learning Continuous Integration with TeamCity by Manoj Mahalingam S. Since I'm working with TeamCity on a daily basis, the book was of great interest to me and I decided to write a review for it, even though I wasn't obligated to.
The book turned out to be a very thorough overview of TeamCity features: from installation and initial configuration to extensibility and manageability. Although it's mostly written for build engineers, there's some content for developers and system administrators, as well. I liked that it's not only focused on TeamCity, but it also provides a broader a view on the concepts of continuous integration and partially continuous delivery.
Although TeamCity is written in Java, it can be used with any technology stack. That's taken into consideration in the book as well: there are chapters dedicated to Python, Java, .NET, and Ruby. Each one of them contains information on how to setup the build environment, what are the most common build tools, and how to configure TeamCity to use them. It won't make you an expert in any of these stacks, but it should be enough to get you started, when you'll need to configure your first build for an environment you have no previous experience with. A couple of other technology stacks are mentioned in the book as well, but in even less detail than these.
The only thing I really missed in the book, was a more extensive coverage of advanced topics, such as templates, meta-runners and plugins. Although a couple of chapters do touch upon them, they are really only introduced as features, which are available in TeamCity. To take full advantage of them, you will need to find other sources of information.
In spite of that, I really liked the book and can recommend it to anyone having TeamCity as their continuous integration server, as well as to those who are considering TeamCity as their first or new solution for continuous integration. Although there's already a new version of TeamCity available, the information in the book is still relevant and useful.