#helmfile (2022-12)

https://github.com/helmfile/helmfile

Questions and discussion around helmfile https://github.com/roboll/helmfile and https://github.com/cloudposse/helmfiles

Archive: https://archive.sweetops.com/helmfile/

2022-12-01

Andrew Nazarov avatar
Andrew Nazarov

Does anybody validate helmfile’s values somehow? We’ve got a scenario when we want to make folks use only numbers as a value and we want to fail the ci pipeline if this requirement is not met. i.e.

myKey: 12345 # valid

myKey: qwerty # not valid

I know that something like that was added to Helm (https://www.arthurkoziel.com/validate-helm-chart-values-with-json-schemas/), but we are interested in helmfile’s values validation, not Helm’s.

Andrew Nazarov avatar
Andrew Nazarov

Gonna try cue lang for this

Jim Conner avatar
Jim Conner

this is a mildly confusing question because, well, helmfile uses helm on the backend.

Jim Conner avatar
Jim Conner

I suppose you mean that you want to validate what helmfile is using in your setup and not what will be used for helm, but ultimately the point is that helm gets the correct stuff, so it seems like you could just use helm’s validation methods?

Andrew Nazarov avatar
Andrew Nazarov

The thing is that some helmfile values (Environment values) won’t be translated into Helm values therefore in some cases we can’t validate them on a Helm’s level.

I’ve tried cue lang and it’s a viable solution for us.

2022-12-02

johnny avatar

Hey all, is there a way to capture the helmfile deployment REVISION number within and use it within a values.yaml.gotmpl ?

yxxhero avatar
yxxhero

@johnny REVISION? helm revision?

johnny avatar

@yxxhero yea. I’d like to use it as a tag for datadog.

tommy avatar

That data is out of helm itself. It is stored on k8s. If you want to track deployments, you could try gitops tools like flux and argocd, then deployment is tracked by git revision.

2022-12-07

2022-12-10

2022-12-13

Brandon avatar
Brandon

helmfile template takes a long time to run for my project. We have a parent helmfile which includes many sub helmfiles (~20). Many of the helmfiles add the same repos, so we spend a lot of time building deps, i.e.

Building dependency release=releaseA, chart=<my local chart>
Hang tight while we grab the latest from your chart repositories...
...Successfully got an update from the "<some chart repo here>" chart repository

And this is repeated for the exact same deps in each of our 20+ sub helmfiles.

Any advice for reducing the time that helmfile template takes in our parent helmfile?

Erik Osterman (Cloud Posse) avatar
Erik Osterman (Cloud Posse)

more horse power?

Brandon avatar
Brandon

Haha, we have plenty of that! It seems like a waste to have to rebuild the same deps for every sub helmfile. I think it would be best if they were built once and reused, but if that’s not possible I’m wondering about other ways to speed up the helmfile template process

voron avatar

We use similar staff in our projects for a long time

{{ if has (env "UPDATE_REPOS" | default "no") (list "y" "Y" "yes" "YES" "Yes" "True" "true") }}
repositories:
  - name: prometheus-community
    url: <https://prometheus-community.github.io/helm-charts>
  - name: dysnix
    url: <https://dysnix.github.io/charts/>
  - name: bitnami
    url: <https://charts.bitnami.com/bitnami>
{{- end }}

It works fine with manual helmfile execs, but it will save nothing for CI/CD usually.

Brandon avatar
Brandon

Thank you @voron – is that effectively the same as --skip-deps locally?

voron avatar

No, it’s just to stop helmfile from refreshing remote helm repos by default. It doesn’t affect chart dependencies.

2022-12-14

yxxhero avatar
yxxhero

https://github.com/helmfile/helmfile/releases/tag/v0.149.0 released. enjoy it.

New feature
1. Declare the use of --reuse-values in helmDefaults (#527)
2. Pass helmfile.yaml via stdin using -f - (#520)
3. The secrets field now accept go-getter URLs as well (#560)
4. Declare the use of Helm's --post-render via Helmfile flags, helmfile.yaml helmDefaults and release fields (#510)
5. Support helm v3.10.3 (#579)
3

2022-12-19

Balazs Varga avatar
Balazs Varga

hello all. I have a repo with expired cert and I set the

skipTLSVerifly: true

but I still cannot use helmfile apply. Any idea ?

yxxhero avatar
yxxhero

@Balazs Varga pelease show more logs by adding –debug. Thanks very much.

venkata.mutyala avatar
venkata.mutyala

Verify? Or verifly? Is that a typo?

yxxhero avatar
yxxhero

maybe. I will ensure it.

yxxhero avatar
yxxhero

@venkata.mutyala good eyes. skipTLSVerify. Thanks.

venkata.mutyala avatar
venkata.mutyala

Hahaha awesome.

Balazs Varga avatar
Balazs Varga

waas typo in slack

    keyboard_arrow_up