func()

in internal/utils/controller/operation_helper.go [36:70]


func (ou OperationHelper) DiffAppDeployments(expected, actual []v1alpha1.AppDeployment,
	equals func(a, b v1alpha1.AppDeployment) bool) (added, removed, updated []v1alpha1.AppDeployment) {
	// Find added and updated AppDeployments.
	for _, e := range expected {
		found := false
		for _, a := range actual {
			if a.Name == e.Name {
				found = true
				if !equals(a, e) {
					updated = append(updated, a)
				}
				break
			}
		}
		if !found {
			added = append(added, e)
		}
	}

	// Find removed AppDeployments.
	for _, a := range actual {
		found := false
		for _, e := range expected {
			if a.Name == e.Name {
				found = true
				break
			}
		}
		if !found {
			removed = append(removed, a)
		}
	}

	return added, removed, updated
}