RunInDockerBuildFeature

Runs all build steps of a configuration in the specified container. Steps that cannot run inside the container are executed outside of it. If the image registry requires authorization, enable the Docker Registry Connections build feature.

Example.

buildType {
    name = "Build in Docker"

    features {
        runInDocker {
            dockerImage = "busybox"
        }
    }

    steps {
        script {
            scriptContent = "echo this step is running inside the container"
        }
        script {
            scriptContent = "echo and this step is running in the same container""
        }
    }
}

See also

Constructors

Link copied to clipboard
constructor(init: RunInDockerBuildFeature.() -> Unit)
constructor()

Types

Link copied to clipboard

Properties

Link copied to clipboard

Image name to use for running build steps, for example, "ubuntu:latest". The image will be pulled via "docker pull" or "podman pull" commands, depending on which container manager is installed on the agent that runs the build.

Link copied to clipboard

Select a specific image OS platform. Limits the pool of compatible agents to those running on this platform.

Link copied to clipboard

If enabled, TeamCity will explicitly pull the target image every time the build is about to start.

Link copied to clipboard

Additional arguments passed to "docker run" command.

Link copied to clipboard

Specifies whether the feature is enabled, true by default

Link copied to clipboard
var id: String?

Build feature id, if not specified will be generated

Link copied to clipboard
Link copied to clipboard

Build feature type

Functions

Link copied to clipboard
fun booleanParameter(customName: String? = null, trueValue: String? = "true", falseValue: String? = "false"): DelegateProvider<Boolean?>
Link copied to clipboard
fun clear()
Link copied to clipboard
fun <T : CompoundParam<T>> compoundParameter(customName: String? = null): DelegateProvider<T>
Link copied to clipboard
fun <T : Parametrized> copyParamsTo(target: T): T

Copies parameters of this object to the specified target

Link copied to clipboard
open fun create(): BuildFeature

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.

Link copied to clipboard
fun doubleParameter(customName: String? = null): DelegateProvider<Double>
Link copied to clipboard
fun <E : Enum<E>> enumParameter(customName: String? = null, mapping: Map<E, String?>? = null): DelegateProvider<E>
Link copied to clipboard
fun findRawParam(paramName: String): Parameter?
Link copied to clipboard
fun hasParam(paramName: String): Boolean
Link copied to clipboard
fun intParameter(customName: String? = null): DelegateProvider<Int>
Link copied to clipboard
fun param(name: String, value: String)

Adds parameter with specified name and value

Link copied to clipboard
fun removeRawParam(paramName: String)
Link copied to clipboard
open fun stringParameter(customName: String? = null): DelegateProvider<String>
Link copied to clipboard
open override fun toString(): String
Link copied to clipboard
open override fun validate(consumer: ErrorConsumer)

Validates this object and reports found errors to the provided consumer