Documentation
¶
Index ¶
- func DeleteHelmReleaseByNsAndReleaseName(namespace, releaseName, cluster string) error
- func DropDB() error
- func InitDB() error
- func UpgradeDB(fromVersion string, toVersion string) error
- type HelmChart
- func (c *HelmChart) BatchSave(params *dao.Params, events []*HelmChart, batchSize int, ...) error
- func (c *HelmChart) Delete(params *dao.Params, ids string, queryFuncs ...func(*gorm.DB) *gorm.DB) error
- func (c *HelmChart) GetOne(params *dao.Params, queryFuncs ...func(*gorm.DB) *gorm.DB) (*HelmChart, error)
- func (c *HelmChart) List(params *dao.Params, queryFuncs ...func(*gorm.DB) *gorm.DB) ([]*HelmChart, int64, error)
- func (c *HelmChart) Save(params *dao.Params, queryFuncs ...func(*gorm.DB) *gorm.DB) error
- type HelmRelease
- func (r *HelmRelease) Delete(params *dao.Params, ids string, queryFuncs ...func(*gorm.DB) *gorm.DB) error
- func (r *HelmRelease) GetOne(params *dao.Params, queryFuncs ...func(*gorm.DB) *gorm.DB) (*HelmRelease, error)
- func (r *HelmRelease) List(params *dao.Params, queryFuncs ...func(*gorm.DB) *gorm.DB) ([]*HelmRelease, int64, error)
- func (r *HelmRelease) Save(params *dao.Params, queryFuncs ...func(*gorm.DB) *gorm.DB) error
- type HelmRepository
- func (c *HelmRepository) Delete(params *dao.Params, ids string, queryFuncs ...func(*gorm.DB) *gorm.DB) error
- func (c *HelmRepository) GetIDByNameAndURL(params *dao.Params) (uint, error)
- func (c *HelmRepository) GetOne(params *dao.Params, queryFuncs ...func(*gorm.DB) *gorm.DB) (*HelmRepository, error)
- func (c *HelmRepository) List(params *dao.Params, queryFuncs ...func(*gorm.DB) *gorm.DB) ([]*HelmRepository, int64, error)
- func (c *HelmRepository) Save(params *dao.Params, queryFuncs ...func(*gorm.DB) *gorm.DB) error
- type HelmSetting
- type Release
- type ReleaseHistory
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func DeleteHelmReleaseByNsAndReleaseName ¶
DeleteHelmReleaseByNsAndReleaseName 删除指定namespace和releaseName的HelmRelease记录
Types ¶
type HelmChart ¶
type HelmChart struct {
ID uint `gorm:"primaryKey;autoIncrement" json:"id,omitempty"`
RepositoryID uint `gorm:"index;not null" json:"repository_id,omitempty"` // 关联仓库ID
RepositoryName string `json:"repository_name,omitempty"` // 关联仓库名称
Name string `gorm:"index;not null" json:"name,omitempty"` // Chart名称
LatestVersion string `json:"latest_version,omitempty"` // 最新版本(冗余字段,优化查询)
Description string `json:"description,omitempty"` // Chart描述
Home string `json:"home,omitempty"` // 项目主页URL
Icon string `json:"icon,omitempty"` // Chart图标链接
Keywords string `json:"keywords,omitempty"` // 关键词(PostgreSQL数组类型)
KubeVersion string `json:"kubeVersion,omitempty"` // 最低k8s版本要求
AppVersion string `json:"appVersion,omitempty"` // app应用版本
Deprecated bool `json:"deprecated,omitempty"` // Whether or not this chart is deprecated
CreatedAt time.Time `json:"created_at,omitempty" gorm:"<-:create"`
UpdatedAt time.Time `json:"updated_at"`
Sources string `json:"sources,omitempty"` // 源码主页
}
func (*HelmChart) BatchSave ¶
func (c *HelmChart) BatchSave(params *dao.Params, events []*HelmChart, batchSize int, queryFuncs ...func(*gorm.DB) *gorm.DB) error
BatchSave 批量保存 HelmChart 实例
type HelmRelease ¶
type HelmRelease struct {
ID uint `gorm:"primaryKey;autoIncrement" json:"id,omitempty"`
ReleaseName string `gorm:"index" json:"release_name,omitempty"` // Release 名称
RepoName string `json:"repo_name,omitempty"` // 仓库名称
Namespace string `gorm:"not null;index" json:"namespace,omitempty"` // 命名空间
ChartName string `gorm:"not null" json:"chart_name,omitempty"` // Chart 名称
ChartVersion string `json:"chart_version,omitempty"` // Chart 版本
Values string `json:"values,omitempty"` // values.yaml 内容
Status string `json:"status,omitempty"` // 安装状态
Cluster string `json:"cluster,omitempty"`
Result string `json:"result,omitempty"` // 描述
CreatedAt time.Time `json:"created_at,omitempty" gorm:"<-:create"`
UpdatedAt time.Time `json:"updated_at,omitempty"`
}
func GetHelmReleaseByNsAndReleaseName ¶
func GetHelmReleaseByNsAndReleaseName(namespace, releaseName, cluster string) (*HelmRelease, error)
GetHelmReleaseByNsAndReleaseName 通过namespace和releaseName获取repo名称
func (*HelmRelease) GetOne ¶
func (r *HelmRelease) GetOne(params *dao.Params, queryFuncs ...func(*gorm.DB) *gorm.DB) (*HelmRelease, error)
type HelmRepository ¶
type HelmRepository struct {
ID uint `gorm:"primaryKey;autoIncrement" json:"id,omitempty"`
Name string `gorm:"not null" json:"name,omitempty"` // 仓库名称(唯一)
URL string `gorm:"not null" json:"url,omitempty"` // 仓库地址(如 https://charts.example.com)
Type string `gorm:"comment:仓库类型(OCI/HTTP)" json:"type,omitempty"`
Description string `json:"description,omitempty"` // 仓库描述
AuthType string `gorm:"comment:认证类型(Basic/AuthToken/OAuth)" json:"auth_type,omitempty"`
Username string `json:"username,omitempty"` // 认证用户名(加密存储)
Password string `gorm:"-;comment:密码(临时字段,存储时需加密)" json:"password,omitempty"`
EncryptedSecret string `gorm:"comment:加密后的凭据" json:"encrypted_secret,omitempty"`
IsActive bool `gorm:"default:true" json:"is_active,omitempty"` // 是否启用
Generated string `json:"generated,omitempty"` // repo 索引文件创建时间
CertFile string `json:"certFile,omitempty"`
KeyFile string `json:"keyFile,omitempty"`
CAFile string `json:"caFile,omitempty"`
InsecureSkipTLSverify bool `json:"insecure_skip_tls_verify,omitempty"`
PassCredentialsAll bool `json:"pass_credentials_all,omitempty"`
CreatedAt time.Time `json:"created_at,omitempty" gorm:"<-:create"`
UpdatedAt time.Time `json:"updated_at,omitempty"` // Automatically managed by GORM for update time
}
func (*HelmRepository) GetIDByNameAndURL ¶
func (c *HelmRepository) GetIDByNameAndURL(params *dao.Params) (uint, error)
func (*HelmRepository) GetOne ¶
func (c *HelmRepository) GetOne(params *dao.Params, queryFuncs ...func(*gorm.DB) *gorm.DB) (*HelmRepository, error)
type HelmSetting ¶
type HelmSetting struct {
ID uint `gorm:"primaryKey;autoIncrement" json:"id,omitempty"`
HelmCachePath string `json:"helm_cache_path"`
HelmUpdateCron string `json:"helm_update_cron"`
CreatedAt time.Time `json:"created_at,omitempty" gorm:"<-:create"`
UpdatedAt time.Time `json:"updated_at,omitempty"`
}
func DefaultHelmSetting ¶
func DefaultHelmSetting() *HelmSetting
func GetOrCreateHelmSetting ¶
func GetOrCreateHelmSetting() (*HelmSetting, error)
func UpdateHelmSetting ¶
func UpdateHelmSetting(in *HelmSetting) (*HelmSetting, error)
func (HelmSetting) TableName ¶
func (HelmSetting) TableName() string
type Release ¶
type Release struct {
Name string `json:"name"`
Namespace string `json:"namespace"`
Revision string `json:"revision"`
Updated string `json:"updated"`
Status string `json:"status"`
Chart string `json:"chart"`
AppVersion string `json:"app_version"`
Description string `json:"description"`
}
Release Helm Release 信息(来自 helm list 命令)
Click to show internal directories.
Click to hide internal directories.