[message pusher] - standlone gin service

This commit is contained in:
zeaslity
2024-04-23 11:45:32 +08:00
parent 30d83f3c61
commit 16541183ef
41 changed files with 1481 additions and 133 deletions

View File

@@ -0,0 +1,67 @@
package cmii
import (
"bytes"
"io.wdd.message_pusher/pusher"
"text/template"
"wdd.io/agent-common/logger"
)
var log = logger.Log
type MessageBody struct {
Namespace string
AppName string
ToTag string
Replicas string
DeployStatus bool
}
const cmiiUpgradeTemplate = `
{{if .DeployStatus}}
部署状态: 成功😍
{{- else }}
部署状态: 失败👿👿👿
{{- end}}
命名空间: {{.Namespace}}
应用名称: {{.AppName}}
副本数量: {{.Replicas}}
目标版本: {{.ToTag}}
`
func (d *MessageBody) ParseCmiiUpgradeTemplate() bytes.Buffer {
// 解析模板
tmpl, err := template.New("cmiiUpgradeTemplate").Parse(cmiiUpgradeTemplate)
if err != nil {
panic(err)
}
// 应用数据并打印结果
var result bytes.Buffer
err = tmpl.Execute(&result, d)
if err != nil {
panic(err)
}
return result
}
var UpdatePushOptions = []pusher.PublishOption{
pusher.WithTitle("更新应用"),
pusher.WithPriority("3"),
}
// DefaultPushUpgradeMessage 使用默认的Client 发布更新的消息
func (d *MessageBody) DefaultPushUpgradeMessage() *pusher.Message {
upgradeTemplate := d.ParseCmiiUpgradeTemplate()
result, err := pusher.DefaultPusherClient.PublishDefault(upgradeTemplate, UpdatePushOptions)
if err != nil {
log.ErrorF("[PushCmiiUpgradeMessage] - message push error %s", err.Error())
return result
}
return result
}

View File

@@ -0,0 +1,20 @@
package cmii
import (
"testing"
"wdd.io/agent-common/utils"
)
func TestMessageBody_DefaultPushUpgradeMessage(t *testing.T) {
deployPush := &MessageBody{
Namespace: "uavcloud-dev",
AppName: "cmii-uav-platform",
Replicas: "1",
DeployStatus: false,
}
message := deployPush.DefaultPushUpgradeMessage()
utils.BeautifulPrint(message)
}