You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@uima.apache.org by bu...@apache.org on 2015/06/29 18:58:34 UTC
svn commit: r1688264 - in
/uima/sandbox/uima-ducc/trunk/uima-ducc-cli/src/main/java/org/apache/uima/ducc/cli:
CliBase.java DuccUiUtilities.java aio/AllInOneLauncher.java
Author: burn
Date: Mon Jun 29 16:58:33 2015
New Revision: 1688264
URL: http://svn.apache.org/r1688264
Log:
UIMA-4490 Correct LD_LIBRARY_PATH for all-in-one local & log args ala ducc_ling
Modified:
uima/sandbox/uima-ducc/trunk/uima-ducc-cli/src/main/java/org/apache/uima/ducc/cli/CliBase.java
uima/sandbox/uima-ducc/trunk/uima-ducc-cli/src/main/java/org/apache/uima/ducc/cli/DuccUiUtilities.java
uima/sandbox/uima-ducc/trunk/uima-ducc-cli/src/main/java/org/apache/uima/ducc/cli/aio/AllInOneLauncher.java
Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-cli/src/main/java/org/apache/uima/ducc/cli/CliBase.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-cli/src/main/java/org/apache/uima/ducc/cli/CliBase.java?rev=1688264&r1=1688263&r2=1688264&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-cli/src/main/java/org/apache/uima/ducc/cli/CliBase.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-cli/src/main/java/org/apache/uima/ducc/cli/CliBase.java Mon Jun 29 16:58:33 2015
@@ -412,7 +412,8 @@ public abstract class CliBase
// renaming LD_LIBRARY_PATH & propagating some user values
if (uiopt == UiOption.Environment) {
String environment = cli_props.getProperty(uiopt.pname());
- environment = DuccUiUtilities.fixupEnvironment(environment);
+ String allInOne = cli_props.getProperty(UiOption.AllInOne.pname());
+ environment = DuccUiUtilities.fixupEnvironment(environment, allInOne);
cli_props.setProperty(uiopt.pname(), environment);
}
}
Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-cli/src/main/java/org/apache/uima/ducc/cli/DuccUiUtilities.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-cli/src/main/java/org/apache/uima/ducc/cli/DuccUiUtilities.java?rev=1688264&r1=1688263&r2=1688264&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-cli/src/main/java/org/apache/uima/ducc/cli/DuccUiUtilities.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-cli/src/main/java/org/apache/uima/ducc/cli/DuccUiUtilities.java Mon Jun 29 16:58:33 2015
@@ -55,18 +55,24 @@ public class DuccUiUtilities {
return user;
}
- public static String fixupEnvironment(String environment) {
- // Rename the user's LD_LIBRARY_PATH as Secure Linuxs will not pass that on
- String source = "LD_LIBRARY_PATH";
- String target = "DUCC_" + source;
+ public static String fixupEnvironment(String environment, String allInOne) {
+
ArrayList<String> envList = QuotedOptions.tokenizeList(environment, false); // Don't strip quotes
Map<String, String> envMap = QuotedOptions.parseAssignments(envList, +1); // Expand any FOO or FOO* entries
- if (envMap.containsKey(source)) {
- if (!envMap.containsKey(target)) {
- envMap.put(target, envMap.get(source));
- envMap.remove(source);
+
+ // Rename the user's LD_LIBRARY_PATH as Secure Linuxs will not pass that on
+ // But not for --all-in-one local
+ if (allInOne == null || !allInOne.equalsIgnoreCase("local")) {
+ String source = "LD_LIBRARY_PATH";
+ String target = "DUCC_" + source;
+ if (envMap.containsKey(source)) {
+ if (!envMap.containsKey(target)) {
+ envMap.put(target, envMap.get(source));
+ envMap.remove(source);
+ }
}
}
+
// Augment user-specified environment with a few useful ones (only if not already set), e.g. USER HOME
String envNames = DuccPropertiesResolver.get(DuccPropertiesResolver.ducc_environment_propagated);
if (envNames != null) {
Modified: uima/sandbox/uima-ducc/trunk/uima-ducc-cli/src/main/java/org/apache/uima/ducc/cli/aio/AllInOneLauncher.java
URL: http://svn.apache.org/viewvc/uima/sandbox/uima-ducc/trunk/uima-ducc-cli/src/main/java/org/apache/uima/ducc/cli/aio/AllInOneLauncher.java?rev=1688264&r1=1688263&r2=1688264&view=diff
==============================================================================
--- uima/sandbox/uima-ducc/trunk/uima-ducc-cli/src/main/java/org/apache/uima/ducc/cli/aio/AllInOneLauncher.java (original)
+++ uima/sandbox/uima-ducc/trunk/uima-ducc-cli/src/main/java/org/apache/uima/ducc/cli/aio/AllInOneLauncher.java Mon Jun 29 16:58:33 2015
@@ -27,6 +27,7 @@ import java.util.ArrayList;
import java.util.Enumeration;
import java.util.HashMap;
import java.util.Map;
+import java.util.Map.Entry;
import java.util.Properties;
import org.apache.uima.ducc.cli.CliBase;
@@ -719,18 +720,26 @@ public class AllInOneLauncher extends Cl
}
// Put environment settings in the process's environment
+ // Don't inherit any settings
+ Map<String,String> env = pb.environment();
+ env.clear();
if(environment != null) {
ArrayList<String> envList = QuotedOptions.tokenizeList(environment, true); // Strip quotes
Map<String,String> envMap = QuotedOptions.parseAssignments(envList, +1); // Expand any FOO & FOO* entries
- Map<String,String> env = pb.environment();
- env.clear();
env.putAll(envMap);
}
- // Dump command line
- for (String arg : commandArray) {
- mh.frameworkDebug(cid, mid, arg);
+ // Log the environment and arguments in the same way ducc_ling does
+ System.out.println("Changed to working directory " + working_directory);
+ int n = 0;
+ for (Entry<String, String> entry : env.entrySet()) {
+ System.out.println("Environ[" + (n++) + "] = " + entry.getKey() + "=" + entry.getValue());
+ }
+ System.out.println("Command to exec: " + command[0]);
+ for (int i = 1; i < command.length; ++i) {
+ System.out.println(" arg[" + i + "]: " + command[i]);
}
+ System.out.println("Command launching...");
// Run!
pb.redirectErrorStream(true);