in templating/base_render_options.go [83:124]
func OverrideValuesWithBuildInfo(c1 *Config, c2 *Config, opts *BaseRenderOptions) (Values, error) {
base := map[string]interface{}{
"Build": map[string]interface{}{
"ID": opts.ID,
},
"Run": map[string]interface{}{
"ID": opts.ID,
"Commit": opts.Commit,
"Repository": opts.Repository,
"Branch": opts.Branch,
"GitTag": opts.GitTag,
"TriggeredBy": opts.TriggeredBy,
"Registry": opts.Registry,
"RegistryName": parseRegistryName(opts.Registry),
"Date": opts.Date.Format("20060102-150405z"), // yyyyMMdd-HHmmssz
"SharedVolume": opts.SharedVolume,
"OS": opts.OS,
"OSVersion": opts.OSVersion,
"Architecture": opts.Architecture,
"TaskName": opts.TaskName,
},
}
vals, err := OverrideValues(c1, c2)
if err != nil {
return base, err
}
valsJSON, err := json.Marshal(vals)
if err != nil {
return base, errors.Wrap(err, "failed to serialize Values")
}
runJSON, err := json.Marshal(base["Run"])
if err != nil {
return base, errors.Wrap(err, "failed to serialize Run")
}
base["Values"] = vals
base["ValuesJSON"] = shellQuote(string(valsJSON))
base["RunJSON"] = shellQuote(string(runJSON))
return base, nil
}