in pkg/build/inline.go [396:440]
func (n *Inliner) rawTextFiles(ctx context.Context, fileGroups []bundle.FileGroup, ref bundle.ComponentReference, componentPath *url.URL) ([]*unstructured.Unstructured, error) {
var newObjs []*unstructured.Unstructured
for _, fg := range fileGroups {
fgName := fg.Name
if fgName == "" {
return nil, fmt.Errorf("error reading raw text file group object for component %v; name was empty ", ref)
}
m := newConfigMapMaker(fgName)
for _, cf := range fg.Files {
furl, err := cf.ParsedURL()
if err != nil {
return nil, err
}
cf.URL = makeAbsWithParent(componentPath, furl).String()
text, err := n.readFile(ctx, cf)
if err != nil {
return nil, fmt.Errorf("error reading raw text file for component %q: %v", ref, err)
}
dataName := filepath.Base(cf.URL)
if fg.AsBinary {
m.addBinaryData(dataName, text)
} else {
m.addData(dataName, string(text))
}
}
if len(m.cfgMap.Data) > 0 && len(m.cfgMap.BinaryData) > 0 {
return nil, fmt.Errorf("both and binary data were filled out for group: %v", fg)
}
for key, value := range fg.Annotations {
m.cfgMap.ObjectMeta.Annotations[key] = value
}
for key, value := range fg.Labels {
m.cfgMap.ObjectMeta.Labels[key] = value
}
uns, err := m.toUnstructured()
if err != nil {
return nil, fmt.Errorf("for component %v and file group %q, %v", ref, fgName, err)
}
newObjs = append(newObjs, uns)
}
return newObjs, nil
}