Merge pull request #8948 from gy-lehel/#7696

Signed-off-by: Matt Farina <matt@mattfarina.com>
pull/8961/head
Matt Farina 4 years ago committed by GitHub
commit a374fffdd9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -73,10 +73,11 @@ func LoadFiles(files []*BufferedFile) (*chart.Chart, error) {
c := new(chart.Chart) c := new(chart.Chart)
subcharts := make(map[string][]*BufferedFile) subcharts := make(map[string][]*BufferedFile)
// do not rely on assumed ordering of files in the chart and crash
// if Chart.yaml was not coming early enough to initialize metadata
for _, f := range files { for _, f := range files {
c.Raw = append(c.Raw, &chart.File{Name: f.Name, Data: f.Data}) c.Raw = append(c.Raw, &chart.File{Name: f.Name, Data: f.Data})
switch { if f.Name == "Chart.yaml" {
case f.Name == "Chart.yaml":
if c.Metadata == nil { if c.Metadata == nil {
c.Metadata = new(chart.Metadata) c.Metadata = new(chart.Metadata)
} }
@ -89,6 +90,13 @@ func LoadFiles(files []*BufferedFile) (*chart.Chart, error) {
if c.Metadata.APIVersion == "" { if c.Metadata.APIVersion == "" {
c.Metadata.APIVersion = chart.APIVersionV1 c.Metadata.APIVersion = chart.APIVersionV1
} }
}
}
for _, f := range files {
switch {
case f.Name == "Chart.yaml":
// already processed
continue
case f.Name == "Chart.lock": case f.Name == "Chart.lock":
c.Lock = new(chart.Lock) c.Lock = new(chart.Lock)
if err := yaml.Unmarshal(f.Data, &c.Lock); err != nil { if err := yaml.Unmarshal(f.Data, &c.Lock); err != nil {

Loading…
Cancel
Save