diff --git a/pkg/registry/extensions/deployment/storage/storage.go b/pkg/registry/extensions/deployment/storage/storage.go index 1e6fcbe83d5..025f9cb52c3 100644 --- a/pkg/registry/extensions/deployment/storage/storage.go +++ b/pkg/registry/extensions/deployment/storage/storage.go @@ -146,6 +146,7 @@ func (r *RollbackREST) Create(ctx genericapirequest.Context, obj runtime.Object, return nil, err } return &metav1.Status{ + Status: metav1.StatusSuccess, Message: fmt.Sprintf("rollback request for deployment %q succeeded", rollback.Name), Code: http.StatusOK, }, nil diff --git a/pkg/registry/extensions/deployment/storage/storage_test.go b/pkg/registry/extensions/deployment/storage/storage_test.go index 07c84d58c21..3bad7f5d04a 100644 --- a/pkg/registry/extensions/deployment/storage/storage_test.go +++ b/pkg/registry/extensions/deployment/storage/storage_test.go @@ -17,6 +17,7 @@ limitations under the License. package storage import ( + "net/http" "reflect" "testing" @@ -343,10 +344,18 @@ func TestEtcdCreateDeploymentRollback(t *testing.T) { if _, err := storage.Deployment.Create(ctx, validNewDeployment(), false); err != nil { t.Fatalf("%s: unexpected error: %v", k, err) } - if _, err := rollbackStorage.Create(ctx, &test.rollback, false); !test.errOK(err) { + rollbackRespStatus, err := rollbackStorage.Create(ctx, &test.rollback, false) + if !test.errOK(err) { t.Errorf("%s: unexpected error: %v", k, err) } else if err == nil { - // If rollback succeeded, verify Rollback field of deployment + // If rollback succeeded, verify Rollback response and Rollback field of deployment + status, ok := rollbackRespStatus.(*metav1.Status) + if !ok { + t.Errorf("%s: unexpected response format", k) + } + if status.Code != http.StatusOK || status.Status != metav1.StatusSuccess { + t.Errorf("%s: unexpected response, code: %d, status: %s", k, status.Code, status.Status) + } d, err := storage.Deployment.Get(ctx, validNewDeployment().ObjectMeta.Name, &metav1.GetOptions{}) if err != nil { t.Errorf("%s: unexpected error: %v", k, err)