[ agent ] [agent] improvement of shell script

This commit is contained in:
zeaslity
2022-12-13 14:07:28 +08:00
parent b49b210569
commit 5c65c983c9
61 changed files with 6761 additions and 35 deletions

View File

@@ -0,0 +1,25 @@
package io.wdd.agent.agent;
import io.wdd.agent.executor.FunctionExecutor;
import io.wdd.common.beans.agent.AgentOperationMessage;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
@Service
@Slf4j
public class AgentRebootUpdateService {
@Resource
FunctionExecutor functionExecutor;
public void exAgentReboot(AgentOperationMessage operationMessage) {
}
public void exAgentUpdate(AgentOperationMessage operationMessage) {
}
}

View File

@@ -1,17 +1,45 @@
package io.wdd.agent.config.message.handler;
import io.wdd.agent.agent.AgentRebootUpdateService;
import io.wdd.common.beans.agent.AgentOperationMessage;
import io.wdd.common.beans.rabbitmq.OctopusMessage;
import io.wdd.common.beans.rabbitmq.OctopusMessageType;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
@Component
@Slf4j
public class OMHandlerAgent extends AbstractOctopusMessageHandler {
@Resource
AgentRebootUpdateService agentRebootUpdateService;
@Override
public boolean handle(OctopusMessage octopusMessage) {
if (!octopusMessage.getType().equals(OctopusMessageType.AGENT)) {
return next.handle(octopusMessage);
}
AgentOperationMessage operationMessage = (AgentOperationMessage) octopusMessage.getContent();
String operationName = operationMessage.getOperationName();
if (operationName.startsWith("reb")) {
// reboot
agentRebootUpdateService.exAgentReboot(operationMessage);
} else if (operationName.startsWith("upd")) {
// update
agentRebootUpdateService.exAgentUpdate(operationMessage);
} else {
// operation unknown
log.error("Command Agent Operation Unknown! " );
}
return true;
}
}

View File

@@ -1,7 +1,7 @@
package io.wdd.agent.config.message.handler;
import io.wdd.agent.executor.shell.CommandExecutor;
import io.wdd.agent.executor.shell.FunctionExecutor;
import io.wdd.agent.executor.CommandExecutor;
import io.wdd.agent.executor.FunctionExecutor;
import io.wdd.common.beans.executor.ExecutionMessage;
import io.wdd.common.beans.rabbitmq.OctopusMessage;
import io.wdd.common.beans.rabbitmq.OctopusMessageType;

View File

@@ -1,4 +1,4 @@
package io.wdd.agent.executor.shell;
package io.wdd.agent.executor;
import com.google.common.io.ByteStreams;
import io.wdd.agent.executor.redis.StreamSender;

View File

@@ -1,8 +1,7 @@
package io.wdd.agent.executor.shell;
package io.wdd.agent.executor;
import com.alibaba.nacos.api.config.listener.Listener;
import com.alibaba.nacos.api.exception.NacosException;
import io.wdd.agent.executor.config.FunctionReader;
import io.wdd.agent.executor.function.CollectAllExecutorFunction;
import io.wdd.common.beans.executor.ExecutionMessage;
import lombok.extern.slf4j.Slf4j;
@@ -13,7 +12,6 @@ import javax.annotation.Resource;
import java.util.Iterator;
import java.util.List;
import java.util.concurrent.Executor;
import java.util.stream.Collectors;
import static io.wdd.agent.executor.function.CollectAllExecutorFunction.ALL_FUNCTION_MAP;
import static io.wdd.agent.executor.function.CollectAllExecutorFunction.NacosConfigService;

View File

@@ -1,7 +0,0 @@
wget https://raw.githubusercontent.com/zeaslity/ProjectOctopus/main/source/src/main/java/io/wdd/source/shell/test.sh -O /host/root/test.sh
chmod +x /host/root/test.sh
/host/root/test.sh

View File

@@ -1,11 +0,0 @@
# all agent show report its functions to server at start up delay
---
1. delay 60s
2. report all functions
1. install nginx
2. install xray
3. etc
3.

View File

@@ -1,8 +1,8 @@
package io.wdd.agent.executor.web;
import io.wdd.agent.executor.shell.CommandExecutor;
import io.wdd.agent.executor.shell.FunctionExecutor;
import io.wdd.agent.executor.CommandExecutor;
import io.wdd.agent.executor.FunctionExecutor;
import io.wdd.common.beans.executor.ExecutionMessage;
import io.wdd.common.beans.response.R;
import org.springframework.web.bind.annotation.PostMapping;
@@ -13,8 +13,6 @@ import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import java.util.List;
import static io.wdd.agent.executor.function.CollectAllExecutorFunction.ALL_FUNCTION_MAP;
@RestController
@RequestMapping("testExecutor")
public class TestCommandExecutorController {

View File

@@ -1,6 +1,7 @@
spring:
redis:
timeout: 5000
lettuce:
pool:
time-between-eviction-runs: 5000
master

View File

@@ -1,7 +1,7 @@
package io.wdd.agent;
import io.wdd.agent.executor.function.CollectAllExecutorFunction;
import io.wdd.agent.executor.shell.FunctionExecutor;
import io.wdd.agent.executor.FunctionExecutor;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.io.FileUtils;
import org.apache.commons.io.filefilter.DirectoryFileFilter;

View File

@@ -1,6 +1,6 @@
package io.wdd.agent;
import io.wdd.agent.executor.shell.CommandExecutor;
import io.wdd.agent.executor.CommandExecutor;
import javax.annotation.Resource;