diff --git a/configmanage/server/controller/configinstance.go b/configmanage/server/controller/configinstance.go index 2c3acb6195114cf0c702327a8286de74735bd339..8dfba54fcd0b81186a217e16940af56ef34cb76e 100644 --- a/configmanage/server/controller/configinstance.go +++ b/configmanage/server/controller/configinstance.go @@ -266,6 +266,7 @@ func LoadConfigHandler(c *gin.Context) { ci.Config = hostconfig logger.Debug("load hostconfig success") response.Success(c, ci, "load hostconfig success") + case global.SSH: sshconfig := &service.SSHConfig{ ConfigInfoUUID: ci.UUID, @@ -280,7 +281,21 @@ func LoadConfigHandler(c *gin.Context) { ci.Config = sshconfig logger.Debug("load sshconfig success") response.Success(c, ci, "load sshconfig success") + case global.SSHD: + sshdconfig := &service.SSHDConfig{ + ConfigInfoUUID: ci.UUID, + } + // 加载正在使用的配置 + err = sshdconfig.Load() + if err != nil { + logger.Error("failed to get sshdconfig file: %s", err.Error()) + response.Fail(c, "failed to get sshdconfig file:", err.Error()) + return + } + ci.Config = sshdconfig + logger.Debug("load sshdconfig success") + response.Success(c, ci, "load sshdconfig success") case global.Sysctl: diff --git a/configmanage/server/service/ssh.go b/configmanage/server/service/ssh.go index a7adf149a44079fc6f7b7df3b358f8584b265d3a..515415335706f674017875c8e04e094d6c293875 100644 --- a/configmanage/server/service/ssh.go +++ b/configmanage/server/service/ssh.go @@ -84,25 +84,25 @@ func (sc *SSHConfig) Load() error { return nil } -func (rc *SSHConfig) Apply() (json.RawMessage, error) { +func (sc *SSHConfig) Apply() (json.RawMessage, error) { // 从数据库获取下发的信息 - sf, err := internal.GetHostFileByUUID(rc.UUID) + sf, err := internal.GetHostFileByUUID(sc.UUID) if err != nil { return nil, err } - if sf.ConfigInfoUUID != rc.ConfigInfoUUID || sf.UUID != rc.UUID { + if sf.ConfigInfoUUID != sc.ConfigInfoUUID || sf.UUID != sc.UUID { return nil, errors.New("数据库不存在此配置") } - batchids, err := internal.GetConfigBatchByUUID(rc.ConfigInfoUUID) + batchids, err := internal.GetConfigBatchByUUID(sc.ConfigInfoUUID) if err != nil { return nil, err } - departids, err := internal.GetConfigDepartByUUID(rc.ConfigInfoUUID) + departids, err := internal.GetConfigDepartByUUID(sc.ConfigInfoUUID) if err != nil { return nil, err } - nodes, err := internal.GetConfigNodesByUUID(rc.ConfigInfoUUID) + nodes, err := internal.GetConfigNodesByUUID(sc.ConfigInfoUUID) if err != nil { return nil, err } diff --git a/configmanage/server/service/sshd.go b/configmanage/server/service/sshd.go index c7ab826c20807295c677df537263a848299a808e..ed59bf5a13864bb93adddc9e78146e584d9653ba 100644 --- a/configmanage/server/service/sshd.go +++ b/configmanage/server/service/sshd.go @@ -67,3 +67,13 @@ func (sdc *SSHDConfig) Load() error { sdc.IsActive = sdf.IsActive return nil } + +// TODO: +func (sdc *SSHDConfig) Apply() (json.RawMessage, error) { + return nil, errors.New("failed to apply SSHDConfig") +} + +// TODO: +func (sdc *SSHDConfig) Collect() error { + return nil +}