From e5e043d3a45674ea3f9db8ae26fa19d650cf127e Mon Sep 17 00:00:00 2001 From: wubijie Date: Thu, 14 Nov 2024 14:23:50 +0800 Subject: [PATCH] Improve host config multi machine execution result processing --- configmanage/server/service/host.go | 28 +++++++++++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) diff --git a/configmanage/server/service/host.go b/configmanage/server/service/host.go index 6fd0f364..cf304340 100644 --- a/configmanage/server/service/host.go +++ b/configmanage/server/service/host.go @@ -148,7 +148,23 @@ func (hc *HostConfig) Apply() ([]NodeResult, error) { } // 将执行失败的文件、机器信息和原因添加到结果字符串中 for _, d := range data { + // 存储每一台机器的执行结果 + hfNode := HostFile{ + UUID: hf.UUID, + ConfigInfoUUID: hf.ConfigInfoUUID, + Path: hf.Path, + Name: hf.Name, + Content: hf.Content, + Version: hf.Version, + IsActive: true, + IsFromHost: false, + Hostuuid: d.UUID, + CreatedAt: time.Now(), + } + + // 返回执行失败的机器详情 if d.Error != "" { + hfNode.IsActive = false results = append(results, NodeResult{ Type: global.Host, NodeUUID: d.UUID, @@ -157,9 +173,19 @@ func (hc *HostConfig) Apply() ([]NodeResult, error) { Err: d.Error, }) } + err = hfNode.Add() + if err != nil { + results = append(results, NodeResult{ + Type: global.Host, + NodeUUID: d.UUID, + Detail: "failed to collect host config to db", + Result: false, + Err: err.Error(), + }) + } } - //TODO:部分成功如何修改数据库 + // 全部下发成功直接修改数据库是否激活字段 if results == nil { //下发成功修改数据库应用版本 err = hf.UpdateByuuid() -- Gitee