Improve error handling in status configmap
This commit is contained in:
parent
060b6c2284
commit
7c5679baaf
|
|
@ -93,6 +93,9 @@ func WriteStatusConfigMap(kubeClient kube_client.Interface, msg string, logRecor
|
|||
configMap, getStatusError = maps.Get(StatusConfigMapName, metav1.GetOptions{})
|
||||
if getStatusError == nil {
|
||||
configMap.Data["status"] = statusMsg
|
||||
if configMap.ObjectMeta.Annotations == nil {
|
||||
configMap.ObjectMeta.Annotations = make(map[string]string)
|
||||
}
|
||||
configMap.ObjectMeta.Annotations[ConfigMapLastUpdatedKey] = fmt.Sprintf("%v", statusUpdateTime)
|
||||
configMap, writeStatusError = maps.Update(configMap)
|
||||
} else if kube_errors.IsNotFound(getStatusError) {
|
||||
|
|
@ -110,10 +113,10 @@ func WriteStatusConfigMap(kubeClient kube_client.Interface, msg string, logRecor
|
|||
}
|
||||
configMap, writeStatusError = maps.Create(configMap)
|
||||
} else {
|
||||
errMsg = "Failed to retrieve status configmap for update"
|
||||
errMsg = fmt.Sprintf("Failed to retrieve status configmap for update: %v", getStatusError)
|
||||
}
|
||||
if writeStatusError != nil {
|
||||
errMsg = "Failed to write status configmap"
|
||||
errMsg = fmt.Sprintf("Failed to write status configmap: %v", writeStatusError)
|
||||
}
|
||||
if errMsg != "" {
|
||||
glog.Error(errMsg)
|
||||
|
|
|
|||
|
|
@ -45,9 +45,8 @@ func setUpTest(t *testing.T) *testInfo {
|
|||
client: &fake.Clientset{},
|
||||
configMap: &apiv1.ConfigMap{
|
||||
ObjectMeta: metav1.ObjectMeta{
|
||||
Namespace: StatusConfigMapNamespace,
|
||||
Name: StatusConfigMapName,
|
||||
Annotations: map[string]string{},
|
||||
Namespace: StatusConfigMapNamespace,
|
||||
Name: StatusConfigMapName,
|
||||
},
|
||||
Data: map[string]string{},
|
||||
},
|
||||
|
|
@ -112,6 +111,7 @@ func TestWriteStatusConfigMapError(t *testing.T) {
|
|||
ti.getError = errors.New("stuff bad")
|
||||
result, err := WriteStatusConfigMap(ti.client, "TEST_MSG", nil)
|
||||
assert.NotNil(t, err)
|
||||
assert.Contains(t, err.Error(), "stuff bad")
|
||||
assert.Nil(t, result)
|
||||
assert.True(t, ti.getCalled)
|
||||
assert.False(t, ti.updateCalled)
|
||||
|
|
|
|||
Loading…
Reference in New Issue