fake commit (uncomplete)

This commit is contained in:
liugq 2023-07-21 16:17:16 +08:00
parent f1cb35e57e
commit 4ffd8de0a2
4 changed files with 58 additions and 44 deletions

View File

@ -4,7 +4,6 @@ import (
"context"
"errors"
_ "expvar"
"infini.sh/console/plugin/api/email"
_ "time/tzdata"
log "github.com/cihub/seelog"
@ -152,13 +151,6 @@ func main() {
}
return err
})
task1.RunWithinGroup("initialize_email_server", func(ctx context.Context) error {
err := email.InitEmailServer()
if err != nil {
log.Errorf("init email server error: %v", err)
}
return err
})
}
if !global.Env().SetupRequired() {

View File

@ -5,12 +5,7 @@
package email
import (
"infini.sh/console/model"
"infini.sh/console/plugin/api/email/common"
"infini.sh/framework/core/api"
"infini.sh/framework/core/orm"
"infini.sh/framework/core/util"
log "src/github.com/cihub/seelog"
)
type EmailAPI struct {
@ -26,31 +21,31 @@ func InitAPI() {
api.HandleAPIMethod(api.GET, "/email/server/_search", email.searchEmailServer)
}
func InitEmailServer() error {
q := orm.Query{
Size: 10,
}
q.Conds = orm.And(orm.Eq("enabled", true))
err, result := orm.Search(model.EmailServer{}, &q )
if err != nil {
return err
}
if len(result.Result) == 0 {
return nil
}
for _, row := range result.Result {
emailServer := model.EmailServer{}
buf := util.MustToJSONBytes(row)
util.MustFromJSONBytes(buf, &emailServer)
err = emailServer.Validate(false)
if err != nil {
log.Error(err)
continue
}
err = common.StartEmailServer(&emailServer)
if err != nil {
log.Error(err)
}
}
return nil
}
//func InitEmailServer() error {
// q := orm.Query{
// Size: 10,
// }
// q.Conds = orm.And(orm.Eq("enabled", true))
// err, result := orm.Search(model.EmailServer{}, &q )
// if err != nil {
// return err
// }
// if len(result.Result) == 0 {
// return nil
// }
// for _, row := range result.Result {
// emailServer := model.EmailServer{}
// buf := util.MustToJSONBytes(row)
// util.MustFromJSONBytes(buf, &emailServer)
// err = emailServer.Validate(false)
// if err != nil {
// log.Error(err)
// continue
// }
// err = common.StartEmailServer(&emailServer)
// if err != nil {
// log.Error(err)
// }
// }
// return nil
//}

View File

@ -8,19 +8,44 @@ import (
"fmt"
"infini.sh/console/model"
"infini.sh/framework/core/global"
"infini.sh/framework/core/orm"
"infini.sh/framework/core/util"
"os"
"path"
)
func StartEmailServer(serv *model.EmailServer) error {
const emailServerConfigFile = "send_email.yml"
func RefreshEmailServer() error {
q := orm.Query{
Size: 10,
}
q.Conds = orm.And(orm.Eq("enabled", true))
err, result := orm.Search(model.EmailServer{}, &q )
if err != nil {
return err
}
if len(result.Result) == 0 {
//todo delete email server config file
return nil
}
servers := map[string]model.EmailServer{}
for _, row := range result.Result {
emailServer := model.EmailServer{}
buf := util.MustToJSONBytes(row)
util.MustFromJSONBytes(buf, &emailServer)
err = emailServer.Validate(false)
if err != nil {
return err
}
servers[emailServer.ID] = emailServer
}
pipeCfgStr := GeneratePipelineConfig(serv)
//cfg, err := yaml.NewConfig([]byte(pipeCfgStr))
//if err != nil {
// return fmt.Errorf("new config error: %w", err)
//}
cfgDir := global.Env().GetConfigDir()
sendEmailCfgFile := path.Join(cfgDir, "send_email.yml")
sendEmailCfgFile := path.Join(cfgDir, emailServerConfigFile)
_, err := util.FilePutContent(sendEmailCfgFile, pipeCfgStr)
return err
//pipeCfg := pipeline.PipelineConfigV2{}

View File

@ -64,7 +64,9 @@ func (h *EmailAPI) createEmailServer(w http.ResponseWriter, req *http.Request, p
return
}
err = orm.Create(nil, obj)
err = orm.Create(&orm.Context{
Refresh: "wait_for",
}, obj)
if err != nil {
h.WriteError(w, err.Error(), http.StatusInternalServerError)
log.Error(err)