Skip to content

Commit 531c0db

Browse files
chore: Remove support for deprecated extensions APIs (argoproj#381)
* chore: Remove support for deprecated extensions APIs Signed-off-by: Yuan Tang <[email protected]> * Add back extensions Ingress Signed-off-by: Yuan Tang <[email protected]>
1 parent 61c0cc7 commit 531c0db

13 files changed

+19
-429
lines changed

pkg/health/health.go

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -113,14 +113,8 @@ func GetHealthCheckFunc(gvk schema.GroupVersionKind) func(obj *unstructured.Unst
113113
}
114114
case "extensions":
115115
switch gvk.Kind {
116-
case kube.DeploymentKind:
117-
return getDeploymentHealth
118116
case kube.IngressKind:
119117
return getIngressHealth
120-
case kube.ReplicaSetKind:
121-
return getReplicaSetHealth
122-
case kube.DaemonSetKind:
123-
return getDaemonSetHealth
124118
}
125119
case "argoproj.io":
126120
switch gvk.Kind {

pkg/health/health_daemonset.go

Lines changed: 0 additions & 80 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,6 @@ import (
55

66
"github.com/argoproj/gitops-engine/pkg/utils/kube"
77
appsv1 "k8s.io/api/apps/v1"
8-
appsv1beta2 "k8s.io/api/apps/v1beta2"
9-
extv1beta1 "k8s.io/api/extensions/v1beta1"
108
"k8s.io/apimachinery/pkg/apis/meta/v1/unstructured"
119
"k8s.io/apimachinery/pkg/runtime"
1210
)
@@ -21,20 +19,6 @@ func getDaemonSetHealth(obj *unstructured.Unstructured) (*HealthStatus, error) {
2119
return nil, fmt.Errorf("failed to convert unstructured DaemonSet to typed: %v", err)
2220
}
2321
return getAppsv1DaemonSetHealth(&daemon)
24-
case appsv1beta2.SchemeGroupVersion.WithKind(kube.DaemonSetKind):
25-
var daemon appsv1beta2.DaemonSet
26-
err := runtime.DefaultUnstructuredConverter.FromUnstructured(obj.Object, &daemon)
27-
if err != nil {
28-
return nil, fmt.Errorf("failed to convert unstructured DaemonSet to typed: %v", err)
29-
}
30-
return getAppsv1beta1DaemonSetHealth(&daemon)
31-
case extv1beta1.SchemeGroupVersion.WithKind(kube.DaemonSetKind):
32-
var daemon extv1beta1.DaemonSet
33-
err := runtime.DefaultUnstructuredConverter.FromUnstructured(obj.Object, &daemon)
34-
if err != nil {
35-
return nil, fmt.Errorf("failed to convert unstructured DaemonSet to typed: %v", err)
36-
}
37-
return getExtv1beta1DaemonSetHealth(&daemon)
3822
default:
3923
return nil, fmt.Errorf("unsupported DaemonSet GVK: %s", gvk)
4024
}
@@ -71,67 +55,3 @@ func getAppsv1DaemonSetHealth(daemon *appsv1.DaemonSet) (*HealthStatus, error) {
7155
Status: HealthStatusHealthy,
7256
}, nil
7357
}
74-
75-
func getAppsv1beta1DaemonSetHealth(daemon *appsv1beta2.DaemonSet) (*HealthStatus, error) {
76-
// Borrowed at kubernetes/kubectl/rollout_status.go https://github.com/kubernetes/kubernetes/blob/5232ad4a00ec93942d0b2c6359ee6cd1201b46bc/pkg/kubectl/rollout_status.go#L110
77-
if daemon.Generation <= daemon.Status.ObservedGeneration {
78-
if daemon.Spec.UpdateStrategy.Type == appsv1beta2.OnDeleteDaemonSetStrategyType {
79-
return &HealthStatus{
80-
Status: HealthStatusHealthy,
81-
Message: fmt.Sprintf("daemon set %d out of %d new pods have been updated", daemon.Status.UpdatedNumberScheduled, daemon.Status.DesiredNumberScheduled),
82-
}, nil
83-
}
84-
if daemon.Status.UpdatedNumberScheduled < daemon.Status.DesiredNumberScheduled {
85-
return &HealthStatus{
86-
Status: HealthStatusProgressing,
87-
Message: fmt.Sprintf("Waiting for daemon set %q rollout to finish: %d out of %d new pods have been updated...", daemon.Name, daemon.Status.UpdatedNumberScheduled, daemon.Status.DesiredNumberScheduled),
88-
}, nil
89-
}
90-
if daemon.Status.NumberAvailable < daemon.Status.DesiredNumberScheduled {
91-
return &HealthStatus{
92-
Status: HealthStatusProgressing,
93-
Message: fmt.Sprintf("Waiting for daemon set %q rollout to finish: %d of %d updated pods are available...", daemon.Name, daemon.Status.NumberAvailable, daemon.Status.DesiredNumberScheduled),
94-
}, nil
95-
}
96-
} else {
97-
return &HealthStatus{
98-
Status: HealthStatusProgressing,
99-
Message: "Waiting for rollout to finish: observed daemon set generation less then desired generation",
100-
}, nil
101-
}
102-
return &HealthStatus{
103-
Status: HealthStatusHealthy,
104-
}, nil
105-
}
106-
107-
func getExtv1beta1DaemonSetHealth(daemon *extv1beta1.DaemonSet) (*HealthStatus, error) {
108-
// Borrowed at kubernetes/kubectl/rollout_status.go https://github.com/kubernetes/kubernetes/blob/5232ad4a00ec93942d0b2c6359ee6cd1201b46bc/pkg/kubectl/rollout_status.go#L110
109-
if daemon.Generation <= daemon.Status.ObservedGeneration {
110-
if daemon.Spec.UpdateStrategy.Type == extv1beta1.OnDeleteDaemonSetStrategyType {
111-
return &HealthStatus{
112-
Status: HealthStatusHealthy,
113-
Message: fmt.Sprintf("daemon set %d out of %d new pods have been updated", daemon.Status.UpdatedNumberScheduled, daemon.Status.DesiredNumberScheduled),
114-
}, nil
115-
}
116-
if daemon.Status.UpdatedNumberScheduled < daemon.Status.DesiredNumberScheduled {
117-
return &HealthStatus{
118-
Status: HealthStatusProgressing,
119-
Message: fmt.Sprintf("Waiting for daemon set %q rollout to finish: %d out of %d new pods have been updated...", daemon.Name, daemon.Status.UpdatedNumberScheduled, daemon.Status.DesiredNumberScheduled),
120-
}, nil
121-
}
122-
if daemon.Status.NumberAvailable < daemon.Status.DesiredNumberScheduled {
123-
return &HealthStatus{
124-
Status: HealthStatusProgressing,
125-
Message: fmt.Sprintf("Waiting for daemon set %q rollout to finish: %d of %d updated pods are available...", daemon.Name, daemon.Status.NumberAvailable, daemon.Status.DesiredNumberScheduled),
126-
}, nil
127-
}
128-
} else {
129-
return &HealthStatus{
130-
Status: HealthStatusProgressing,
131-
Message: "Waiting for rollout to finish: observed daemon set generation less then desired generation",
132-
}, nil
133-
}
134-
return &HealthStatus{
135-
Status: HealthStatusHealthy,
136-
}, nil
137-
}

pkg/health/health_deployment.go

Lines changed: 0 additions & 121 deletions
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,6 @@ import (
55

66
"github.com/argoproj/gitops-engine/pkg/utils/kube"
77
appsv1 "k8s.io/api/apps/v1"
8-
appsv1beta1 "k8s.io/api/apps/v1beta1"
9-
extv1beta1 "k8s.io/api/extensions/v1beta1"
108
"k8s.io/apimachinery/pkg/apis/meta/v1/unstructured"
119
"k8s.io/apimachinery/pkg/runtime"
1210
)
@@ -21,20 +19,6 @@ func getDeploymentHealth(obj *unstructured.Unstructured) (*HealthStatus, error)
2119
return nil, fmt.Errorf("failed to convert unstructured Deployment to typed: %v", err)
2220
}
2321
return getAppsv1DeploymentHealth(&deployment)
24-
case appsv1beta1.SchemeGroupVersion.WithKind(kube.DeploymentKind):
25-
var deployment appsv1beta1.Deployment
26-
err := runtime.DefaultUnstructuredConverter.FromUnstructured(obj.Object, &deployment)
27-
if err != nil {
28-
return nil, fmt.Errorf("failed to convert unstructured Deployment to typed: %v", err)
29-
}
30-
return getAppsv1beta1DeploymentHealth(&deployment)
31-
case extv1beta1.SchemeGroupVersion.WithKind(kube.DeploymentKind):
32-
var deployment extv1beta1.Deployment
33-
err := runtime.DefaultUnstructuredConverter.FromUnstructured(obj.Object, &deployment)
34-
if err != nil {
35-
return nil, fmt.Errorf("failed to convert unstructured Deployment to typed: %v", err)
36-
}
37-
return getExtv1beta1DeploymentHealth(&deployment)
3822
default:
3923
return nil, fmt.Errorf("unsupported Deployment GVK: %s", gvk)
4024
}
@@ -83,92 +67,6 @@ func getAppsv1DeploymentHealth(deployment *appsv1.Deployment) (*HealthStatus, er
8367
}, nil
8468
}
8569

86-
func getAppsv1beta1DeploymentHealth(deployment *appsv1beta1.Deployment) (*HealthStatus, error) {
87-
if deployment.Spec.Paused {
88-
return &HealthStatus{
89-
Status: HealthStatusSuspended,
90-
Message: "Deployment is paused",
91-
}, nil
92-
}
93-
// Borrowed at kubernetes/kubectl/rollout_status.go https://github.com/kubernetes/kubernetes/blob/5232ad4a00ec93942d0b2c6359ee6cd1201b46bc/pkg/kubectl/rollout_status.go#L80
94-
if deployment.Generation <= deployment.Status.ObservedGeneration {
95-
cond := getAppsv1beta1DeploymentCondition(deployment.Status, appsv1beta1.DeploymentProgressing)
96-
if cond != nil && cond.Reason == "ProgressDeadlineExceeded" {
97-
return &HealthStatus{
98-
Status: HealthStatusDegraded,
99-
Message: fmt.Sprintf("Deployment %q exceeded its progress deadline", deployment.Name),
100-
}, nil
101-
} else if deployment.Spec.Replicas != nil && deployment.Status.UpdatedReplicas < *deployment.Spec.Replicas {
102-
return &HealthStatus{
103-
Status: HealthStatusProgressing,
104-
Message: fmt.Sprintf("Waiting for rollout to finish: %d out of %d new replicas have been updated...", deployment.Status.UpdatedReplicas, *deployment.Spec.Replicas),
105-
}, nil
106-
} else if deployment.Status.Replicas > deployment.Status.UpdatedReplicas {
107-
return &HealthStatus{
108-
Status: HealthStatusProgressing,
109-
Message: fmt.Sprintf("Waiting for rollout to finish: %d old replicas are pending termination...", deployment.Status.Replicas-deployment.Status.UpdatedReplicas),
110-
}, nil
111-
} else if deployment.Status.AvailableReplicas < deployment.Status.UpdatedReplicas {
112-
return &HealthStatus{
113-
Status: HealthStatusProgressing,
114-
Message: fmt.Sprintf("Waiting for rollout to finish: %d of %d updated replicas are available...", deployment.Status.AvailableReplicas, deployment.Status.UpdatedReplicas),
115-
}, nil
116-
}
117-
} else {
118-
return &HealthStatus{
119-
Status: HealthStatusProgressing,
120-
Message: "Waiting for rollout to finish: observed deployment generation less then desired generation",
121-
}, nil
122-
}
123-
124-
return &HealthStatus{
125-
Status: HealthStatusHealthy,
126-
}, nil
127-
}
128-
129-
func getExtv1beta1DeploymentHealth(deployment *extv1beta1.Deployment) (*HealthStatus, error) {
130-
if deployment.Spec.Paused {
131-
return &HealthStatus{
132-
Status: HealthStatusSuspended,
133-
Message: "Deployment is paused",
134-
}, nil
135-
}
136-
// Borrowed at kubernetes/kubectl/rollout_status.go https://github.com/kubernetes/kubernetes/blob/5232ad4a00ec93942d0b2c6359ee6cd1201b46bc/pkg/kubectl/rollout_status.go#L80
137-
if deployment.Generation <= deployment.Status.ObservedGeneration {
138-
cond := getExtv1beta1DeploymentCondition(deployment.Status, extv1beta1.DeploymentProgressing)
139-
if cond != nil && cond.Reason == "ProgressDeadlineExceeded" {
140-
return &HealthStatus{
141-
Status: HealthStatusDegraded,
142-
Message: fmt.Sprintf("Deployment %q exceeded its progress deadline", deployment.Name),
143-
}, nil
144-
} else if deployment.Spec.Replicas != nil && deployment.Status.UpdatedReplicas < *deployment.Spec.Replicas {
145-
return &HealthStatus{
146-
Status: HealthStatusProgressing,
147-
Message: fmt.Sprintf("Waiting for rollout to finish: %d out of %d new replicas have been updated...", deployment.Status.UpdatedReplicas, *deployment.Spec.Replicas),
148-
}, nil
149-
} else if deployment.Status.Replicas > deployment.Status.UpdatedReplicas {
150-
return &HealthStatus{
151-
Status: HealthStatusProgressing,
152-
Message: fmt.Sprintf("Waiting for rollout to finish: %d old replicas are pending termination...", deployment.Status.Replicas-deployment.Status.UpdatedReplicas),
153-
}, nil
154-
} else if deployment.Status.AvailableReplicas < deployment.Status.UpdatedReplicas {
155-
return &HealthStatus{
156-
Status: HealthStatusProgressing,
157-
Message: fmt.Sprintf("Waiting for rollout to finish: %d of %d updated replicas are available...", deployment.Status.AvailableReplicas, deployment.Status.UpdatedReplicas),
158-
}, nil
159-
}
160-
} else {
161-
return &HealthStatus{
162-
Status: HealthStatusProgressing,
163-
Message: "Waiting for rollout to finish: observed deployment generation less then desired generation",
164-
}, nil
165-
}
166-
167-
return &HealthStatus{
168-
Status: HealthStatusHealthy,
169-
}, nil
170-
}
171-
17270
func getAppsv1DeploymentCondition(status appsv1.DeploymentStatus, condType appsv1.DeploymentConditionType) *appsv1.DeploymentCondition {
17371
for i := range status.Conditions {
17472
c := status.Conditions[i]
@@ -178,22 +76,3 @@ func getAppsv1DeploymentCondition(status appsv1.DeploymentStatus, condType appsv
17876
}
17977
return nil
18078
}
181-
func getAppsv1beta1DeploymentCondition(status appsv1beta1.DeploymentStatus, condType appsv1beta1.DeploymentConditionType) *appsv1beta1.DeploymentCondition {
182-
for i := range status.Conditions {
183-
c := status.Conditions[i]
184-
if c.Type == condType {
185-
return &c
186-
}
187-
}
188-
return nil
189-
}
190-
191-
func getExtv1beta1DeploymentCondition(status extv1beta1.DeploymentStatus, condType extv1beta1.DeploymentConditionType) *extv1beta1.DeploymentCondition {
192-
for i := range status.Conditions {
193-
c := status.Conditions[i]
194-
if c.Type == condType {
195-
return &c
196-
}
197-
}
198-
return nil
199-
}

pkg/health/health_replicaset.go

Lines changed: 0 additions & 88 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,7 @@ import (
55

66
"github.com/argoproj/gitops-engine/pkg/utils/kube"
77
appsv1 "k8s.io/api/apps/v1"
8-
appsv1beta2 "k8s.io/api/apps/v1beta2"
98
corev1 "k8s.io/api/core/v1"
10-
extv1beta1 "k8s.io/api/extensions/v1beta1"
119
"k8s.io/apimachinery/pkg/apis/meta/v1/unstructured"
1210
"k8s.io/apimachinery/pkg/runtime"
1311
)
@@ -22,20 +20,6 @@ func getReplicaSetHealth(obj *unstructured.Unstructured) (*HealthStatus, error)
2220
return nil, fmt.Errorf("failed to convert unstructured ReplicaSet to typed: %v", err)
2321
}
2422
return getAppsv1ReplicaSetHealth(&replicaSet)
25-
case appsv1beta2.SchemeGroupVersion.WithKind(kube.ReplicaSetKind):
26-
var replicaSet appsv1beta2.ReplicaSet
27-
err := runtime.DefaultUnstructuredConverter.FromUnstructured(obj.Object, &replicaSet)
28-
if err != nil {
29-
return nil, fmt.Errorf("failed to convert unstructured ReplicaSet to typed: %v", err)
30-
}
31-
return getAppsv1beta1ReplicaSetHealth(&replicaSet)
32-
case extv1beta1.SchemeGroupVersion.WithKind(kube.ReplicaSetKind):
33-
var replicaSet extv1beta1.ReplicaSet
34-
err := runtime.DefaultUnstructuredConverter.FromUnstructured(obj.Object, &replicaSet)
35-
if err != nil {
36-
return nil, fmt.Errorf("failed to convert unstructured ReplicaSet to typed: %v", err)
37-
}
38-
return getExtv1beta1ReplicaSetHealth(&replicaSet)
3923
default:
4024
return nil, fmt.Errorf("unsupported ReplicaSet GVK: %s", gvk)
4125
}
@@ -67,58 +51,6 @@ func getAppsv1ReplicaSetHealth(replicaSet *appsv1.ReplicaSet) (*HealthStatus, er
6751
}, nil
6852
}
6953

70-
func getAppsv1beta1ReplicaSetHealth(replicaSet *appsv1beta2.ReplicaSet) (*HealthStatus, error) {
71-
if replicaSet.Generation <= replicaSet.Status.ObservedGeneration {
72-
cond := getAppsv1beta2ReplicaSetCondition(replicaSet.Status, appsv1beta2.ReplicaSetReplicaFailure)
73-
if cond != nil && cond.Status == corev1.ConditionTrue {
74-
return &HealthStatus{
75-
Status: HealthStatusDegraded,
76-
Message: cond.Message,
77-
}, nil
78-
} else if replicaSet.Spec.Replicas != nil && replicaSet.Status.AvailableReplicas < *replicaSet.Spec.Replicas {
79-
return &HealthStatus{
80-
Status: HealthStatusProgressing,
81-
Message: fmt.Sprintf("Waiting for rollout to finish: %d out of %d new replicas are available...", replicaSet.Status.AvailableReplicas, *replicaSet.Spec.Replicas),
82-
}, nil
83-
}
84-
} else {
85-
return &HealthStatus{
86-
Status: HealthStatusProgressing,
87-
Message: "Waiting for rollout to finish: observed replica set generation less then desired generation",
88-
}, nil
89-
}
90-
91-
return &HealthStatus{
92-
Status: HealthStatusHealthy,
93-
}, nil
94-
}
95-
96-
func getExtv1beta1ReplicaSetHealth(replicaSet *extv1beta1.ReplicaSet) (*HealthStatus, error) {
97-
if replicaSet.Generation <= replicaSet.Status.ObservedGeneration {
98-
cond := getExtv1beta1ReplicaSetCondition(replicaSet.Status, extv1beta1.ReplicaSetReplicaFailure)
99-
if cond != nil && cond.Status == corev1.ConditionTrue {
100-
return &HealthStatus{
101-
Status: HealthStatusDegraded,
102-
Message: cond.Message,
103-
}, nil
104-
} else if replicaSet.Spec.Replicas != nil && replicaSet.Status.AvailableReplicas < *replicaSet.Spec.Replicas {
105-
return &HealthStatus{
106-
Status: HealthStatusProgressing,
107-
Message: fmt.Sprintf("Waiting for rollout to finish: %d out of %d new replicas are available...", replicaSet.Status.AvailableReplicas, *replicaSet.Spec.Replicas),
108-
}, nil
109-
}
110-
} else {
111-
return &HealthStatus{
112-
Status: HealthStatusProgressing,
113-
Message: "Waiting for rollout to finish: observed replica set generation less then desired generation",
114-
}, nil
115-
}
116-
117-
return &HealthStatus{
118-
Status: HealthStatusHealthy,
119-
}, nil
120-
}
121-
12254
func getAppsv1ReplicaSetCondition(status appsv1.ReplicaSetStatus, condType appsv1.ReplicaSetConditionType) *appsv1.ReplicaSetCondition {
12355
for i := range status.Conditions {
12456
c := status.Conditions[i]
@@ -128,23 +60,3 @@ func getAppsv1ReplicaSetCondition(status appsv1.ReplicaSetStatus, condType appsv
12860
}
12961
return nil
13062
}
131-
132-
func getAppsv1beta2ReplicaSetCondition(status appsv1beta2.ReplicaSetStatus, condType appsv1beta2.ReplicaSetConditionType) *appsv1beta2.ReplicaSetCondition {
133-
for i := range status.Conditions {
134-
c := status.Conditions[i]
135-
if c.Type == condType {
136-
return &c
137-
}
138-
}
139-
return nil
140-
}
141-
142-
func getExtv1beta1ReplicaSetCondition(status extv1beta1.ReplicaSetStatus, condType extv1beta1.ReplicaSetConditionType) *extv1beta1.ReplicaSetCondition {
143-
for i := range status.Conditions {
144-
c := status.Conditions[i]
145-
if c.Type == condType {
146-
return &c
147-
}
148-
}
149-
return nil
150-
}

0 commit comments

Comments
 (0)