in templating/base_render_options.go [184:220]
func loadSteps(template *Template, opts *BaseRenderOptions) (Values, error) {
// return empty values list for an empty template.
if len(template.GetData()) == 0 {
return nil, nil
}
var err error
config := &Config{}
if opts.ValuesFile != "" {
if config, err = LoadConfig(opts.ValuesFile); err != nil {
return nil, err
}
} else if opts.Base64EncodedValuesFile != "" {
if config, err = DecodeConfig(opts.Base64EncodedValuesFile); err != nil {
return nil, err
}
}
setConfig := &Config{}
if len(opts.TemplateValues) > 0 {
var rawVals string
rawVals, err = parseValues(opts.TemplateValues)
if err != nil {
return nil, err
}
setConfig = &Config{RawValue: rawVals, Values: map[string]*Value{}}
}
mergedVals, err := OverrideValuesWithBuildInfo(config, setConfig, opts)
if err != nil {
return nil, fmt.Errorf("failed to override values: %v", err)
}
return mergedVals, nil
}