KotlinScriptCustomBuildStep

A build step running a Kotlin script with the specified content

Example. Adds a Kotlin script build step with default Kotlin compiler and default JVM.

buildType {
// Other Build Type settings ...
steps {
// Other Build Steps ...
        kotlinScript {
name = "My Kotlin Script step"
content = """
// Koltin script content
println("Hello, World")
""".trimIndent()
}
}
}

Example. Adds a Kotlin script build step with bundled Kotlin compiler and custom JDK is set to the environment variable value with additional parameter. Additional agruments are passed to the Kotlin script with a reference to the configuration parameter value. Custom working directory is provided.

buildType {
// Other Build Type settings ...
steps {
// Other Build Steps ...
        kotlinScript {
name = "My Kotlin Script step"
workingDir = "data/"
content = """
// Koltin script content
println("Hello, World")
""".trimIndent()

compiler = "%teamcity.tool.kotlin.compiler.bundled%"
arguments = "%myscript.params%"

jdkHome = "%env.JDK_15_0%"
jvmArgs = "-Xmx2048m"
}
}
}

Example. Adds a Kotlin script build step with custom Kotlin compiler and custom JDK with additional parameter. Custom working directory is provided.

buildType {
// Other Build Type settings ...
steps {
// Other Build Steps ...
        kotlinScript {
name = "My Kotlin Script step"
workingDir = "data/"
content = """
// Koltin script content
println("Hello, World")
""".trimIndent()

compiler = "path/to/kotlin/compiler"

jdkHome = "path/to/jdk"
jvmArgs = "-Xmx2048m"
}
}
}

See also

Constructors

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

Properties

Link copied to clipboard

Space-separated list of additional arguments for Kotlin script

Link copied to clipboard

Path to Kotlin compiler

Link copied to clipboard

Optional collection of build step execution conditions

Link copied to clipboard

Content of the script to run

Link copied to clipboard

Specifies whether the step is enabled, true by default

Link copied to clipboard
Link copied to clipboard
var id: String?

Optional id of the step. Usually the id is not required, however if a build configuration inherits from a template and wants to override a build step defined there, then both steps should have the same id.

Link copied to clipboard

Custom JDK to use. The default is JAVA_HOME environment variable or the agent's own Java.

Link copied to clipboard

Space-separated list of additional arguments for JVM

Link copied to clipboard

Build step name

Link copied to clipboard
Link copied to clipboard

Build step type

Link copied to clipboard

Build working directory for the script, specify it if it is different from the checkout directory.

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

Deletes all configured build step conditions

Link copied to clipboard
fun <T : CompoundParam<T>> compoundParameter(customName: String? = null): DelegateProvider<T>
Link copied to clipboard
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(): BuildStep

Creates an instance of this build step 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