Skip to content

Commit

Permalink
HPCC4J-642 DFSClient FileUtilityTest failing due to credential prompting
Browse files Browse the repository at this point in the history
- Added a non-interactive flag to FileUtility
- Updated FileUtilityTest to use the non-interactive flag

Signed-off-by: James McMullan [email protected]
  • Loading branch information
jpmcmu committed Dec 16, 2024
1 parent 96d8009 commit 70fba9c
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 7 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -335,17 +335,19 @@ private static String[] getCredentials(CommandLine cmd)
{
Console console = System.console();

boolean nonInteractive = cmd.hasOption("non_interactive");

String user = cmd.getOptionValue("user");
boolean userIsEmpty = user == null || user.isEmpty();
if (userIsEmpty)
if (userIsEmpty && !nonInteractive)
{
user = new String(console.readLine("Enter username: "));
userIsEmpty = user == null || user.isEmpty();
}

String pass = cmd.getOptionValue("pass");
boolean passIsEmpty = pass == null || pass.isEmpty();
if (!userIsEmpty && passIsEmpty)
if (!userIsEmpty && passIsEmpty & !nonInteractive)
{
pass = new String(console.readPassword("Enter password for " + user + ": "));
}
Expand Down Expand Up @@ -642,6 +644,7 @@ private static Options getReadOptions()
options.addOption("socket_timeout_seconds", true, "Sets the socket operation timeout in seconds.");
options.addOption("connection_startup_limit", true, "Specifies the maximum number of connections to startup concurrently."
+ " useful in cases where starting up connections too quickly can overwhelm intermediate processes.");
options.addOption("non_interactive", false, "Disables prompting for credentials if they are not provided.");

options.addOption(Option.builder("read")
.argName("files")
Expand Down Expand Up @@ -672,6 +675,7 @@ private static Options getReadTestOptions()
options.addOption("socket_timeout_seconds", true, "Sets the socket operation timeout in seconds.");
options.addOption("connection_startup_limit", true, "Specifies the maximum number of connections to startup concurrently."
+ " useful in cases where starting up connections too quickly can overwhelm intermediate processes.");
options.addOption("non_interactive", false, "Disables prompting for credentials if they are not provided.");

options.addOption(Option.builder("file_parts")
.argName("_file_parts")
Expand All @@ -697,6 +701,7 @@ private static Options getCopyOptions()
options.addOption("socket_timeout_seconds", true, "Sets the socket operation timeout in seconds.");
options.addOption("connection_startup_limit", true, "Specifies the maximum number of connections to startup concurrently."
+ " useful in cases where starting up connections too quickly can overwhelm intermediate processes.");
options.addOption("non_interactive", false, "Disables prompting for credentials if they are not provided.");

options.addOption(Option.builder("copy")
.argName("files")
Expand All @@ -721,6 +726,7 @@ private static Options getWriteOptions()
options.addOption("socket_timeout_seconds", true, "Sets the socket operation timeout in seconds.");
options.addOption("connection_startup_limit", true, "Specifies the maximum number of connections to startup concurrently."
+ " useful in cases where starting up connections too quickly can overwhelm intermediate processes.");
options.addOption("non_interactive", false, "Disables prompting for credentials if they are not provided.");

options.addOption(Option.builder("write")
.argName("files")
Expand Down Expand Up @@ -2280,4 +2286,4 @@ public static void main(String[] args)

return;
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ public void thorFileTests()
{
{
String readArgs[] = {"-read", "benchmark::integer::20kb", "-url", this.connString,
"-format", "thor", "-user", this.hpccUser, "-pass", this.hpccPass };
"-format", "thor", "-user", this.hpccUser, "-pass", this.hpccPass, "-non_interactive" };

JSONArray results = FileUtility.run(readArgs);
JSONObject result = results.optJSONObject(0);
Expand All @@ -58,7 +58,7 @@ public void thorFileTests()

{
String readArgs[] = {"-read_test", "benchmark::integer::20kb", "-url", this.connString,
"-user", this.hpccUser, "-pass", this.hpccPass, "-file_parts", "1" };
"-user", this.hpccUser, "-pass", this.hpccPass, "-file_parts", "1", "-non_interactive" };

JSONArray results = FileUtility.run(readArgs);
JSONObject result = results.optJSONObject(0);
Expand All @@ -72,7 +72,7 @@ public void thorFileTests()
String copyArgs[] = {"-copy", "benchmark::integer::20kb benchmark::integer::20kb-copy",
"-url", this.connString, "-dest_url", this.connString,
"-dest_cluster", this.thorClusterFileGroup,
"-user", this.hpccUser, "-pass", this.hpccPass };
"-user", this.hpccUser, "-pass", this.hpccPass, "-non_interactive" };

JSONArray results = FileUtility.run(copyArgs);
JSONObject result = results.optJSONObject(0);
Expand All @@ -87,7 +87,7 @@ public void thorFileTests()
String writeArgs[] = {"-write", localDir + "benchmark__integer__20kb* benchmark::integer::20kb_write",
"-url", this.connString, "-dest_url", this.connString,
"-dest_cluster", this.thorClusterFileGroup,
"-user", this.hpccUser, "-pass", this.hpccPass };
"-user", this.hpccUser, "-pass", this.hpccPass, "-non_interactive" };

JSONArray results = FileUtility.run(writeArgs);
JSONObject result = results.optJSONObject(0);
Expand Down

0 comments on commit 70fba9c

Please sign in to comment.