BuildCacheFeature

open class BuildCacheFeature : BuildFeature
fun BuildFeatures.buildCache(init: BuildCacheFeature.() -> Unit): BuildCacheFeature

Provides build cache functionality

Example. Publish local .m2 directory with downloaded dependencies to the cache with name "maven-cache"

buildType {
    // Other Build Type settings ...
    features {
        // Other Build Features ...
        buildCache {
          name = "maven-cache"
          publish = true
          rules = ".m2"
        }
} }

Example. Publish a set of files to the cache

buildType {
    // Other Build Type settings ...
    features {
        // Other Build Features ...
        buildCache {
          name = "my-cache"
          publish = true
          rules = """
              target/artifact.jar
              settings.txt
          """.trimIndent()
        }
} }

Example. Use the given cache

buildType {
    // Other Build Type settings ...
    features {
        // Other Build Features ...
        buildCache {
          name = "my-cache"
          publish = false
        }
} }

Example. Publish and use the given cache in the same build. Publish cache only it was changed during the build.

buildType {
    // Other Build Type settings ...
    features {
        // Other Build Features ...
        buildCache {
          name = "my-cache"
          publish = true
          rules = """
            target/artifact.jar
            settings.txt
          """.trimIndent()
          publishOnlyChanged = true
          use = true
        }
} }

See also

Constructors

Link copied to clipboard
fun BuildCacheFeature(init: BuildCacheFeature.() -> Unit)
Link copied to clipboard
fun BuildCacheFeature()

Functions

Link copied to clipboard
fun booleanParameter(    customName: String? = null,     trueValue: String? = "true",     falseValue: String? = "false"): <ERROR CLASS><Parametrized, <ERROR CLASS><Parametrized, T?>>
Link copied to clipboard
fun clear()
Link copied to clipboard
fun <T : CompoundParam<T>> compoundParameter(customName: String? = null): <ERROR CLASS><Parametrized, <ERROR 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
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): <ERROR CLASS><Parametrized, <ERROR CLASS><Parametrized, T?>>
Link copied to clipboard
fun <E : Enum<E>> enumParameter(customName: String? = null, mapping: Map<E, String?>? = null): <ERROR CLASS><Parametrized, <ERROR 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><Parametrized, <ERROR 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
open fun stringParameter(customName: String? = null): <ERROR CLASS><Parametrized, <ERROR 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

Properties

Link copied to clipboard
var enabled: Boolean = true

Specifies whether the feature is enabled, true by default

Link copied to clipboard
var id: String? = null

Build feature id, if not specified will be generated

Link copied to clipboard
var name: <ERROR CLASS>

Name of the cache

Link copied to clipboard
val params: List<Parameter>
Link copied to clipboard
var publish: <ERROR CLASS>

If true, publishes the files matched by rules to cache.

Link copied to clipboard
var publishOnlyChanged: <ERROR CLASS>

If enabled, cache will be published only if it was used and its files were changed during the build.

Link copied to clipboard
var rules: <ERROR CLASS>

Newline-separated list of paths relative to the checkout directory of the files or directories that should be cached. Wildcards are not supported.

Link copied to clipboard
var type: String

Build feature type

Link copied to clipboard
var use: <ERROR CLASS>

If true, downloads cached files to the agent before the build steps are executed.