-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathHelmfile_gke.yaml
154 lines (141 loc) · 4.15 KB
/
Helmfile_gke.yaml
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
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
repositories:
- name: kyverno
url: https://kyverno.github.io/kyverno/
- name: prometheus-opencost-exporter
url: https://prometheus-community.github.io/helm-charts
- name: grafana
url: https://grafana.github.io/helm-charts
- name: vpa
url: https://charts.fairwinds.com/stable
- name: cert-manager
url: https://charts.jetstack.io
- name: fairwinds-stable
url: https://charts.fairwinds.com/stable
---
helmDefaults:
wait: true
timeout: 1200
---
environments:
default:
values:
- "./config/common/enabled.yaml" # edit this to specify which of the releases to install
---
releases:
- name: kyverno
version: "3.2.6"
chart: kyverno/kyverno
condition: kyverno.enabled
namespace: finops-stack
values:
- "./config/common/kyverno-values.yaml"
- "./config/{{ requiredEnv "HOST_ENV" }}/kyverno-values.yaml"
- name: finops-policies
version: "0.1.0"
chart: "../charts/finops-policies"
condition: finops-policies.enabled
namespace: finops-stack
disableValidationOnInstall: true
needs:
- kyverno
- name: cert-manager
version: v1.15.3
chart: cert-manager/cert-manager
condition: cert-manager.enabled
namespace: cert-manager
values:
- "./config/common/cert-manager-values.yaml"
- "./config/{{ requiredEnv "HOST_ENV" }}/cert-manager-values.yaml"
- global:
leaderElection:
namespace: cert-manager
commonLabels:
cost-center-label: "xyz"
- serviceAccount:
annotations:
{{ requiredEnv "CERT_MANAGER_SA_ANNOTATION" }}
- name: cert-manager-config
version: "0.1.0"
chart: "../charts/cert-manager-config"
condition: cert-manager.enabled
namespace: finops-stack
disableValidationOnInstall: true
needs:
- cert-manager/cert-manager
values:
- email: {{ requiredEnv "CERT_MANAGER_EMAIL" }}
- gcpProjectID: {{ requiredEnv "GCP_PROJECT" }}
- grafanaTLSCert:
hostname: {{ requiredEnv "GRAFANA_FQDN" }}
- name: grafana
version: "8.4.7"
chart: grafana/grafana
condition: grafana.enabled
namespace: finops-stack
values:
- "./config/common/grafana-values.yaml"
- "./config/{{ requiredEnv "HOST_ENV" }}/grafana-values.yaml"
- adminUser: {{ requiredEnv "GRAFANA_ADMIN_USER" }}
- adminPassword: {{ requiredEnv "GRAFANA_ADMIN_PW" }}
- serviceAccount:
annotations:
{{ requiredEnv "GRAFANA_SA_ANNOTATION" }}
# If you don't require ingress via an FQDN remove this ingress section
- ingress:
enabled: {{ requiredEnv "GRAFANA_INGRESS" }}
annotations:
kubernetes.io/ingress.global-static-ip-name: {{ requiredEnv "GRAFANA_PUBLIC_IP_NAME" }}
hosts:
- {{ requiredEnv "GRAFANA_FQDN" }}
# If you don't require https access to the Grafana dashboard remove this tls section
tls:
- secretName: {{ requiredEnv "GRAFANA_FQDN" }}-tls
hosts:
- {{ requiredEnv "GRAFANA_FQDN" }}
needs:
- cert-manager/cert-manager
- name: vpa
version: "4.5.0"
chart: "vpa/vpa"
condition: vpa.enabled
namespace: finops-stack
values:
- "./config/common/vpa-values.yaml"
- name: gmp-proxy
version: "0.1.0"
chart: "../charts/gmp-proxy"
condition: gmp-proxy.enabled
namespace: finops-stack
needs:
- grafana
values:
- "./config/common/gmp-proxy-values.yaml"
- gmpProjectId: {{ requiredEnv "GCP_PROJECT" }}
- name: prometheus-opencost-exporter
version: "0.1.1"
chart: "prometheus-opencost-exporter/prometheus-opencost-exporter"
condition: opencost-exporter.enabled
namespace: finops-stack
needs:
- gmp-proxy
values:
- "./config/common/prometheus-opencost-exporter-values.yaml"
- "./config/{{ requiredEnv "HOST_ENV" }}/prometheus-opencost-exporter-values.yaml"
- opencost:
exporter:
cloudProviderApiKey: {{ requiredEnv "CSP_API_KEY" }}
- name: finops-stack-opencost-templates
version: "0.1.0"
chart: "../charts/opencost-config"
condition: opencost-templates.enabled
namespace: finops-stack
disableValidationOnInstall: true
values:
- "./config/{{ requiredEnv "HOST_ENV" }}/opencost-templates-values.yaml"
- name: goldilocks
version: "9.0.0"
chart: fairwinds-stable/goldilocks
condition: goldilocks.enabled
namespace: finops-stack
values:
- "./config/common/goldilocks-values.yaml"