#249 Improve checking the NodeSelector

(cherry picked from commit ba122db1f6)
This commit is contained in:
Tomasz Sęk
2020-01-20 22:49:02 +01:00
parent 516581f844
commit e4d2cded6f
2 changed files with 10 additions and 11 deletions
@@ -534,14 +534,13 @@ func (r *ReconcileJenkinsBaseConfiguration) checkForPodRecreation(currentJenkins
currentJenkinsMasterPod.Spec.ImagePullSecrets, r.Configuration.Jenkins.Spec.Master.ImagePullSecrets)) currentJenkinsMasterPod.Spec.ImagePullSecrets, r.Configuration.Jenkins.Spec.Master.ImagePullSecrets))
} }
if !reflect.DeepEqual(r.Configuration.Jenkins.Spec.Master.NodeSelector, currentJenkinsMasterPod.Spec.NodeSelector) { if !compareMap(r.Configuration.Jenkins.Spec.Master.NodeSelector, currentJenkinsMasterPod.Spec.NodeSelector) {
messages = append(messages, "Jenkins pod node selector has changed") messages = append(messages, "Jenkins pod node selector has changed")
verbose = append(verbose, fmt.Sprintf("Jenkins pod node selector has changed, actual '%+v' required '%+v'", verbose = append(verbose, fmt.Sprintf("Jenkins pod node selector has changed, actual '%+v' required '%+v'",
currentJenkinsMasterPod.Spec.NodeSelector, r.Configuration.Jenkins.Spec.Master.NodeSelector)) currentJenkinsMasterPod.Spec.NodeSelector, r.Configuration.Jenkins.Spec.Master.NodeSelector))
} }
if len(r.Configuration.Jenkins.Spec.Master.Annotations) > 0 && if !compareMap(r.Configuration.Jenkins.Spec.Master.Annotations, currentJenkinsMasterPod.ObjectMeta.Annotations) {
!comparePodAnnotations(r.Configuration.Jenkins.Spec.Master.Annotations, currentJenkinsMasterPod.ObjectMeta.Annotations) {
messages = append(messages, "Jenkins pod annotations have changed") messages = append(messages, "Jenkins pod annotations have changed")
verbose = append(verbose, fmt.Sprintf("Jenkins pod annotations have changed, actual '%+v' required '%+v'", verbose = append(verbose, fmt.Sprintf("Jenkins pod annotations have changed, actual '%+v' required '%+v'",
currentJenkinsMasterPod.ObjectMeta.Annotations, r.Configuration.Jenkins.Spec.Master.Annotations)) currentJenkinsMasterPod.ObjectMeta.Annotations, r.Configuration.Jenkins.Spec.Master.Annotations))
@@ -676,7 +675,7 @@ func compareImagePullSecrets(expected, actual []corev1.LocalObjectReference) boo
return true return true
} }
func comparePodAnnotations(expected, actual map[string]string) bool { func compareMap(expected, actual map[string]string) bool {
for expectedKey, expectedValue := range expected { for expectedKey, expectedValue := range expected {
actualValue, found := actual[expectedKey] actualValue, found := actual[expectedKey]
if !found { if !found {
@@ -648,12 +648,12 @@ func Test_compareEnv(t *testing.T) {
}) })
} }
func TestComparePodAnnotations(t *testing.T) { func TestCompareMap(t *testing.T) {
t.Run("empty", func(t *testing.T) { t.Run("empty", func(t *testing.T) {
expectedAnnotations := map[string]string{} expectedAnnotations := map[string]string{}
actualAnnotations := map[string]string{} actualAnnotations := map[string]string{}
got := comparePodAnnotations(expectedAnnotations, actualAnnotations) got := compareMap(expectedAnnotations, actualAnnotations)
assert.True(t, got) assert.True(t, got)
}) })
@@ -661,7 +661,7 @@ func TestComparePodAnnotations(t *testing.T) {
expectedAnnotations := map[string]string{"one": "two"} expectedAnnotations := map[string]string{"one": "two"}
actualAnnotations := expectedAnnotations actualAnnotations := expectedAnnotations
got := comparePodAnnotations(expectedAnnotations, actualAnnotations) got := compareMap(expectedAnnotations, actualAnnotations)
assert.True(t, got) assert.True(t, got)
}) })
@@ -669,7 +669,7 @@ func TestComparePodAnnotations(t *testing.T) {
expectedAnnotations := map[string]string{"one": "two"} expectedAnnotations := map[string]string{"one": "two"}
actualAnnotations := map[string]string{"one": "two", "three": "four"} actualAnnotations := map[string]string{"one": "two", "three": "four"}
got := comparePodAnnotations(expectedAnnotations, actualAnnotations) got := compareMap(expectedAnnotations, actualAnnotations)
assert.True(t, got) assert.True(t, got)
}) })
@@ -677,7 +677,7 @@ func TestComparePodAnnotations(t *testing.T) {
expectedAnnotations := map[string]string{"one": "two"} expectedAnnotations := map[string]string{"one": "two"}
actualAnnotations := map[string]string{"three": "four"} actualAnnotations := map[string]string{"three": "four"}
got := comparePodAnnotations(expectedAnnotations, actualAnnotations) got := compareMap(expectedAnnotations, actualAnnotations)
assert.False(t, got) assert.False(t, got)
}) })
@@ -685,7 +685,7 @@ func TestComparePodAnnotations(t *testing.T) {
expectedAnnotations := map[string]string{"one": "two"} expectedAnnotations := map[string]string{"one": "two"}
actualAnnotations := map[string]string{"one": "three"} actualAnnotations := map[string]string{"one": "three"}
got := comparePodAnnotations(expectedAnnotations, actualAnnotations) got := compareMap(expectedAnnotations, actualAnnotations)
assert.False(t, got) assert.False(t, got)
}) })
@@ -693,7 +693,7 @@ func TestComparePodAnnotations(t *testing.T) {
expectedAnnotations := map[string]string{"one": "two", "missing": "something"} expectedAnnotations := map[string]string{"one": "two", "missing": "something"}
actualAnnotations := map[string]string{"one": "three"} actualAnnotations := map[string]string{"one": "three"}
got := comparePodAnnotations(expectedAnnotations, actualAnnotations) got := compareMap(expectedAnnotations, actualAnnotations)
assert.False(t, got) assert.False(t, got)
}) })