diff --git testutils/ptest2/src/main/java/org/apache/hive/ptest/execution/YetusPhase.java testutils/ptest2/src/main/java/org/apache/hive/ptest/execution/YetusPhase.java index 021646b4890da3e7564d4bbe11b688d21e71a622..26545df4fd7795e0043be61302743c1ba6883eb1 100644 --- testutils/ptest2/src/main/java/org/apache/hive/ptest/execution/YetusPhase.java +++ testutils/ptest2/src/main/java/org/apache/hive/ptest/execution/YetusPhase.java @@ -46,6 +46,7 @@ private final File mLogFile; private final File mOutputDir; private final File mScratchDir; + private final String buildTag; private final String buildUrl; private final TestConfiguration conf; @@ -61,9 +62,17 @@ public YetusPhase(TestConfiguration configuration, List hostExecut this.mOutputDir = new File(logDir, YETUS_OUTPUT_FOLDER); this.mScratchDir = scratchDir; this.conf = configuration; - this.buildUrl = conf.getLogsURL() + "/" + templateDefaults.get("buildTag") + "/"; + this.buildTag = templateDefaults.get("buildTag"); + this.buildUrl = conf.getLogsURL() + "/" + this.buildTag + "/"; + } + /** + * This method will start a new thread to handle the Yetus test patch script execution. + * It creates a separate directory, instantiates the Yetus velocity template, runs it, and + * cleans it up after. + * @throws Exception + */ @Override public void execute() throws Exception { @@ -74,8 +83,9 @@ public void run() { if (!checkDependencies()) { return; } - - File yetusExecScript = new File(mScratchDir, YETUS_EXEC_SCRIPT); + File yetusScriptDir = new File(mScratchDir, buildTag); + yetusScriptDir.mkdir(); + File yetusExecScript = new File(yetusScriptDir, YETUS_EXEC_SCRIPT); Map templateVars = new HashMap<>(); templateVars.putAll(getTemplateDefaults()); templateVars.put("workingDir", mWorkingDir.getAbsolutePath()); @@ -104,6 +114,7 @@ public void run() { logger.error("Error processing Yetus check", e); } finally { logger.debug("Deleting " + yetusExecScript + ": " + yetusExecScript.delete()); + logger.debug("Deleting " + yetusScriptDir + ": " + yetusScriptDir.delete()); } } }); diff --git testutils/ptest2/src/main/resources/yetus-exec.vm testutils/ptest2/src/main/resources/yetus-exec.vm index 9dea59e5660f88c420eeaaffc77d5702d646131f..847b9c6b5cc4b93b89594cf7bd3268b7b1a27bcd 100644 --- testutils/ptest2/src/main/resources/yetus-exec.vm +++ testutils/ptest2/src/main/resources/yetus-exec.vm @@ -23,6 +23,6 @@ export JIRA_ISSUE=${jiraName} export JAVA_HOME=${javaHome} ./dev-support/test-patch.sh ${patchFile} --jenkins --jira-base-url=${jiraUrl} --jira-user=${jiraUser} \ --jira-password=${jiraPass} --patch-dir=${outputDir} --build-url=${buildUrl} --build-url-console=${buildUrlLog} \ - --build-url-artifacts=${buildUrlOutputDir} 2>&1 | tee ${logFile} + --build-url-artifacts=${buildUrlOutputDir} 2>&1 > ${logFile} popd