Quantcast
Channel: How to create a BitBucket hook that reject pushes with bad file name? - Stack Overflow
Viewing all articles
Browse latest Browse all 2

Answer by Tuan for How to create a BitBucket hook that reject pushes with bad file name?

$
0
0
@Component
public class AltresPreRepositoryHook implements PreRepositoryHook<RepositoryHookRequest> {

private final CommitService commitService;

@Autowired
public AltresPreRepositoryHook(@ComponentImport CommitService commitService) {
    this.commitService = commitService;
}




private static class AltresPreCommitCallback implements PreRepositoryHookCommitCallback {

private final RepositoryHookRequest request;
private final CommitService commitService;

private RepositoryHookResult result = RepositoryHookResult.accepted();

public AltresPreCommitCallback(RepositoryHookRequest request, CommitService commitService) {
    this.request = request;
    this.commitService = commitService;
}

@Nonnull
@Override
public RepositoryHookResult getResult() {
    return result;
}

@Override
public boolean onCommitAdded(@Nonnull CommitAddedDetails commitDetails) {

    Commit commit = commitDetails.getCommit();
    ChangesRequest.Builder builder = new ChangesRequest.Builder(commit.getRepository(), commit.getId());
    ChangesRequest changesRequest = builder.build();

    final ChangedPathsCollector changedPathsCollector = new ChangedPathsCollector();

    commitService.streamChanges(changesRequest, changedPathsCollector);

    Collection<String> changedPaths = changedPathsCollector.getChangedPaths();

Viewing all articles
Browse latest Browse all 2

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>