Skip to content

Commit 9f88bab

Browse files
committed
Loop through ownerReferences to find the rollout reference.
If we pass belongs to rollout check, we know there is a rollout to find. Signed-off-by: mitchell amihod <[email protected]>
1 parent 64f8285 commit 9f88bab

File tree

2 files changed

+13
-2
lines changed

2 files changed

+13
-2
lines changed

experiments/experiment.go

+7-1
Original file line numberDiff line numberDiff line change
@@ -420,7 +420,13 @@ func (ec *experimentContext) reconcileAnalysisRun(analysis v1alpha1.ExperimentAn
420420
// This makes sure the rollout gets the Analysis Run events, which will then trigger any subscribed notifications
421421
// #4009
422422
if experimentutil.BelongsToRollout(ec.ex) {
423-
roRef := ec.ex.OwnerReferences[0]
423+
var roRef metav1.OwnerReference
424+
for _, owner := range ec.ex.OwnerReferences {
425+
if owner.Kind == "Rollout" {
426+
roRef = owner
427+
}
428+
}
429+
424430
rollout, err := ec.argoProjClientset.ArgoprojV1alpha1().Rollouts(ec.ex.Namespace).Get(context.TODO(), roRef.Name, metav1.GetOptions{})
425431
if err != nil {
426432
ec.log.Warnf("Failed to get parent Rollout of the Experiment '%s': %v", roRef.Name, err)

utils/experiment/experiment.go

+6-1
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,12 @@ func BelongsToRollout(experiment *v1alpha1.Experiment) bool {
2323
return false
2424
}
2525

26-
return experiment.OwnerReferences[0].Kind == "Rollout"
26+
for _, owner := range experiment.OwnerReferences {
27+
if owner.Kind == "Rollout" {
28+
return true
29+
}
30+
}
31+
return false
2732
}
2833

2934
func HasFinished(experiment *v1alpha1.Experiment) bool {

0 commit comments

Comments
 (0)