func()

in k8s/go/pkg/resolver/resolver.go [456:485]


func (r *yamlResolver) resolveYAML(t io.Reader) ([]byte, error) {
	d := yaml.NewDecoder(t)
	buf := bytes.NewBuffer(nil)
	e := yaml.NewEncoder(buf)
	defer e.Close()
	for {
		y := yamlDoc{}
		err := d.Decode(&y)
		if err != nil && err != io.EOF {
			return nil, err
		}
		done := err == io.EOF
		o, err := r.resolveItem(y.val())
		if err != nil {
			return nil, fmt.Errorf("error resolving YAML template: %v", err)
		}
		if o != nil {
			r.numDocs++
			err = e.Encode(o)
			if err != nil {
				return nil, err
			}
		}
		if done {
			break
		}
	}

	return buf.Bytes(), nil
}