public class BitbucketServerBambooSpecsHandler extends AbstractBitbucketServerExecutor implements BambooSpecsHandler
vcsRepositoryManager
BAMBOO_SPECS_DIRECTORY, BAMBOO_YAML_FILES
Constructor and Description |
---|
BitbucketServerBambooSpecsHandler() |
Modifier and Type | Method and Description |
---|---|
Optional<String> |
detectSpecRevision(VcsRepositoryData repositoryData,
Object source)
Attempts to obtain latest revision from the repository which may have changed Bamboo Specs.
|
List<CommitContext> |
findCommitsToSpecs(VcsRepositoryData repositoryData,
String rev1,
String rev2)
Extracts a list of commits related to Bamboo Specs, which occurred between revisions
rev1 and
rev2 . |
boolean |
isNewer(VcsRepositoryData repositoryData,
String rev1,
String rev2)
Returns true if
rev2 is a newer revision in the repository than rev1 and therefore the specs should be run. |
boolean |
isWebhookRequired() |
boolean |
supportsDivergentBranches() |
bitbucketServerToGitData, bitbucketServerToReadOnlyGitData, getGitModuleDescriptor, stashServerRemoteEventsAreWorking
@NotNull public Optional<String> detectSpecRevision(@NotNull VcsRepositoryData repositoryData, @NotNull Object source) throws RepositoryException
BambooSpecsHandler
detectSpecRevision
in interface BambooSpecsHandler
repositoryData
- repositorysource
- entry point to begin scanning (for example: branch name), actual type may depend on
repository typeBambooSpecsHandler.BAMBOO_SPECS_DIRECTORY
doesn't exist.RepositoryException
public boolean isNewer(@NotNull VcsRepositoryData repositoryData, @NotNull String rev1, @NotNull String rev2) throws RepositoryException
BambooSpecsHandler
rev2
is a newer revision in the repository than rev1
and therefore the specs should be run. In typical cases, returns
true if it is possible to reach rev1
by following parent relationship starting from rev2
.
Exceptional cases involve suspected force push or 'clear' merges that don't result in changes in specs being connected to the merge commit. In those cases
it assumed that rev2 is newer even though no ancestry path exists between rev1 and rev2.isNewer
in interface BambooSpecsHandler
RepositoryException
@NotNull public List<CommitContext> findCommitsToSpecs(@NotNull VcsRepositoryData repositoryData, @NotNull String rev1, @NotNull String rev2) throws RepositoryException
BambooSpecsHandler
rev1
and
rev2
.findCommitsToSpecs
in interface BambooSpecsHandler
RepositoryException
public boolean isWebhookRequired()
isWebhookRequired
in interface BambooSpecsHandler
public boolean supportsDivergentBranches()
supportsDivergentBranches
in interface BambooSpecsHandler
Copyright © 2021 Atlassian Software Systems Pty Ltd. All rights reserved.