Matrix Feature
The Matrix Builds feature allows you to define a build configuration with different sets of parameters/parameter values. Running this build configuration creates a batch of separate builds, each running its own parameter set.
Example: The following snippet sets up the Matrix Build feature that produces 12 individual builds — one for each combination of available operating systems, Docker images, and Database images.
features {
matrix {
os = listOf(
value("Linux"),
value("Windows"),
value("Mac OS")
)
param("docker.image", listOf(
value("python:3.9.18-bullseye", label = "3.9.18"),
value("python:3.12.Orc2-slim", label = "3.12.0")
))
param("database.image", listOf(
value("postgres:16rc1"),
value("postgres:13.12")
))
}
}
Types
Functions
Copies parameters of this object to the specified target
Creates an instance of this build feature via reflection using a no argument constructor, used during copying. Throws an error if this class doesn't have a default constructor. Subclasses can override it to create an instance without using a default constructor.
Validates this object and reports found errors to the provided consumer
Creates a Value object that stores a parameter value and its optional label.