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