Skip to content

Commit bd0cdc2

Browse files
committed
resolve comments
1 parent f5b474a commit bd0cdc2

File tree

3 files changed

+16
-34
lines changed

3 files changed

+16
-34
lines changed

api/v2/status.go

Lines changed: 0 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -14,29 +14,9 @@ package v2
1414

1515
import (
1616
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
17-
"sigs.k8s.io/controller-runtime/pkg/client"
1817
)
1918

2019
// ApisixStatus is the status report for Apisix ingress Resources
2120
type ApisixStatus struct {
2221
Conditions []metav1.Condition `json:"conditions,omitempty" yaml:"conditions,omitempty"`
2322
}
24-
25-
func GetStatus(object client.Object) ApisixStatus {
26-
switch t := object.(type) {
27-
case *ApisixConsumer:
28-
return t.Status
29-
case *ApisixGlobalRule:
30-
return t.Status
31-
case *ApisixPluginConfig:
32-
return t.Status
33-
case *ApisixRoute:
34-
return t.Status
35-
case *ApisixTls:
36-
return t.Status
37-
case *ApisixUpstream:
38-
return t.Status
39-
default:
40-
return ApisixStatus{}
41-
}
42-
}

internal/controller/apisixroute_controller.go

Lines changed: 2 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -149,16 +149,9 @@ func (r *ApisixRouteReconciler) processApisixRoute(ctx context.Context, tc *prov
149149

150150
// check secret
151151
for _, plugin := range http.Plugins {
152-
if !plugin.Enable {
152+
if !plugin.Enable || plugin.Config == nil || plugin.SecretRef == "" {
153153
continue
154154
}
155-
if plugin.Config == nil {
156-
continue
157-
}
158-
if plugin.SecretRef == "" {
159-
continue
160-
}
161-
162155
var (
163156
secret = corev1.Secret{
164157
ObjectMeta: metav1.ObjectMeta{
@@ -455,7 +448,7 @@ func (r *ApisixRouteReconciler) updateStatus(ar *apiv2.ApisixRoute, err error) {
455448
SetApisixRouteConditionAccepted(&ar.Status, ar.GetGeneration(), err)
456449
r.Updater.Update(status.Update{
457450
NamespacedName: utils.NamespacedName(ar),
458-
Resource: ar.DeepCopy(),
451+
Resource: &apiv2.ApisixRoute{},
459452
Mutator: status.MutatorFunc(func(obj client.Object) client.Object {
460453
cp := obj.(*apiv2.ApisixRoute).DeepCopy()
461454
cp.Status = ar.Status

test/e2e/framework/assertion.go

Lines changed: 14 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ import (
1616
"context"
1717
"fmt"
1818
"log"
19+
"reflect"
1920
"slices"
2021
"strings"
2122
"time"
@@ -97,13 +98,21 @@ func PollUntilHTTPRoutePolicyHaveStatus(cli client.Client, timeout time.Duration
9798
}
9899

99100
func APIv2MustHaveCondition(t testing.TestingT, cli client.Client, timeout time.Duration, nn types.NamespacedName, obj client.Object, cond metav1.Condition) {
100-
err := PollUntilAPIv2MustHaveStatus(cli, timeout, nn, obj, func(object client.Object) bool {
101-
conditions := apiv2.GetStatus(object).Conditions
102-
if err := kubernetes.ConditionsHaveLatestObservedGeneration(object, conditions); err != nil {
101+
f := func(object client.Object) bool {
102+
if !apiv2.Is(object) {
103103
return false
104104
}
105-
return findConditionInList(conditions, cond)
106-
})
105+
value := reflect.Indirect(reflect.ValueOf(object))
106+
status, ok := value.FieldByName("Status").Interface().(apiv2.ApisixStatus)
107+
if !ok {
108+
return false
109+
}
110+
if err := kubernetes.ConditionsHaveLatestObservedGeneration(object, status.Conditions); err != nil {
111+
return false
112+
}
113+
return findConditionInList(status.Conditions, cond)
114+
}
115+
err := PollUntilAPIv2MustHaveStatus(cli, timeout, nn, obj, f)
107116

108117
require.NoError(t, err, "error waiting status to have a Condition matching %+v", nn, cond)
109118
}

0 commit comments

Comments
 (0)