HADOOP-14985. Remove subversion related code from VersionInfoMojo.java. Contributed by Ajay Kumar.

This commit is contained in:
Akira Ajisaka 2017-12-05 14:30:46 +09:00
parent e00c7f78c1
commit 9f1bdafedb
No known key found for this signature in database
GPG Key ID: C1EDBB9CA400FD50
1 changed files with 12 additions and 73 deletions

View File

@ -72,10 +72,7 @@ public class VersionInfoMojo extends AbstractMojo {
@Parameter(defaultValue="git")
private String gitCommand;
@Parameter(defaultValue="svn")
private String svnCommand;
private enum SCM {NONE, SVN, GIT}
private enum SCM {NONE, GIT}
@Override
public void execute() throws MojoExecutionException {
@ -104,7 +101,7 @@ public class VersionInfoMojo extends AbstractMojo {
private List<String> scmOut;
/**
* Determines which SCM is in use (Subversion, git, or none) and captures
* Determines which SCM is in use (git or none) and captures
* output of the SCM command for later parsing.
*
* @return SCM in use for this build
@ -114,27 +111,24 @@ public class VersionInfoMojo extends AbstractMojo {
Exec exec = new Exec(this);
SCM scm = SCM.NONE;
scmOut = new ArrayList<String>();
int ret = exec.run(Arrays.asList(svnCommand, "info"), scmOut);
int ret;
ret = exec.run(Arrays.asList(gitCommand, "branch"), scmOut);
if (ret == 0) {
scm = SCM.SVN;
} else {
ret = exec.run(Arrays.asList(gitCommand, "branch"), scmOut);
if (ret == 0) {
ret = exec.run(Arrays.asList(gitCommand, "remote", "-v"), scmOut);
ret = exec.run(Arrays.asList(gitCommand, "remote", "-v"), scmOut);
if (ret != 0) {
scm = SCM.NONE;
scmOut = null;
} else {
ret = exec.run(Arrays.asList(gitCommand, "log", "-n", "1"), scmOut);
if (ret != 0) {
scm = SCM.NONE;
scmOut = null;
} else {
ret = exec.run(Arrays.asList(gitCommand, "log", "-n", "1"), scmOut);
if (ret != 0) {
scm = SCM.NONE;
scmOut = null;
} else {
scm = SCM.GIT;
}
scm = SCM.GIT;
}
}
}
if (scmOut != null) {
getLog().debug(scmOut.toString());
}
@ -142,35 +136,6 @@ public class VersionInfoMojo extends AbstractMojo {
return scm;
}
/**
* Return URI and branch of Subversion repository.
*
* @param str String Subversion info output containing URI and branch
* @return String[] containing URI and branch
*/
private String[] getSvnUriInfo(String str) {
String[] res = new String[]{"Unknown", "Unknown"};
String path = str;
int index = path.indexOf("trunk");
if (index > -1) {
res[0] = path.substring(0, index - 1);
res[1] = "trunk";
} else {
index = path.indexOf("branches");
if (index > -1) {
res[0] = path.substring(0, index - 1);
int branchIndex = index + "branches".length() + 1;
index = path.indexOf('/', branchIndex);
if (index > -1) {
res[1] = path.substring(branchIndex, index);
} else {
res[1] = path.substring(branchIndex);
}
}
}
return res;
}
/**
* Parses SCM output and returns URI of SCM.
*
@ -180,15 +145,6 @@ public class VersionInfoMojo extends AbstractMojo {
private String getSCMUri(SCM scm) {
String uri = "Unknown";
switch (scm) {
case SVN:
for (String s : scmOut) {
if (s.startsWith("URL:")) {
uri = s.substring(4).trim();
uri = getSvnUriInfo(uri)[0];
break;
}
}
break;
case GIT:
for (String s : scmOut) {
if (s.startsWith("origin") && s.endsWith("(fetch)")) {
@ -211,14 +167,6 @@ public class VersionInfoMojo extends AbstractMojo {
private String getSCMCommit(SCM scm) {
String commit = "Unknown";
switch (scm) {
case SVN:
for (String s : scmOut) {
if (s.startsWith("Revision:")) {
commit = s.substring("Revision:".length());
break;
}
}
break;
case GIT:
for (String s : scmOut) {
if (s.startsWith("commit")) {
@ -240,15 +188,6 @@ public class VersionInfoMojo extends AbstractMojo {
private String getSCMBranch(SCM scm) {
String branch = "Unknown";
switch (scm) {
case SVN:
for (String s : scmOut) {
if (s.startsWith("URL:")) {
branch = s.substring(4).trim();
branch = getSvnUriInfo(branch)[1];
break;
}
}
break;
case GIT:
for (String s : scmOut) {
if (s.startsWith("*")) {