Files
kube-forge/internal/config/modules_cicd.go

97 lines
3.8 KiB
Go

package config
type Cicd struct {
Enabled bool `yaml:"enabled"`
Namespace string `yaml:"namespace" env-default:"cicd"`
ArgoCd struct {
ChartRef string `yaml:"chart_ref" env-default:"kube-forge/argo-cd"`
ChartVersion string `yaml:"chart_version" env-default:"6.7.10"`
AdminPassword string
Ha struct {
Enabled bool `yaml:"enabled"`
Autoscaling bool `yaml:"autoscaling"`
} `yaml:"ha"`
Expose struct {
Type string `yaml:"type"`
Domain string `yaml:"domain"`
Path string `yaml:"path" env-default:"/"`
NodePortHttp int `yaml:"node_port_http" env-default:"30005"`
NodePortHttps int `yaml:"node_port_https" env-default:"30006"`
Tls struct {
Enabled bool `yaml:"enabled"`
} `yaml:"tls"`
} `yaml:"expose"`
Repositories interface{} `yaml:"repositories"`
Rbac struct {
AdditionalPolicies string `yaml:"additional_policies"`
} `yaml:"argo_cd"`
ServiceIngress struct {
ChartRef string `yaml:"chart_ref" env-default:"kube-forge/service-ingress"`
ChartVersion string `yaml:"chart_version" env-default:"0.1.0"`
} `yaml:"service_ingress"`
Global struct {
Image string `yaml:"image" env-default:"quay.io/argoproj/argocd"`
Tag string `yaml:"tag" env-default:"latest"`
} `yaml:"global"`
Server struct {
Image string `yaml:"image" env-default:"quay.io/argoproj/argocd"`
Tag string `yaml:"tag" env-default:"latest"`
} `yaml:"server"`
Redis struct {
Image string `yaml:"image" env-default:"public.ecr.aws/docker/library/redis"`
Tag string `yaml:"tag" env-default:"7.2.4-alpine"`
Exporter struct {
Image string `yaml:"image" env-default:"public.ecr.aws/bitnami/redis-exporter"`
Tag string `yaml:"tag" env-default:"1.58.0"`
} `yaml:"exporter"`
} `yaml:"redis"`
ApplicationSet struct {
Image string `yaml:"image" env-default:"quay.io/argoproj/argocd"`
Tag string `yaml:"tag" env-default:"latest"`
} `yaml:"application_set"`
Dex struct {
Image string `yaml:"image" env-default:"ghcr.io/dexidp/dex"`
Tag string `yaml:"tag" env-default:"v2.38.0"`
} `yaml:"dex"`
RepoServer struct {
Image string `yaml:"image" env-default:"quay.io/argoproj/argocd"`
Tag string `yaml:"tag" env-default:"latest"`
} `yaml:"repo_server"`
Notifications struct {
Image string `yaml:"image" env-default:"quay.io/argoproj/argocd"`
Tag string `yaml:"tag" env-default:"latest"`
} `yaml:"notifications"`
Controller struct {
Image string `yaml:"image" env-default:"quay.io/argoproj/argocd"`
Tag string `yaml:"tag" env-default:"latest"`
} `yaml:"controller"`
} `yaml:"argo_cd"`
UpdatesOperator struct {
ChartRef string `yaml:"chart_ref" env-default:"kube-forge/keel"`
ChartVersion string `yaml:"chart_version" env-default:"1.0.3"`
Enabled bool `yaml:"enabled"`
Namespace string `yaml:"namespace" env-default:"kube-system"`
Image string `yaml:"image" env-default:"harbor.kvazaric.ru/kube-forge/keelhq/keel"`
Tag string `yaml:"tag" env-default:"latest"`
} `yaml:"updates_operator"`
Rollouts struct {
ChartRef string `yaml:"chart_ref" env-default:"kube-forge/argo-rollouts"`
ChartVersion string `yaml:"chart_version" env-default:"2.35.1"`
Enabled bool `yaml:"enabled"`
Registry string `yaml:"registry" env-default:"quay.io"`
Repository string `yaml:"repository" env-default:"argoproj/argo-rollouts"`
Tag string `yaml:"tag" env-default:"latest"`
Ha struct {
Enabled bool `yaml:"enabled"`
} `yaml:"ha"`
Expose struct {
Type string `yaml:"type"`
NodePort int `yaml:"node_port" env-default:"30010"`
} `yaml:"expose"`
Controller struct {
} `yaml:"controller"`
Dashboard struct {
} `yaml:"dashboard"`
} `yaml:"rollouts"`
}