func replaceCondition()

in internal/controller/authproxyworkload_controller.go [451:470]


func replaceCondition(conds []*metav1.Condition, newC *metav1.Condition) []*metav1.Condition {
	for i := range conds {
		c := conds[i]
		if c.Type != newC.Type {
			continue
		}

		if conds[i].Status == newC.Status && !conds[i].LastTransitionTime.IsZero() {
			newC.LastTransitionTime = conds[i].LastTransitionTime
		} else {
			newC.LastTransitionTime = metav1.NewTime(time.Now())
		}
		conds[i] = newC
		return conds
	}

	newC.LastTransitionTime = metav1.NewTime(time.Now())
	conds = append(conds, newC)
	return conds
}