// findBuildTrigger finds the equivalent build trigger position in the provided array, or -1 if // no such build trigger exists. Equality only cares about the value of the From field. func findBuildTrigger(dst []buildapi.BuildTriggerPolicy, trigger buildapi.BuildTriggerPolicy) int { // make a copy for semantic equality if trigger.ImageChange != nil { trigger.ImageChange = &buildapi.ImageChangeTrigger{From: trigger.ImageChange.From} } for i, copied := range dst { // make a copy for semantic equality if copied.ImageChange != nil { copied.ImageChange = &buildapi.ImageChangeTrigger{From: copied.ImageChange.From} } if reflect.DeepEqual(copied, trigger) { return i } } return -1 }