func (v *validator) ValidateReleaseJobs(deploymentManifest Manifest, releaseManager birel.Manager) error { errs := []error{} for idx, job := range deploymentManifest.Jobs { for templateIdx, template := range job.Templates { release, found := releaseManager.Find(template.Release) if !found { errs = append(errs, bosherr.Errorf("jobs[%d].templates[%d].release '%s' must refer to release in releases", idx, templateIdx, template.Release)) } else { _, found := release.FindJobByName(template.Name) if !found { errs = append(errs, bosherr.Errorf("jobs[%d].templates[%d] must refer to a job in '%s', but there is no job named '%s'", idx, templateIdx, release.Name(), template.Name)) } } } } if len(errs) > 0 { return bosherr.NewMultiError(errs...) } return nil }