Commit a2b92094 authored by 陈子龙's avatar 陈子龙

Merge branch 'dev-czl' into dev

parents f80ff56d 294c864c
...@@ -412,53 +412,56 @@ func (h *HostManageSvc) ListStateHostManage(req request.StateHostManageReq) (err ...@@ -412,53 +412,56 @@ func (h *HostManageSvc) ListStateHostManage(req request.StateHostManageReq) (err
} }
// 读取hosts中的主机组 // 读取hosts中的主机组
hosts, err := tools.HostsToJson() //hosts, err := tools.HostsToJson()
if err != nil { //if err != nil {
err = resp.MarshalError.WithError(err) // err = resp.MarshalError.WithError(err)
session.Rollback() // session.Rollback()
return // return
} //}
//
//if _, ok := hosts["["+AnsibleGroup+fmt.Sprintf("%d", req.Id)+"]"]; !ok {
// // 不存在
// hosts["["+AnsibleGroup+fmt.Sprintf("%d", req.Id)+"]"] = nil
//}
////新增主机分组列表
//for _, v := range hostManageList {
// hostsIp := ""
// if v.VoucherType == 0 {
// hostsIp = fmt.Sprintf("%s ansible_ssh_host=%s ansible_ssh_port=%s ansible_ssh_user=\"%s\" ansible_ssh_pass=\"%s\" ansible_host_key_checking=false",
// AnsibleIp+fmt.Sprintf("%d", v.Id), v.Ip, v.Port, v.UserName, v.Password)
// } else {
// hostsIp = fmt.Sprintf("%s ansible_ssh_host=%s ansible_ssh_port=%s ansible_ssh_user=\"%s\" ansible_ssh_private_key_file=/root/.ssh/id_rsa ansible_host_key_checking=false",
// AnsibleIp+fmt.Sprintf("%d", v.Id), v.Ip, v.Port, v.UserName)
// }
//
// flag := 0
// for _, v1 := range hosts["["+AnsibleGroup+fmt.Sprintf("%d", req.Id)+"]"] {
// if v1 == hostsIp {
// flag = 1
// }
// }
// if flag == 0 {
// hosts["["+AnsibleGroup+fmt.Sprintf("%d", req.Id)+"]"] = append(hosts["["+AnsibleGroup+fmt.Sprintf("%d", req.Id)+"]"], hostsIp)
// }
//}
//
////写入hosts
//err = tools.MapToSaveHosts(hosts)
//if err != nil {
// err = resp.MarshalError.WithError(err)
// session.Rollback()
// return
//}
if _, ok := hosts["["+AnsibleGroup+fmt.Sprintf("%d", req.Id)+"]"]; !ok {
// 不存在
hosts["["+AnsibleGroup+fmt.Sprintf("%d", req.Id)+"]"] = nil
}
//新增主机分组列表
for _, v := range hostManageList { for _, v := range hostManageList {
hostsIp := "" //修改状态
if v.VoucherType == 0 { connStatus := StatusDetection(v.Ip)
hostsIp = fmt.Sprintf("%s ansible_ssh_host=%s ansible_ssh_port=%s ansible_ssh_user=\"%s\" ansible_ssh_pass=\"%s\" ansible_host_key_checking=false", hostManageListConn := entity.HostManageList{
AnsibleIp+fmt.Sprintf("%d", v.Id), v.Ip, v.Port, v.UserName, v.Password) ConnStatus: connStatus,
} else {
hostsIp = fmt.Sprintf("%s ansible_ssh_host=%s ansible_ssh_port=%s ansible_ssh_user=\"%s\" ansible_ssh_private_key_file=/root/.ssh/id_rsa ansible_host_key_checking=false",
AnsibleIp+fmt.Sprintf("%d", v.Id), v.Ip, v.Port, v.UserName)
}
flag := 0
for _, v1 := range hosts["["+AnsibleGroup+fmt.Sprintf("%d", req.Id)+"]"] {
if v1 == hostsIp {
flag = 1
}
}
if flag == 0 {
hosts["["+AnsibleGroup+fmt.Sprintf("%d", req.Id)+"]"] = append(hosts["["+AnsibleGroup+fmt.Sprintf("%d", req.Id)+"]"], hostsIp)
} }
}
//写入hosts
err = tools.MapToSaveHosts(hosts)
if err != nil {
err = resp.MarshalError.WithError(err)
session.Rollback()
return
}
for _, v := range hostManageList {
//修改状态
_, err = session.Table("host_manage_list").Where("is_delete = 0 AND id = ?", v.Id). _, err = session.Table("host_manage_list").Where("is_delete = 0 AND id = ?", v.Id).
Cols("conn_status").Update(&entity.HostManageList{ Cols("conn_status").Update(&hostManageListConn)
ConnStatus: StatusDetection(v.Ip),
})
if err != nil { if err != nil {
err = resp.DbUpdateError.WithError(err) err = resp.DbUpdateError.WithError(err)
session.Rollback() session.Rollback()
...@@ -777,10 +780,11 @@ func CronStatusDetection() { ...@@ -777,10 +780,11 @@ func CronStatusDetection() {
// } // }
//} //}
for _, v := range hostManageList { for _, v := range hostManageList {
connStatus := StatusDetection(v.Ip)
//修改状态 //修改状态
_, err = db.Table("host_manage_list").Where("is_delete = 0 AND id = ?", v.Id). _, err = db.Table("host_manage_list").Where("is_delete = 0 AND id = ?", v.Id).
Cols("conn_status").Update(&entity.HostManageList{ Cols("conn_status").Update(&entity.HostManageList{
ConnStatus: StatusDetection(v.Ip), ConnStatus: connStatus,
}) })
if err != nil { if err != nil {
fmt.Println("CronStatusDetection err:", err.Error()) fmt.Println("CronStatusDetection err:", err.Error())
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment