in linter/main.go [176:203]
func PostsubmitMakeTargetCheck(jc *JobConstants) postsubmitCheck {
return postsubmitCheck(func(postsubmitConfig config.Postsubmit, fileContentsString string) (bool, int, string) {
if strings.Contains(postsubmitConfig.JobBase.Name, "release") {
return true, 0, ""
}
if strings.Contains(postsubmitConfig.JobBase.Name, "announcement") {
return true, 0, ""
}
if regexp.MustCompile("build-1-2[1-9].*postsubmit").MatchString(postsubmitConfig.JobBase.Name) {
return true, 0, ""
}
jobMakeTargetMatches := regexp.MustCompile(`make (\w+[-\w]*)`).FindStringSubmatch(strings.Join(postsubmitConfig.JobBase.Spec.Containers[0].Command, " "))
jobMakeTarget := jobMakeTargetMatches[len(jobMakeTargetMatches)-1]
makeCommandLineNo := findLineNumber(fileContentsString, "make")
if strings.HasPrefix(postsubmitConfig.JobBase.Name, "build-") {
if jobMakeTarget != jc.PostsubmitConformanceMakeTarget {
return false, makeCommandLineNo, fmt.Sprintf(`Invalid make target, please use the "%s" target`, jc.PostsubmitConformanceMakeTarget)
}
} else if strings.Contains(postsubmitConfig.JobBase.Name, "attribution") {
if jobMakeTarget != jc.AttributionMakeTarget {
return false, makeCommandLineNo, fmt.Sprintf(`Invalid make target, please use the "%s" target`, jc.AttributionMakeTarget)
}
} else if jobMakeTarget != jc.DefaultMakeTarget {
return false, makeCommandLineNo, fmt.Sprintf(`Invalid make target, please use the "%s" target`, jc.DefaultMakeTarget)
}
return true, 0, ""
})
}