AutoMerge

open class AutoMerge : BuildFeature
fun BuildFeatures.merge(init: AutoMerge.() -> Unit): AutoMerge

Build feature enabling automatic merge in build configuration or template.

Example. Upon finishing of a build in a branch with name starting with 'feature-' prefix, performs merge of the branch into the default branch, but only if no new tests failed comparing to the latest build in the default branch. Also tries to perform fast-forward merge if possible.

buildType {
    // Other Build Type settings ...
    features {
        // Other Build Features ...
        merge {
          branchFilter = "+:feature-*"
          mergePolicy = AutoMerge.MergePolicy.FAST_FORWARD
          mergeCondition = "noNewTests"
        }
} }

See also

Constructors

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

Types

Link copied to clipboard
enum MergeCondition : Enum<AutoMerge.MergeCondition>

A condition which should be satisfied for merge to happen

Link copied to clipboard
enum MergePolicy : Enum<AutoMerge.MergePolicy>

Settings for merge commit

Link copied to clipboard
enum RunPolicy : Enum<AutoMerge.RunPolicy>

Policy for running merge feature

Functions

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

Properties

Link copied to clipboard
var branchFilter: String?

A filter for logical names of the branches whose build's sources will be merged.

Link copied to clipboard
var commitMessage: String?

A merge commit message

Link copied to clipboard
var destinationBranch: String?

A logical name of the destination branch the sources will be merged to. The branch must be present in a repository and included into the branch specification.

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 mergeCondition: String?

A condition which should be satisfied for merge to happen

Link copied to clipboard
var mergePolicy: AutoMerge.MergePolicy?

Specifies settings for merge commit

Link copied to clipboard
val params: List<Parameter>
Link copied to clipboard
var runPolicy: AutoMerge.RunPolicy?

Run policy of auto merge

Link copied to clipboard
var type: String

Build feature type