pull/10124/merge
Raphaël Pinson 4 years ago committed by GitHub
commit 2fc94abfe3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -17,13 +17,14 @@ limitations under the License.
package values
import (
"io"
"io/ioutil"
"net/url"
"os"
"strings"
"github.com/pkg/errors"
"sigs.k8s.io/yaml"
"k8s.io/apimachinery/pkg/util/yaml"
"helm.sh/helm/v3/pkg/getter"
"helm.sh/helm/v3/pkg/strvals"
@ -43,18 +44,25 @@ func (opts *Options) MergeValues(p getter.Providers) (map[string]interface{}, er
// User specified a values files via -f/--values
for _, filePath := range opts.ValueFiles {
currentMap := map[string]interface{}{}
bytes, err := readFile(filePath, p)
if err != nil {
return nil, err
}
if err := yaml.Unmarshal(bytes, &currentMap); err != nil {
return nil, errors.Wrapf(err, "failed to parse %s", filePath)
decoder := yaml.NewYAMLOrJSONDecoder(strings.NewReader(string(bytes)), 4096)
for {
currentMap := map[string]interface{}{}
err := decoder.Decode(&currentMap)
if err == io.EOF {
break
} else if err != nil {
return nil, errors.Wrapf(err, "failed to parse %s", filePath)
}
// Merge with the previous map
base = mergeMaps(base, currentMap)
}
// Merge with the previous map
base = mergeMaps(base, currentMap)
}
// User specified a value via --set

Loading…
Cancel
Save