mirror of
https://github.com/Rain-kl/OpenFlare.git
synced 2026-10-02 06:56:36 +08:00
2f60329886
代码质量全量清理,零行为变化:golangci 扩展集 13 类 linter(gosec/modernize/perfsprint/canonicalheader/usestdlibvars/wastedassign/intrange/errorlint/forcetypeassert/recvcheck/exhaustive/unparam)全量修复,测试代码质量(testifylint/thelper/usetesting)25→0,frpc 进程生命周期真 bug(进程组击杀)、全仓 go test -race 6 类数据竞争(含 1 个生产竞争)、SPDX license 头补齐 131 文件、前端测试套件 next-intl 迁移后 44 失败→全绿、过期 swagger 文档重新生成、pnpm-workspace 构建审批。 Experiments: #2-#17, #18, #20, #21, #23 Metric: total_issues 108 → 8 (-92.6%)
58 lines
1.8 KiB
Go
58 lines
1.8 KiB
Go
// Copyright 2026 Arctel.net
|
|
// SPDX-License-Identifier: Apache-2.0
|
|
|
|
package model
|
|
|
|
import (
|
|
"time"
|
|
|
|
"gorm.io/gorm"
|
|
)
|
|
|
|
// ConfigVersionSummary is the list view for config versions.
|
|
type ConfigVersionSummary struct {
|
|
ID string `json:"id" gorm:"-"`
|
|
Version string `json:"version" gorm:"primaryKey;column:version"`
|
|
Checksum string `json:"checksum"`
|
|
IsActive bool `json:"is_active"`
|
|
CreatedBy string `json:"created_by"`
|
|
CreatedAt time.Time `json:"created_at"`
|
|
}
|
|
|
|
// AfterFind hook for ConfigVersionSummary.
|
|
func (cvs *ConfigVersionSummary) AfterFind(_ *gorm.DB) (err error) {
|
|
cvs.ID = cvs.Version
|
|
return
|
|
}
|
|
|
|
// ConfigVersion stores a published OpenResty configuration snapshot.
|
|
type ConfigVersion struct {
|
|
ID string `json:"id" gorm:"-"`
|
|
Version string `json:"version" gorm:"primaryKey;size:32;not null"`
|
|
SnapshotJSON string `json:"snapshot_json" gorm:"type:text;not null"`
|
|
MainConfig string `json:"main_config" gorm:"type:text;not null;default:''"`
|
|
RenderedConfig string `json:"rendered_config" gorm:"type:text;not null"`
|
|
SupportFilesJSON string `json:"support_files_json" gorm:"type:text;not null;default:'[]'"`
|
|
Checksum string `json:"checksum" gorm:"size:64;not null"`
|
|
IsActive bool `json:"is_active" gorm:"not null;default:false;index"`
|
|
CreatedBy string `json:"created_by" gorm:"size:64;not null"`
|
|
CreatedAt time.Time `json:"created_at" gorm:"autoCreateTime"`
|
|
}
|
|
|
|
// AfterFind hook for ConfigVersion.
|
|
func (cv *ConfigVersion) AfterFind(_ *gorm.DB) (err error) {
|
|
cv.ID = cv.Version
|
|
return
|
|
}
|
|
|
|
// AfterCreate hook for ConfigVersion.
|
|
func (cv *ConfigVersion) AfterCreate(_ *gorm.DB) (err error) {
|
|
cv.ID = cv.Version
|
|
return
|
|
}
|
|
|
|
// TableName returns the GORM table name.
|
|
func (*ConfigVersion) TableName() string {
|
|
return "of_config_versions"
|
|
}
|