diff --git a/configmanage/server/internal/ssh.go b/configmanage/server/internal/ssh.go index 1bb04b1be85968d72c974a75b43ba308fa7700bf..2abc123013c8a7507a7cc6d98b06c381ffcd8b38 100644 --- a/configmanage/server/internal/ssh.go +++ b/configmanage/server/internal/ssh.go @@ -51,3 +51,10 @@ func (sf *SSHFile) UpdateByuuid() error { // 将成功下发的具体某一个配置状态修改为已使用 return db.MySQL().Model(&SSHFile{}).Where("uuid=?", sf.UUID).Update("is_index", 1).Error } + +// 根据配置uuid获取所有配置文件 +func GetSSHFilesByCinfigUUID(uuid string) ([]SSHFile, error) { + var files []SSHFile + err := db.MySQL().Model(&SSHFile{}).Where("config_info_uuid=?", uuid).Find(&files).Error + return files, err +} diff --git a/configmanage/server/service/ssh.go b/configmanage/server/service/ssh.go index c52f5485eb1ded2aa5500968fc17cb9db976626d..47af4574c36ce0a3b50b7f9d7a9a8d0308064c2a 100644 --- a/configmanage/server/service/ssh.go +++ b/configmanage/server/service/ssh.go @@ -155,3 +155,8 @@ func (rc *SSHConfig) Apply() (json.RawMessage, error) { func (sc *SSHConfig) Collect() error { return nil } + +// 根据配置uuid获取所有配置文件 +func GetSSHFilesByCinfigUUID(uuid string) ([]SSHFile, error) { + return internal.GetSSHFilesByCinfigUUID(uuid) +} diff --git a/configmanage/server/service/ssh_test.go b/configmanage/server/service/ssh_test.go index 9842a23e69272eb814830b45088ffa33ceaacd34..f9712b91f146f3d1a6097d09b5e1365bfd8b3039 100644 --- a/configmanage/server/service/ssh_test.go +++ b/configmanage/server/service/ssh_test.go @@ -51,3 +51,20 @@ func TestGetSSHFileByUUID(t *testing.T) { } fmt.Printf("hc: %v\n", sf) } + +func TestGetSSHFilesByCinfigUUID(t *testing.T) { + // 设置测试数据 + testUUID := "5973e993-6236-4b53-9eb6-0cc23c652460" + + // 调用被测试的函数 + files, err := GetSSHFilesByCinfigUUID(testUUID) + if err != nil { + fmt.Printf("load sshfiles error: %s\n", err) + os.Exit(-1) + } + if len(files) == 0 { + fmt.Printf("files is empty: %s\n", err) + os.Exit(-1) + } + fmt.Println(len(files)) +}