diff --git a/pkg/chart/loader/load.go b/pkg/chart/loader/load.go index 04105f9ac..f04c0e9b3 100644 --- a/pkg/chart/loader/load.go +++ b/pkg/chart/loader/load.go @@ -104,12 +104,12 @@ func LoadFiles(files []*BufferedFile) (*chart.Chart, error) { // Deprecated: requirements.yaml is deprecated use Chart.yaml. // We will handle it for you because we are nice people case f.Name == "requirements.yaml": - if c.Metadata.APIVersion != chart.APIVersionV1 { - log.Printf("Warning: Dependencies are handled in Chart.yaml since apiVersion \"v2\". We recommend migrating dependencies to Chart.yaml.") - } if c.Metadata == nil { c.Metadata = new(chart.Metadata) } + if c.Metadata.APIVersion != chart.APIVersionV1 { + log.Printf("Warning: Dependencies are handled in Chart.yaml since apiVersion \"v2\". We recommend migrating dependencies to Chart.yaml.") + } if err := yaml.Unmarshal(f.Data, c.Metadata); err != nil { return c, errors.Wrap(err, "cannot load requirements.yaml") } diff --git a/pkg/chart/loader/load_test.go b/pkg/chart/loader/load_test.go index e36fd96a8..ea5a35560 100644 --- a/pkg/chart/loader/load_test.go +++ b/pkg/chart/loader/load_test.go @@ -58,6 +58,19 @@ func TestLoadV1(t *testing.T) { verifyDependenciesLock(t, c) } +func TestLoadFileV1(t *testing.T) { + l, err := Loader("testdata/frobnitz.v1.tgz") + if err != nil { + t.Fatalf("Failed to load testdata: %s", err) + } + c, err := l.Load() + if err != nil { + t.Fatalf("Failed to load testdata: %s", err) + } + verifyDependencies(t, c) + verifyDependenciesLock(t, c) +} + func TestLoadFile(t *testing.T) { l, err := Loader("testdata/frobnitz-1.2.3.tgz") if err != nil { diff --git a/pkg/chart/loader/testdata/frobnitz.v1.tgz b/pkg/chart/loader/testdata/frobnitz.v1.tgz new file mode 100644 index 000000000..6282f9b73 Binary files /dev/null and b/pkg/chart/loader/testdata/frobnitz.v1.tgz differ