This repository has been archived by the owner on Apr 18, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 29
/
Copy pathinstall.go
63 lines (59 loc) · 2.15 KB
/
install.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
package crds
import (
"sync"
"github.com/flanksource/karina/pkg/platform"
)
func Install(p *platform.Platform) error {
f := func() bool { return false }
crds := map[string]func() bool{
"cert-manager": f,
"service-monitor": f,
"canary-checker": p.CanaryChecker.IsDisabled,
"template-operator": p.TemplateOperator.IsDisabled,
"git-operator": p.GitOperator.IsDisabled,
"platform-operator": p.PlatformOperator.IsDisabled,
"prometheus": f,
"sealed-secrets": p.SealedSecrets.IsDisabled,
"helm-operator": p.GitOperator.IsDisabled,
"antrea": p.Antrea.IsDisabled,
"calico": p.Calico.IsDisabled,
"argocd-operator": p.ArgocdOperator.IsDisabled,
"argo-rollouts": p.ArgoRollouts.IsDisabled,
"eck": p.ECK.IsDisabled,
"grafana-operator": p.Monitoring.IsDisabled,
"mongo-db": p.Keptn.IsDisabled, // TODO: Make this depends on MongoDB Operator instead of Keptn once MongoDB Operator is implemented: https://github.com/flanksource/karina/issues/658
"mongodb-operator": p.MongodbOperator.IsDisabled,
"gatekeeper": p.Gatekeeper.IsDisabled,
"postgresql-db": p.PostgresOperator.IsDisabled,
"postgres-operator": p.PostgresOperator.IsDisabled,
"rabbitmq": p.RabbitmqOperator.IsDisabled,
"redis": p.RedisOperator.IsDisabled,
"redis-db": p.RedisOperator.IsDisabled,
"tekton": p.Tekton.IsDisabled,
"velero": p.Velero.IsDisabled,
"vpa": p.VPA.IsDisabled,
"kiosk": p.Kiosk.IsDisabled,
"kpack": p.Kpack.IsDisabled,
"konfig-manager": p.KonfigManager.IsDisabled,
"istio": p.IstioOperator.IsDisabled,
"logs-exporter": p.LogsExporter.IsDisabled,
"karina-operator": p.KarinaOperator.IsDisabled,
"flux": func() bool { return !p.Flux.Enabled },
}
wg := sync.WaitGroup{}
for crd, fn := range crds {
if fn() {
continue
}
wg.Add(1)
_crd := crd
go func() {
defer wg.Done()
if err := p.ApplySpecs("", "crd/"+_crd+".yaml"); err != nil {
p.Errorf("Error creating CRD: %s: %v", _crd, err)
}
}()
}
wg.Wait()
return nil
}