Package com.atlassian.bamboo.repository
Interface BranchMergingAwareRepository
-
- All Superinterfaces:
BambooPluginModule,BranchAwareRepository,BuildConfigurationAwarePlugin,ConfigurablePlugin,ConvertibleFromConfig,CustomSourceDirectoryAwareRepository,DescriptionProvider,InitablePluginModule,NameProvider,RenderableBuildConfiguration,Repository,RepositoryV2,Serializable
- All Known Subinterfaces:
BitbucketDelegatedRepository,StashRepository
- All Known Implementing Classes:
BitbucketRepository,GitHubRepository,GitRepository,StashRepositoryImpl
public interface BranchMergingAwareRepository extends BranchAwareRepository, CustomSourceDirectoryAwareRepository
-
-
Field Summary
-
Fields inherited from interface com.atlassian.bamboo.repository.Repository
SELECTED_REPOSITORY, UNKNOWN_HOST
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description @Nullable StringgetBranchIntegrationEditHtml()Gives repository a chance to display a HTML on the UI when user is enabling "Branch Integration" featurebooleanisMergingSupported()booleanmergeWorkspaceWith(@NotNull BuildContext buildContext, @NotNull File checkoutDirectory, @NotNull String targetRevision)Merges a workspace located in checkout directory with the target revision.@NotNull StringretrieveSourceCode(@NotNull BuildContext buildContext, @Nullable String vcsRevisionKey, @NotNull File sourceDirectory, int depth)Checks out the latest source code from an appropriate repository to specified directory-
Methods inherited from interface com.atlassian.bamboo.repository.BranchAwareRepository
getVcsBranch, setVcsBranch
-
Methods inherited from interface com.atlassian.bamboo.v2.build.BuildConfigurationAwarePlugin
addDefaultValues, isConfigurationMissing, prepareConfigObject, validate
-
Methods inherited from interface com.atlassian.bamboo.v2.build.ConfigurablePlugin
customizeBuildRequirements, removeBuildRequirements
-
Methods inherited from interface com.atlassian.bamboo.fieldvalue.ConvertibleFromConfig
populateFromConfig, toConfiguration
-
Methods inherited from interface com.atlassian.bamboo.v2.build.repository.CustomSourceDirectoryAwareRepository
retrieveSourceCode
-
Methods inherited from interface com.atlassian.bamboo.utils.DescriptionProvider
getDescription
-
Methods inherited from interface com.atlassian.bamboo.plugin.InitablePluginModule
init
-
Methods inherited from interface com.atlassian.bamboo.v2.build.RenderableBuildConfiguration
getEditHtml, getViewHtml
-
Methods inherited from interface com.atlassian.bamboo.repository.Repository
checkConnection, getHost, getKey, getLocationIdentifier, getMinimalEditHtml, getName, getShortKey
-
Methods inherited from interface com.atlassian.bamboo.v2.build.repository.RepositoryV2
collectChangesSinceLastBuild, getSourceCodeDirectory, isRepositoryDifferent
-
-
-
-
Method Detail
-
mergeWorkspaceWith
boolean mergeWorkspaceWith(@NotNull @NotNull BuildContext buildContext, @NotNull @NotNull File checkoutDirectory, @NotNull @NotNull String targetRevision) throws RepositoryExceptionMerges a workspace located in checkout directory with the target revision.- Parameters:
buildContext- the build context of build doing the mergecheckoutDirectory- the workspace to use for mergetargetRevision- the revision to merge with- Returns:
- true if the result of the merge would result in a non-empty commit
- Throws:
RepositoryException
-
isMergingSupported
boolean isMergingSupported()
-
retrieveSourceCode
@NotNull @NotNull String retrieveSourceCode(@NotNull @NotNull BuildContext buildContext, @Nullable @Nullable String vcsRevisionKey, @NotNull @NotNull File sourceDirectory, int depth) throws RepositoryException
Checks out the latest source code from an appropriate repository to specified directory- Parameters:
buildContext-vcsRevisionKey- - may be null if you want latest codesourceDirectory- - directory to checkout todepth- - how many historical revisions we'd like to check out (-1 means all revisions)- Returns:
- vcsRevisionKey - the revision
- Throws:
RepositoryException
-
getBranchIntegrationEditHtml
@Nullable @Nullable String getBranchIntegrationEditHtml()
Gives repository a chance to display a HTML on the UI when user is enabling "Branch Integration" feature- Returns:
- HTML snippet to be displayed on UI
-
-