适配gitea 取消gogs(没有对应接口支持)

This commit is contained in:
Hua
2025-04-02 14:28:56 +08:00
parent 7ec5abe67f
commit 8480656ca4
9 changed files with 297 additions and 379 deletions

View File

@ -57,6 +57,10 @@ type GitConfig struct {
Name string `mapstructure:"name"` // 平台名称
Type string `mapstructure:"type"` // 平台类型
Token string `mapstructure:"token"` // 访问令牌
Username string `mapstructure:"username"` // 用户名(用于基本认证)
Password string `mapstructure:"password"` // 密码(用于基本认证)
SudoUser string `mapstructure:"sudo_user"` // sudo 用户
TOTP string `mapstructure:"totp"` // TOTP 令牌
Secret string `mapstructure:"webhook_secret"` // webhook 密钥
APIBase string `mapstructure:"api_base"` // API 基础 URL
SignatureHeader string `mapstructure:"signature_header"` // webhook 签名的 header 名称
@ -148,7 +152,10 @@ func Save(newConfig *Config) error {
if err := yamlEncoder.Encode(configMap); err != nil {
// 如果保存失败,恢复备份
if _, err := os.Stat(backupFile); err == nil {
os.Rename(backupFile, "config.yaml")
err := os.Rename(backupFile, "config.yaml")
if err != nil {
return err
}
}
return fmt.Errorf("save config failed: %w", err)
}
@ -188,6 +195,10 @@ func (c *Config) ToMap() map[string]interface{} {
"name": platform.Name,
"type": platform.Type,
"token": platform.Token,
"username": platform.Username,
"password": platform.Password,
"sudo_user": platform.SudoUser,
"totp": platform.TOTP,
"webhook_secret": platform.Secret,
"api_base": platform.APIBase,
"signature_header": platform.SignatureHeader,
@ -237,6 +248,7 @@ func (c *Config) ToMapHtml() map[string]interface{} {
"name": platform.Name,
"type": platform.Type,
"token": platform.Token,
"username": platform.Username,
"webhook_secret": platform.Secret,
"api_base": platform.APIBase,
"signature_header": platform.SignatureHeader,