epugh commented on code in PR #5306:
URL: https://github.com/apache/solr/pull/5306#discussion_r4492376674
##########
solr/core/src/java/org/apache/solr/cli/RunExampleTool.java:
##########
@@ -588,20 +608,494 @@ void initDirs(
String solrHomeProp = EnvUtils.getProperty("solr.home");
if (solrHomeProp != null && !solrHomeProp.isEmpty()) {
solrHomeDir = Path.of(solrHomeProp);
- } else if ("cloud".equals(exampleType)) {
- solrHomeDir = exampleDir.resolve("cloud");
+ } else if ("cloud".equals(exampleType) || "secure".equals(exampleType)) {
+ solrHomeDir = exampleDir.resolve(exampleType);
if (!Files.isDirectory(solrHomeDir))
Files.createDirectory(solrHomeDir);
} else {
solrHomeDir = serverDir.resolve("solr");
}
}
+ if ("secure".equals(exampleType)) Files.createDirectories(solrHomeDir);
if (!Files.isDirectory(solrHomeDir))
throw new IllegalArgumentException(
"Value of --solr-home option is invalid! "
+ solrHomeDir.toAbsolutePath()
+ " is not a directory!");
}
+ /** Runs the manual security tutorial using the distribution's existing
commands. */
+ void runSecureExample(CloudExampleParams params, boolean userManaged) throws
Exception {
+ StartSolrParams start = params.start();
+ if (userManaged || params.zkHost() != null) {
+ throw new IllegalArgumentException(
+ "The secure example requires its own embedded ZooKeeper in SolrCloud
mode.");
+ }
+ if (start.host() != null
+ || start.jvmOpts() != null
+ || !start.extraArgs().isEmpty()
+ || params.scriptInputs() != null
+ || System.getenv("SOLR_DATA_HOME") != null) {
+ throw new IllegalArgumentException(
+ "Unsupported secure example option. Use --solr-home, -p,
--no-prompt, -m, or --force.");
+ }
+ int port = params.basePort();
+ if (port < 1024 || port > 64535) {
+ throw new IllegalArgumentException("Choose a port between 1024 and
64535.");
+ }
+ Path home = solrHomeDir.toAbsolutePath().normalize();
+ if (home.toString().chars().anyMatch(Character::isWhitespace)) {
Review Comment:
is this check here the right place for this? if white space is bad, why
check here versus somewhere lower?
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]