Skip to content

"Error: unsupported format" with Helm 2.15.0 and 2.15.1

For some reason the CI pipeline doesn't work anymore for installing applications.

helmfile apply fails where it runs helm upgrade --install. For example, see: https://open.greenhost.net/openappstack/openappstack/-/jobs/3107

I also ran this with --log-level debug to get some more info (I wished...)

TASK [apps : Apply cert-manager helmfile] *********************************************************************************************************************************************
Monday 21 October 2019  11:44:30 +0000 (0:00:00.299)       0:08:52.249 ******** 
fatal: [bugtest.openappstack.net]: FAILED! => changed=true 
  cmd: |-
    set -e -x -o pipefail
    /usr/local/bin/helmfile -b /snap/bin/helm -e oas -f /var/lib/OpenAppStack/source/helmfiles/helmfile.d/05-cert-manager.yaml apply --suppress-secrets | sed 's/\x1B\[[0-9;]*[JKmsu]//g' >> /var/log/OpenAppStack/helmfile.log
  delta: '0:00:06.706631'
  end: '2019-10-21 11:44:37.049311'
  msg: non-zero return code
  rc: 1
  start: '2019-10-21 11:44:30.342680'
  stderr: |-
    + /usr/local/bin/helmfile -b /snap/bin/helm -e oas -f /var/lib/OpenAppStack/source/helmfiles/helmfile.d/05-cert-manager.yaml apply --suppress-secrets
    + sed 's/\x1B\[[0-9;]*[JKmsu]//g'
    Adding repo jetstack https://charts.jetstack.io
    "jetstack" has been added to your repositories
  
    Updating repo
    Hang tight while we grab the latest from your chart repositories...
    ...Skip local chart repository
    ...Successfully got an update from the "jetstack" chart repository
    ...Successfully got an update from the "stable" chart repository
    Update Complete.
  
    Comparing oas-test-cert-manager jetstack/cert-manager
    Upgrading jetstack/cert-manager
    in /var/lib/OpenAppStack/source/helmfiles/helmfile.d/05-cert-manager.yaml: failed processing release oas-test-cert-manager: helm exited with status 1:
      Error: unsupported format
  stderr_lines: <omitted>
  stdout: ''
  stdout_lines: <omitted>

So I ran helm upgrade --install with the --debug flag, to get some more info:

:~/.helm# /snap/bin/helm --debug upgrade --install --reset-values oas-test-cert-manager jetstack/cert-manager --version 0.9.1 --namespace cert-manager --values /tmp/values300582802
[debug] Created tunnel using local port: '39435'

[debug] SERVER: "127.0.0.1:39435"

[debug] Fetched jetstack/cert-manager to /root/.helm/cache/archive/cert-manager-v0.9.1.tgz

Release "oas-test-cert-manager" does not exist. Installing it now.
[debug] CHART PATH: /root/.helm/cache/archive/cert-manager-v0.9.1.tgz

Error: unsupported format 

Fuck you, helm. 🖕

This is where the error originates in the helm repo:

./cmd/helm/printer.go

func write(out io.Writer, ow outputWriter, format outputFormat) error {
        switch format {
        case outputTable:
                return ow.WriteTable(out)
        case outputJSON:
                return ow.WriteJSON(out)
        case outputYAML:
                return ow.WriteYAML(out)
        }
        return fmt.Errorf("unsupported format %s", format)
}

Seems like a helm bug, maybe? But that's pretty weird, because I'm not sure when we last updated...

Edited by Varac
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information