Class VcsChangeDetection

java.lang.Object
com.atlassian.bamboo.specs.api.builders.EntityPropertiesBuilder<VcsChangeDetectionProperties>
com.atlassian.bamboo.specs.api.builders.repository.VcsChangeDetection

public class VcsChangeDetection extends EntityPropertiesBuilder<VcsChangeDetectionProperties>
Represents change detection options that can be set when defining a VCS repository in Bamboo.

These option control features around change detection an build triggering, such as: filtering of changes, commit isolation, etc.

  • Constructor Details

    • VcsChangeDetection

      public VcsChangeDetection()
  • Method Details

    • quietPeriodEnabled

      public VcsChangeDetection quietPeriodEnabled(boolean quietPeriodEnabled)
      Enables/disables quiet period feature on the repository.

      Quiet period allows you to delay building after a single commit is detected, aggregating multiple commits per build. Feature is disabled by default.

    • quietPeriod

      public VcsChangeDetection quietPeriod(Duration quietPeriod)
      Defines quiet period duration, that is time Bamboo should wait after a new change, before initiating a build.
    • quietPeriodInSeconds

      public VcsChangeDetection quietPeriodInSeconds(int quietPeriodInSeconds)
      Defines quiet period duration in seconds, that is time Bamboo should wait after a new change, before initiating a build.
    • quietPeriodMaxRetries

      public VcsChangeDetection quietPeriodMaxRetries(int maxRetries)
      Defines maximum retries count for quiet period, that is how many time Bamboo should check for new changes before initiating a build regardless of the outcome.
    • commitIsolationEnabled

      public VcsChangeDetection commitIsolationEnabled(boolean commitIsolationEnabled)
      Enables/disables commit isolation. Commit isolation forces Bamboo to create one build result for each commit. Feature is supported by Subversion repository only and disabled by default.
    • configuration

      public VcsChangeDetection configuration(@Nullable @Nullable Map<String,Object> configuration)
      Sets plugin specific custom configuration.

      This fields exists for the sole purpose of future extensibility. As of Bamboo version 6.0, no plugins using this field exist.

    • changesetFilterPatternRegex

      public VcsChangeDetection changesetFilterPatternRegex(@Nullable @Nullable String changesetFilterPatternRegex) throws PropertiesValidationException
      Excludes certain changes from being picked up by Bamboo.
      Parameters:
      changesetFilterPatternRegex - a regular expression to match the commit messages to be excluded.
      Throws:
      PropertiesValidationException
    • filterFilePatternOption

      public VcsChangeDetection filterFilePatternOption(@Nullable @Nullable VcsChangeDetection.FileFilteringOption filterFilePatternOption) throws PropertiesValidationException
      Selects method of filtering commits by affected files.

      Possible values:

      NONE
      filtering off
      INCLUDE_ONLY
      include only commits that affect files with names that match regexp
      EXCLUDE_ALL
      ignore commits that affect files with names that match regexp
      By default, filtering is off.
      Throws:
      PropertiesValidationException
    • filterFilePatternRegex

      public VcsChangeDetection filterFilePatternRegex(@Nullable @Nullable String filterFilePatternRegex) throws PropertiesValidationException
      Sets regular expression to be used when filtering commits by affected files.
      Parameters:
      filterFilePatternRegex - a regular expression to match the file to be included / excluded
      Throws:
      PropertiesValidationException
    • build

      Specified by:
      build in class EntityPropertiesBuilder<VcsChangeDetectionProperties>
      Throws:
      PropertiesValidationException