private static boolean hasLastBuild(BuildData data) { return data != null && data.lastBuild != null && data.lastBuild.getRevision() != null; } }
public static Run<?, ?> getBuildByBranch(Job<?, ?> project, String branchName) { for (Run<?, ?> build : project.getBuilds()) { BuildData data = build.getAction(BuildData.class); MergeRecord merge = build.getAction(MergeRecord.class); if (hasLastBuild(data) && isNoMergeBuild(data, merge)) { for (Branch branch : data.lastBuild.getRevision().getBranches()) { if (branch.getName().endsWith("/" + branchName)) { return build; } } } } return null; }
private String getLastSuccessfulBuiltCommitOfBranch(Run<?, ?> build, Branch branch) { String prevCommit = null; if (build.getPreviousSuccessfulBuild() != null) { final Build lastSuccessfulBuildOfBranch = fixNull(getBuildData(build.getPreviousSuccessfulBuild())).getLastBuildOfBranch(branch.getName()); if (lastSuccessfulBuildOfBranch != null) { Revision previousRev = lastSuccessfulBuildOfBranch.getRevision(); if (previousRev != null) { prevCommit = previousRev.getSha1String(); } } } return prevCommit; }
private String getLastBuiltCommitOfBranch(Run<?, ?> build, Branch branch) { String prevCommit = null; if (build.getPreviousBuiltBuild() != null) { final Build lastBuildOfBranch = fixNull(getBuildData(build.getPreviousBuiltBuild())).getLastBuildOfBranch(branch.getName()); if (lastBuildOfBranch != null) { Revision previousRev = lastBuildOfBranch.getRevision(); if (previousRev != null) { prevCommit = previousRev.getSha1String(); } } } return prevCommit; }
String gitRepo = getParamExpandedRepos(lastBuild).get(0).getURIs().get(0).toString(); String headRevision = git.getHeadRev(gitRepo, getBranches().get(0).getName()); String lastBuildRevision = buildData.lastBuild.getRevision().getSha1String();
git.setupSubmoduleUrls(revToBuild.lastBuild.getRevision(), listener); git.submoduleUpdate() .recursive(recursiveSubmodules)