Removed err from return value of AddOrUpdateTolerationInPod.

This commit is contained in:
Klaus Ma 2017-03-13 22:37:41 +08:00
parent 3f660a9779
commit 3f24d46564
4 changed files with 12 additions and 26 deletions

View File

@ -467,7 +467,7 @@ const (
// AddOrUpdateTolerationInPod tries to add a toleration to the pod's toleration list. // AddOrUpdateTolerationInPod tries to add a toleration to the pod's toleration list.
// Returns true if something was updated, false otherwise. // Returns true if something was updated, false otherwise.
func AddOrUpdateTolerationInPod(pod *Pod, toleration *Toleration) (bool, error) { func AddOrUpdateTolerationInPod(pod *Pod, toleration *Toleration) bool {
podTolerations := pod.Spec.Tolerations podTolerations := pod.Spec.Tolerations
var newTolerations []Toleration var newTolerations []Toleration
@ -475,7 +475,7 @@ func AddOrUpdateTolerationInPod(pod *Pod, toleration *Toleration) (bool, error)
for i := range podTolerations { for i := range podTolerations {
if toleration.MatchToleration(&podTolerations[i]) { if toleration.MatchToleration(&podTolerations[i]) {
if Semantic.DeepEqual(toleration, podTolerations[i]) { if Semantic.DeepEqual(toleration, podTolerations[i]) {
return false, nil return false
} }
newTolerations = append(newTolerations, *toleration) newTolerations = append(newTolerations, *toleration)
updated = true updated = true
@ -490,7 +490,7 @@ func AddOrUpdateTolerationInPod(pod *Pod, toleration *Toleration) (bool, error)
} }
pod.Spec.Tolerations = newTolerations pod.Spec.Tolerations = newTolerations
return true, nil return true
} }
// MatchToleration checks if the toleration matches tolerationToMatch. Tolerations are unique by <key,effect,operator,value>, // MatchToleration checks if the toleration matches tolerationToMatch. Tolerations are unique by <key,effect,operator,value>,

View File

@ -276,9 +276,9 @@ const (
AffinityAnnotationKey string = "scheduler.alpha.kubernetes.io/affinity" AffinityAnnotationKey string = "scheduler.alpha.kubernetes.io/affinity"
) )
// Tries to add a toleration to annotations list. Returns true if something was updated // AddOrUpdateTolerationInPod tries to add a toleration to the pod's toleration list.
// false otherwise. // Returns true if something was updated, false otherwise.
func AddOrUpdateTolerationInPod(pod *Pod, toleration *Toleration) (bool, error) { func AddOrUpdateTolerationInPod(pod *Pod, toleration *Toleration) bool {
podTolerations := pod.Spec.Tolerations podTolerations := pod.Spec.Tolerations
var newTolerations []Toleration var newTolerations []Toleration
@ -286,7 +286,7 @@ func AddOrUpdateTolerationInPod(pod *Pod, toleration *Toleration) (bool, error)
for i := range podTolerations { for i := range podTolerations {
if toleration.MatchToleration(&podTolerations[i]) { if toleration.MatchToleration(&podTolerations[i]) {
if api.Semantic.DeepEqual(toleration, podTolerations[i]) { if api.Semantic.DeepEqual(toleration, podTolerations[i]) {
return false, nil return false
} }
newTolerations = append(newTolerations, *toleration) newTolerations = append(newTolerations, *toleration)
updated = true updated = true
@ -301,7 +301,7 @@ func AddOrUpdateTolerationInPod(pod *Pod, toleration *Toleration) (bool, error)
} }
pod.Spec.Tolerations = newTolerations pod.Spec.Tolerations = newTolerations
return true, nil return true
} }
// MatchToleration checks if the toleration matches tolerationToMatch. Tolerations are unique by <key,effect,operator,value>, // MatchToleration checks if the toleration matches tolerationToMatch. Tolerations are unique by <key,effect,operator,value>,

View File

@ -844,27 +844,21 @@ func (dsc *DaemonSetsController) nodeShouldRunDaemonPod(node *v1.Node, ds *exten
// Add infinite toleration for taint notReady:NoExecute here // Add infinite toleration for taint notReady:NoExecute here
// to survive taint-based eviction enforced by NodeController // to survive taint-based eviction enforced by NodeController
// when node turns not ready. // when node turns not ready.
_, err = v1.AddOrUpdateTolerationInPod(newPod, &v1.Toleration{ v1.AddOrUpdateTolerationInPod(newPod, &v1.Toleration{
Key: metav1.TaintNodeNotReady, Key: metav1.TaintNodeNotReady,
Operator: v1.TolerationOpExists, Operator: v1.TolerationOpExists,
Effect: v1.TaintEffectNoExecute, Effect: v1.TaintEffectNoExecute,
}) })
if err != nil {
return false, false, false, err
}
// DaemonSet pods shouldn't be deleted by NodeController in case of node problems. // DaemonSet pods shouldn't be deleted by NodeController in case of node problems.
// Add infinite toleration for taint unreachable:NoExecute here // Add infinite toleration for taint unreachable:NoExecute here
// to survive taint-based eviction enforced by NodeController // to survive taint-based eviction enforced by NodeController
// when node turns unreachable. // when node turns unreachable.
_, err = v1.AddOrUpdateTolerationInPod(newPod, &v1.Toleration{ v1.AddOrUpdateTolerationInPod(newPod, &v1.Toleration{
Key: metav1.TaintNodeUnreachable, Key: metav1.TaintNodeUnreachable,
Operator: v1.TolerationOpExists, Operator: v1.TolerationOpExists,
Effect: v1.TaintEffectNoExecute, Effect: v1.TaintEffectNoExecute,
}) })
if err != nil {
return false, false, false, err
}
pods := []*v1.Pod{} pods := []*v1.Pod{}

View File

@ -97,29 +97,21 @@ func (p *plugin) Admit(attributes admission.Attributes) (err error) {
} }
if !toleratesNodeNotReady { if !toleratesNodeNotReady {
_, err := api.AddOrUpdateTolerationInPod(pod, &api.Toleration{ api.AddOrUpdateTolerationInPod(pod, &api.Toleration{
Key: metav1.TaintNodeNotReady, Key: metav1.TaintNodeNotReady,
Operator: api.TolerationOpExists, Operator: api.TolerationOpExists,
Effect: api.TaintEffectNoExecute, Effect: api.TaintEffectNoExecute,
TolerationSeconds: defaultNotReadyTolerationSeconds, TolerationSeconds: defaultNotReadyTolerationSeconds,
}) })
if err != nil {
return admission.NewForbidden(attributes,
fmt.Errorf("failed to add default tolerations for taints `notReady:NoExecute` and `unreachable:NoExecute`, err: %v", err))
}
} }
if !toleratesNodeUnreachable { if !toleratesNodeUnreachable {
_, err := api.AddOrUpdateTolerationInPod(pod, &api.Toleration{ api.AddOrUpdateTolerationInPod(pod, &api.Toleration{
Key: metav1.TaintNodeUnreachable, Key: metav1.TaintNodeUnreachable,
Operator: api.TolerationOpExists, Operator: api.TolerationOpExists,
Effect: api.TaintEffectNoExecute, Effect: api.TaintEffectNoExecute,
TolerationSeconds: defaultUnreachableTolerationSeconds, TolerationSeconds: defaultUnreachableTolerationSeconds,
}) })
if err != nil {
return admission.NewForbidden(attributes,
fmt.Errorf("failed to add default tolerations for taints `notReady:NoExecute` and `unreachable:NoExecute`, err: %v", err))
}
} }
return nil return nil
} }