diff --git a/src/org/openj9/envInfo/CmdExecutor.java b/src/org/openj9/envInfo/CmdExecutor.java index 68552455..52609f47 100644 --- a/src/org/openj9/envInfo/CmdExecutor.java +++ b/src/org/openj9/envInfo/CmdExecutor.java @@ -18,7 +18,6 @@ import java.io.IOException; import java.io.InputStreamReader; import java.util.Arrays; -import java.util.Map; public class CmdExecutor { private static CmdExecutor instance; @@ -37,16 +36,9 @@ public String execute(String[] commands) { String rt = null; try { ProcessBuilder builder = new ProcessBuilder(Arrays.asList(commands)); - Map env = builder.environment(); - // clear env and copy from the parent shell environment - env.clear(); - Map shellEnv = System.getenv(); - env.putAll(shellEnv); - System.out.println(String.join(" ",builder.command().toArray(new String[0]))); builder.redirectErrorStream(true); Process proc = builder.start(); BufferedReader stdOutput = new BufferedReader(new InputStreamReader(proc.getInputStream())); - StringBuilder sb = new StringBuilder(); String line = null; String newline = ""; diff --git a/src/org/openj9/envInfo/MachineInfo.java b/src/org/openj9/envInfo/MachineInfo.java index 41b8f016..0685fb2f 100644 --- a/src/org/openj9/envInfo/MachineInfo.java +++ b/src/org/openj9/envInfo/MachineInfo.java @@ -61,7 +61,7 @@ public class MachineInfo { public static final String[] ANT_VERSION_CMD = new String[] {"bash", "-c", "ant -version"}; public static final String[] MAKE_VERSION_CMD = new String[] {"bash", "-c", "make --version"}; public static final String[] PERL_VERSION_CMD = new String[] {"bash", "-c", "perl --version"}; - public static final String[] CURL_VERSION_CMD = new String[] {"bash", "-c", "curl --version | head -n 1 | awk '{ print $2 }'"}; + public static final String[] CURL_VERSION_CMD = new String[] {"bash", "-c", "curl --version"}; // Console @@ -142,12 +142,11 @@ private void makeSameLength(ArrayList list, int requiredLength){ } } - private boolean validateVersion(Info info, String requriedVersionStr) { + private boolean validateVersion(String versionName, String actualVersionStr, String requriedVersionStr) { boolean isValid = true; - String actualVersionStr = parseInfo(info.output); - ArrayList accVer = versionStr2ArrList(actualVersionStr); - ArrayList reqVer = versionStr2ArrList(requriedVersionStr); try { + ArrayList accVer = versionStr2ArrList(actualVersionStr); + ArrayList reqVer = versionStr2ArrList(requriedVersionStr); int accVerLen = accVer.size(); int reqVerLen = reqVer.size(); if (accVerLen > reqVerLen) { @@ -163,11 +162,11 @@ private boolean validateVersion(Info info, String requriedVersionStr) { } } if (!isValid) { - System.out.println("Warning: required " + info.name + ": " + requriedVersionStr + ". Output:\n" + info.output); + System.out.println("Error: required " + versionName + ": " + requriedVersionStr + ". Installed version: " + actualVersionStr); } } catch (NumberFormatException e){ - System.out.println("Warning: "+ info.name + " information cannot be extracted."); - System.out.println(info.name + " output: " + actualVersionStr); + System.out.println("Warning: "+ versionName + " information cannot be extracted."); + System.out.println(versionName + " output: " + actualVersionStr); } return isValid; } @@ -176,15 +175,13 @@ private void validateInfo() { boolean valid = true; for (Info info : infoMap.values()) { if (info.req != null) { - valid &= validateVersion(info, info.req); + String version = parseInfo(info.output); + valid &= validateVersion(info.name, version, info.req); } } - - // Do not fail if the check not pass for the build environment. - // We need to add an option to toggle the failure or warning mode. - // if (!valid) { - // System.exit(1); - //} + if (!valid) { + System.exit(1); + } } private void getSysInfo() {