prow/config/jobs.go
func (br Brancher) Intersects(other Brancher) bool {
	if br.RunsAgainstAllBranch() || other.RunsAgainstAllBranch() {
		return true
	}
	if len(br.Branches) > 0 {
		baseBranches := sets.NewString(br.Branches...)
		if len(other.Branches) > 0 {
			otherBranches := sets.NewString(other.Branches...)
			if baseBranches.Intersection(otherBranches).Len() > 0 {
				return true
			}
			return false
		}

		// Actually test our branches against the other brancher - if there are regex skip lists, simple comparison
		// is insufficient.
		for _, b := range baseBranches.List() {
			if other.ShouldRun(b) {
				return true
			}
		}
		return false
	}
	if len(other.Branches) == 0 {
		// There can only be one Brancher with skip_branches.
		return true
	}
	return other.Intersects(br)
}
func (br Brancher) Intersects(other Brancher) bool {
	if br.RunsAgainstAllBranch() || other.RunsAgainstAllBranch() {
		return true
	}
	if len(br.Branches) > 0 {
		baseBranches := sets.NewString(br.Branches...)
		if len(other.Branches) > 0 {
			otherBranches := sets.NewString(other.Branches...)
			if baseBranches.Intersection(otherBranches).Len() > 0 {
				return true
			}
			return false
		}

		// Actually test our branches against the other brancher - if there are regex skip lists, simple comparison
		// is insufficient.
		for _, b := range baseBranches.List() {
			if other.ShouldRun(b) {
				return true
			}
		}
		return false
	}
	if len(other.Branches) == 0 {
		// There can only be one Brancher with skip_branches.
		return true
	}
	return other.Intersects(br)
}
func ( br Brancher ) Intersects ( other Brancher ) bool { if br . RunsAgainstAllBranch ( ) || other . RunsAgainstAllBranch ( ) { return true } if len ( br . Branches ) > 0 { baseBranches := sets . NewString ( br . Branches ... ) if len ( other . Branches ) > 0 { otherBranches := sets . NewString ( other . Branches ... ) if baseBranches . Intersection ( otherBranches ) . Len ( ) > 0 { return true } return false } // Actually test our branches against the other brancher - if there are regex skip lists, simple comparison // is insufficient. for _ , b := range baseBranches . List ( ) { if other . ShouldRun ( b ) { return true } } return false } if len ( other . Branches ) == 0 { // There can only be one Brancher with skip_branches. return true } return other . Intersects ( br ) }
// Intersects checks if other Brancher would trigger for the same branch.
Intersects checks if other Brancher would trigger for the same branch .