This is an automated email from the ASF dual-hosted git repository.

aloyszhang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/inlong.git

The following commit(s) were added to refs/heads/master by this push:
     new d62932dfaf [INLONG-11397][Manager] Support copy modules.json when 
installer reinstall (#11398)
d62932dfaf is described below

commit d62932dfaf685bbf4a9b0582b7e647efdce78543
Author: fuweng11 <76141879+fuwen...@users.noreply.github.com>
AuthorDate: Wed Oct 23 18:32:18 2024 +0800

    [INLONG-11397][Manager] Support copy modules.json when installer reinstall 
(#11398)
---
 .../service/cluster/node/AgentClusterNodeInstallOperator.java     | 8 ++++++++
 .../org/apache/inlong/manager/service/cmd/CommandExecutor.java    | 3 +++
 .../apache/inlong/manager/service/cmd/CommandExecutorImpl.java    | 6 ++++++
 .../manager-web/src/main/resources/application-dev.properties     | 4 +++-
 4 files changed, 20 insertions(+), 1 deletion(-)

diff --git 
a/inlong-manager/manager-service/src/main/java/org/apache/inlong/manager/service/cluster/node/AgentClusterNodeInstallOperator.java
 
b/inlong-manager/manager-service/src/main/java/org/apache/inlong/manager/service/cluster/node/AgentClusterNodeInstallOperator.java
index 26dffa8bd4..9853735193 100644
--- 
a/inlong-manager/manager-service/src/main/java/org/apache/inlong/manager/service/cluster/node/AgentClusterNodeInstallOperator.java
+++ 
b/inlong-manager/manager-service/src/main/java/org/apache/inlong/manager/service/cluster/node/AgentClusterNodeInstallOperator.java
@@ -83,6 +83,8 @@ public class AgentClusterNodeInstallOperator implements 
InlongClusterNodeInstall
 
     @Value("${agent.install.path:inlong/inlong-installer/}")
     private String agentInstallPath;
+    @Value("${agent.install.temp.path:inlong/agent-installer-temp/}")
+    private String agentInstallTempPath;
     @Value("${manager.url:127.0.0.1:8083}")
     private String managerUrl;
 
@@ -132,8 +134,14 @@ public class AgentClusterNodeInstallOperator implements 
InlongClusterNodeInstall
             
clusterNodeEntityMapper.updateOperateLogById(clusterNodeRequest.getId(), 
NodeStatus.INSTALLING.getStatus(),
                     currentTime + InlongConstants.BLANK + "begin to 
reinstall");
             AgentClusterNodeRequest request = (AgentClusterNodeRequest) 
clusterNodeRequest;
+            commandExecutor.rmDir(request, agentInstallTempPath);
+            commandExecutor.mkdir(request, agentInstallTempPath);
+            commandExecutor.cpDir(request, agentInstallPath + 
"/conf/modules.json", agentInstallTempPath);
+
             commandExecutor.rmDir(request, agentInstallPath.substring(0, 
agentInstallPath.lastIndexOf(File.separator)));
             deployInstaller(request, operator);
+
+            commandExecutor.cpDir(request, agentInstallTempPath + 
"/modules.json", agentInstallPath + "/conf");
             String reStartCmd = agentInstallPath + INSTALLER_RESTART_CMD;
             commandExecutor.execRemote(request, reStartCmd);
             
clusterNodeEntityMapper.updateOperateLogById(clusterNodeRequest.getId(), 
NodeStatus.NORMAL.getStatus(),
diff --git 
a/inlong-manager/manager-service/src/main/java/org/apache/inlong/manager/service/cmd/CommandExecutor.java
 
b/inlong-manager/manager-service/src/main/java/org/apache/inlong/manager/service/cmd/CommandExecutor.java
index 6a565fb1c5..6f882ab018 100644
--- 
a/inlong-manager/manager-service/src/main/java/org/apache/inlong/manager/service/cmd/CommandExecutor.java
+++ 
b/inlong-manager/manager-service/src/main/java/org/apache/inlong/manager/service/cmd/CommandExecutor.java
@@ -42,4 +42,7 @@ public interface CommandExecutor {
 
     CommandResult rmDir(AgentClusterNodeRequest clusterNodeRequest, String 
path) throws Exception;
 
+    CommandResult cpDir(AgentClusterNodeRequest clusterNodeRequest, String 
sourcePath, String targetPath)
+            throws Exception;
+
 }
diff --git 
a/inlong-manager/manager-service/src/main/java/org/apache/inlong/manager/service/cmd/CommandExecutorImpl.java
 
b/inlong-manager/manager-service/src/main/java/org/apache/inlong/manager/service/cmd/CommandExecutorImpl.java
index 804d04e4b6..dba4169058 100644
--- 
a/inlong-manager/manager-service/src/main/java/org/apache/inlong/manager/service/cmd/CommandExecutorImpl.java
+++ 
b/inlong-manager/manager-service/src/main/java/org/apache/inlong/manager/service/cmd/CommandExecutorImpl.java
@@ -144,4 +144,10 @@ public class CommandExecutorImpl implements 
CommandExecutor {
         return execRemote(clusterNodeRequest, "rm -rf " + path);
     }
 
+    @Override
+    public CommandResult cpDir(AgentClusterNodeRequest clusterNodeRequest, 
String sourcePath, String targetPath)
+            throws Exception {
+        return execRemote(clusterNodeRequest, "cp " + sourcePath + " " + 
targetPath);
+    }
+
 }
diff --git 
a/inlong-manager/manager-web/src/main/resources/application-dev.properties 
b/inlong-manager/manager-web/src/main/resources/application-dev.properties
index 0f2392ab2f..794f201bda 100644
--- a/inlong-manager/manager-web/src/main/resources/application-dev.properties
+++ b/inlong-manager/manager-web/src/main/resources/application-dev.properties
@@ -98,7 +98,9 @@ cls.manager.endpoint=127.0.0.1
 
 
 manager.url=127.0.0.1:8083
-agent.install.path=
+agent.install.path=inlong/inlong-installer/
+agent.install.temp.path=inlong/agent-installer-temp/
+
 # The primary key id of the default agent module used
 default.module.id=1
 # schedule engine type

Reply via email to