KubernetesCloudImage

Definition of a cloud image for a cloud profile agent cloud profile for Kubernetes in a project.

Example. Kubernetes Cloud Image using the base agent image

project {
    // Other Project settings ...
    features {
        // Other Project Features ...
        kubernetesCloudImage {
            profileId = "kube-1"
            agentPoolId = "some_pool"
            podSpecification = runContainer {
                dockerImage = "teamcity/agent"
            }
        }





} }

Example. Kubernetes Cloud Image using a custom pod template

project {
    // Other Project settings ...
    features {
        // Other Project Features ...
        kubernetesCloudImage {
            profileId = "kube-1"
            agentPoolId = "some_pool"
            agentNamePrefix = "prefix"
            maxInstancesCount = 5
            podSpecification = customTemplate {
                customPod = """
                       apiVersion: v1
                       kind: Pod
                       metadata:
                         labels:
                           app: teamcity-agent
                       spec:
                         restartPolicy: Never
                         containers:
                           - name: teamcity-agent
                             image: jetbrains/teamcity-agent
                             resources:
                               limits:
                                 memory: "2Gi"
                   """.trimIndent()
             }
        }





















} }

Constructors

Link copied to clipboard
constructor(init: KubernetesCloudImage.() -> Unit = {})

Properties

Link copied to clipboard
var agentNamePrefix: <Error class: unknown class>
Link copied to clipboard
var agentPoolId: <Error class: unknown class>
Link copied to clipboard
var id: String?

Project feature id, if not specified will be generated

Link copied to clipboard
var imagePriority: <Error class: unknown class>
Link copied to clipboard
var maxInstancesCount: <Error class: unknown class>
Link copied to clipboard
Link copied to clipboard
var podSpecification: <Error class: unknown class>
Link copied to clipboard
var profileId: <Error class: unknown class>
Link copied to clipboard

Project feature type

Functions

Link copied to clipboard
fun booleanParameter(    customName: String? = null,     trueValue: String? = "true",     falseValue: String? = "false"): <Error class: unknown class><Parametrized, <Error class: unknown class><Parametrized, T?>>
Link copied to clipboard
fun clear()
Link copied to clipboard
fun <T : CompoundParam<T>> compoundParameter(    customName: String? = null): <Error class: unknown class><Parametrized, <Error class: unknown class><Parametrized, 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

Creates an instance of this project 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 customTemplate(init: KubernetesCloudImage.PodSpecification.CustomTemplate.() -> Unit = {}): <Error class: unknown class>
Link copied to clipboard
fun deploymentTemplate(init: KubernetesCloudImage.PodSpecification.DeploymentTemplate.() -> Unit = {}): <Error class: unknown class>
Link copied to clipboard
fun doubleParameter(customName: String? = null): <Error class: unknown class><Parametrized, <Error class: unknown class><Parametrized, T?>>
Link copied to clipboard
fun <E : Enum<E>> enumParameter(    customName: String? = null,     mapping: Map<E, String?>? = null): <Error class: unknown class><Parametrized, <Error class: unknown class><Parametrized, T?>>
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): <Error class: unknown class><Parametrized, <Error class: unknown class><Parametrized, T?>>
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
fun runContainer(init: KubernetesCloudImage.PodSpecification.RunContainer.() -> Unit = {}): <Error class: unknown class>
Link copied to clipboard
open fun stringParameter(    customName: String? = null): <Error class: unknown class><Parametrized, <Error class: unknown class><Parametrized, T?>>
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