Figure 10.19. Creating a multiconfiguration build job
A multiconfiguration build job is just like any other build job, but with one very important additional
element: the Configuration Matrix (see Figure 10.20, “Adding an axis to a multiconfiguration build”).
This is where you define the different configurations that will be used to run your builds.
Figure 10.20. Adding an axis to a multiconfiguration build
You can define different axes of configuration options, including running the build job on different
slaves or on different JDKs, or providing your own custom properties to the build. For example, in the
build jobs discussed earlier, we might want to test our application for different databases and different
operating systems. We could define one axis defining slave machines with different operating systems
we wanted our build to run on, and another axis defining all the possible database values. Jenkins will
then run the build job for each possible database and each possible operating system.
Let’s look at the types of axis you can define.
10.4.2. Configuring a Slave Axis
The first option is to configure your build to run simultaneously on different slave machines (see
Chapter 11, Distributed Builds). Now of course, the idea of having a set of slave machines is usually that
you can run your build job on any of them. But there are cases where it makes sense to be a little more
choosy. For example, you might want your tests to run on Windows, Mac OS X, and Linux. In this case,