This is an automated email from the ASF dual-hosted git repository.
yiguolei pushed a commit to branch branch-4.0
in repository https://gitbox.apache.org/repos/asf/doris.git
The following commit(s) were added to refs/heads/branch-4.0 by this push:
new 570272b29a4 branch-4.0: [regression](case) fix
test_install_plugin_command.groovy #60107 (#60151)
570272b29a4 is described below
commit 570272b29a4d3e3dc01f69d350ffb79cf7721a24
Author: github-actions[bot]
<41898282+github-actions[bot]@users.noreply.github.com>
AuthorDate: Tue Feb 3 10:54:58 2026 +0800
branch-4.0: [regression](case) fix test_install_plugin_command.groovy
#60107 (#60151)
Cherry-picked from #60107
Co-authored-by: shuke <[email protected]>
---
.../nereids_p0/test_install_plugin_command.groovy | 27 +++++++++++++++++++---
1 file changed, 24 insertions(+), 3 deletions(-)
diff --git
a/regression-test/suites/nereids_p0/test_install_plugin_command.groovy
b/regression-test/suites/nereids_p0/test_install_plugin_command.groovy
index 407daab01e3..45797ecd24d 100644
--- a/regression-test/suites/nereids_p0/test_install_plugin_command.groovy
+++ b/regression-test/suites/nereids_p0/test_install_plugin_command.groovy
@@ -17,18 +17,39 @@
suite("test_install_plugin_command", "nereids_p0") {
def pluginFile = new File(context.config.dataPath,
"plugin_test/auditdemo.zip").getAbsolutePath()
- def pluginSource = "\"${pluginFile}\""
def pluginName = "audit_plugin_demo"
def pluginProperties = "\"md5sum\"=\"f7280e8be71fd565a18c80d02b8c446f\""
+ // Get all FE hosts to copy plugin file
+ def feHosts = sql_return_maparray("show frontends").collect { it.Host }
+ def randomSuffix = UUID.randomUUID().toString().replaceAll("-", "")
+ def remoteTmpPath = "/tmp/auditdemo_${randomSuffix}.zip"
+
try {
- // Install the plugin
+ // Copy plugin file to all FE machines when regression-test and FE are
on different machines
+ feHosts.each { feHost ->
+ scpFiles("root", feHost, pluginFile, remoteTmpPath, false)
+ }
+
+ // Install the plugin using remote path
checkNereidsExecute """
- INSTALL PLUGIN FROM ${pluginSource}
+ INSTALL PLUGIN FROM "${remoteTmpPath}"
PROPERTIES (${pluginProperties})
"""
} finally {
+ // Clean up temporary plugin files on all FE machines
+ feHosts.each { feHost ->
+ try {
+ def rmCmd = "rm -f ${remoteTmpPath}"
+ def process = ["ssh", "-o", "StrictHostKeyChecking=no",
"root@${feHost}", rmCmd].execute()
+ process.waitForOrKill(5000) // Wait max 5 seconds
+ logger.info("Cleaned up temporary file ${remoteTmpPath} on
${feHost}")
+ } catch (Exception e) {
+ logger.warn("Failed to clean up temporary file on ${feHost}:
${e.message}")
+ }
+ }
+
checkNereidsExecute """
UNINSTALL PLUGIN ${pluginName}
"""
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]