#helmfile (2022-09)
Questions and discussion around helmfile https://github.com/roboll/helmfile and https://github.com/cloudposse/helmfiles
Archive: https://archive.sweetops.com/helmfile/
2022-09-04
I did a small blog on ingress-nginx + cert-manager + external-dns on GKE w/ Cloud DNS deployed w helmfile
, and using Dgraph for testing gRPC traffic.
https://joachim8675309.medium.com/gke-with-grpc-and-ingress-nginx-644730915677
Using gRPC with ingress-nginx add-on with GKE
2022-09-06
Hi, what is the best solution for
• sharing templates between multiple Helmfiles in different repos, and
• sharing a default set of releases with dependencies between eachother, and
• retaining the ability to override/change one or more of those releases (i.e. no sub-helmfile usage, since sub-helmfiles don’t get exposed to their parent) ? All I could come up with so far is this, which seems a bit hacky:
{{ $_ := exec "git" (list "clone" "--depth=1" "<https://github.com/myorg/common.git>") }}
hooks:
- events: ["cleanup"]
showlogs: true
command: "rm"
args: ["-rf", "common"]
bases:
- common/environments.yaml
---
{{ tpl (readFile "common/templates.yaml") . }}
releases:
{{ tpl (readFile "common/releases.yaml") . }}
We are trying to figure this out too. You can also use helmfiles
to include sub-helmfiles. However, in that approach, you will have to pass in environment values manually as the environment is not propagated to sub-helmfiles. Example,
...
helmfiles:
- path: common/release1.yaml
values:
- environments/common.yaml
- environments/dev.yaml
2022-09-15
Are there any articles of best practices on how to deal with timed out waiting for condition
errors I would be amazing to at least have a message that displays when that error occurs to point application engineering on the right direction
2022-09-17
2022-09-23
My helmfile is failing when trying to template cilium with serviceMonitor enabled (CRDs are installed).
Error: execution error at (cilium/templates/validate.yaml:21:9): Service Monitor requires monitoring.coreos.com/v1 CRDs. Please refer to <https://github.com/prometheus-operator/prometheus-operator/blob/master/example/prometheus-operator-crd/monitoring.coreos.com_servicemonitors.yaml>
because of that validation check: https://github.com/cilium/cilium/blob/v1.12.2/install/kubernetes/cilium/templates/validate.yaml#L19-L22 Also setting one of the following didn’t helped
disableOpenAPIValidation: true
disableValidationOnInstall: true
disableValidation: true
skipDeps: true
Any idea how to solve? Sync nevertheless is working… Only “template” and “diff” is affected. But template is used by argocd… Also it’s not possible to use any jsonPatch or strategicMetgePatches, i guess because of the same reason?
{{- if and .Values.prometheus.enabled (or .Values.prometheus.serviceMonitor.enabled .Values.operator.prometheus.serviceMonitor.enabled) }}
{{- if not (.Capabilities.APIVersions.Has "monitoring.coreos.com/v1") }}
{{ fail "Service Monitor requires monitoring.coreos.com/v1 CRDs. Please refer to <https://github.com/prometheus-operator/prometheus-operator/blob/master/example/prometheus-operator-crd/monitoring.coreos.com_servicemonitors.yaml>" }}
{{- end }}