From ca255e1b3fdfc7d7d3ea11853cf6418fa63362a1 Mon Sep 17 00:00:00 2001 From: IceDerce Date: Mon, 26 Jun 2023 16:04:46 +0800 Subject: [PATCH] [Excution] - base function accomplish - 4 --- agent-go/executor/BaseFunction.go | 11 +++++----- agent-go/executor/BaseFunction_test.go | 4 ++-- agent-go/rabbitmq/OctopusMessage.go | 30 +++++++++++++++++++++++++- 3 files changed, 37 insertions(+), 8 deletions(-) diff --git a/agent-go/executor/BaseFunction.go b/agent-go/executor/BaseFunction.go index b02323e..f54f95a 100644 --- a/agent-go/executor/BaseFunction.go +++ b/agent-go/executor/BaseFunction.go @@ -96,12 +96,13 @@ func (op *AgentOsOperator) Exec(baseFuncName string, funcArgs ...string) []strin // exec the command here for _, singleLineCommand := range multiLineCommand { result = append(result, ReadTimeCommandExecutor(singleLineCommand)...) - } - // debug usage - //log.DebugF("exec result are => %v", result) - for _, logLine := range result { - fmt.Println(logLine) + // debug usage + log.DebugF("exec result are => %v", result) + for _, logLine := range result { + fmt.Println(logLine) + } + } // 归一化处理 diff --git a/agent-go/executor/BaseFunction_test.go b/agent-go/executor/BaseFunction_test.go index 63518d7..358cdaa 100644 --- a/agent-go/executor/BaseFunction_test.go +++ b/agent-go/executor/BaseFunction_test.go @@ -47,8 +47,8 @@ func TestBaseFunc(t *testing.T) { //agentOP.Exec("modifyHostname") //agentOP.Exec("disableSwap") //agentOP.Exec("enableSwap") - agentOP.Exec("removeDocker") - //agentOP.Exec("installDocker", "20") + //agentOP.Exec("removeDocker") + agentOP.Exec("installDocker", "20") //agentOP.Exec("removeDockerCompose") //agentOP.Exec("installDockerCompose") //agentOP.Exec("installHelm") diff --git a/agent-go/rabbitmq/OctopusMessage.go b/agent-go/rabbitmq/OctopusMessage.go index 57ab6ce..9de17b0 100644 --- a/agent-go/rabbitmq/OctopusMessage.go +++ b/agent-go/rabbitmq/OctopusMessage.go @@ -22,6 +22,8 @@ type OctopusMsgHandler interface { type OctopusMsgSender interface { Send(rabbitQueue *RabbitQueue, msg []byte) + + SendToOctopusServer() } type OctopusMsgBuilder interface { @@ -47,6 +49,20 @@ func (om *OctopusMessage) Send(rabbitQueue *RabbitQueue, msg []byte) { rabbitQueue.Send(msg) } +// SendToOctopusServer send octopus message back to octopusToServer queue +func (om *OctopusMessage) SendToOctopusServer() { + + // write the octopus message to bytes + octopusMessageReplayBytes, err := json.Marshal(om) + if err != nil { + log.ErrorF("replay octopus message write error => %v", err) + } + + // Send back the result to queue + OctopusToServerQueue.Send(octopusMessageReplayBytes) + +} + func (om *OctopusMessage) Build(omType string, content interface{}) *OctopusMessage { // 当前时间 @@ -111,7 +127,19 @@ func executorOMHandler(octopusMessage *OctopusMessage) { } // 交给后端的实际处理器处理, 再次策略 - executor.Execute(executionMessage) + resultLog, err := executor.Execute(executionMessage) + if err != nil { + octopusMessage.ResultCode = "200" + } else { + octopusMessage.ResultCode = "300" + } + + // send back the result log + octopusMessage.Result = resultLog + octopusMessage.ACTime = utils.ParseISOLocalDateTime() + + // Send + octopusMessage.SendToOctopusServer() } func statusOMHandler(octopusMessage *OctopusMessage) {