Commit 98496fa5 authored by Haowei Cai's avatar Haowei Cai

POSTing rollback returns deploymentstatus

parent 5782d476
......@@ -21,6 +21,7 @@ import (
"fmt"
"net/http"
externalappsv1beta1 "k8s.io/api/apps/v1beta1"
"k8s.io/apimachinery/pkg/api/errors"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/runtime"
......@@ -137,6 +138,20 @@ type RollbackREST struct {
store *genericregistry.Store
}
// ProducesMIMETypes returns a list of the MIME types the specified HTTP verb (GET, POST, DELETE,
// PATCH) can respond with.
func (r *RollbackREST) ProducesMIMETypes(verb string) []string {
return nil
}
// ProducesObject returns an object the specified HTTP verb respond with. It will overwrite storage object if
// it is not nil. Only the type of the return object matters, the value will be ignored.
func (r *RollbackREST) ProducesObject(verb string) interface{} {
return externalappsv1beta1.DeploymentStatus{}
}
var _ = rest.StorageMetadata(&RollbackREST{})
// New creates a rollback
func (r *RollbackREST) New() runtime.Object {
return &extensions.DeploymentRollback{}
......
......@@ -47,6 +47,17 @@ func (p RESTStorageProvider) NewRESTStorage(apiResourceConfigSource serverstorag
return apiGroupInfo, true
}
type RollbackREST struct {
*deploymentstore.RollbackREST
}
// override RollbackREST.ProducesObject
func (r *RollbackREST) ProducesObject(verb string) interface{} {
return extensionsapiv1beta1.DeploymentStatus{}
}
var _ = rest.StorageMetadata(&RollbackREST{})
func (p RESTStorageProvider) v1beta1Storage(apiResourceConfigSource serverstorage.APIResourceConfigSource, restOptionsGetter generic.RESTOptionsGetter) map[string]rest.Storage {
storage := map[string]rest.Storage{}
......@@ -65,7 +76,7 @@ func (p RESTStorageProvider) v1beta1Storage(apiResourceConfigSource serverstorag
deploymentStorage := deploymentstore.NewStorage(restOptionsGetter)
storage["deployments"] = deploymentStorage.Deployment.WithCategories(nil)
storage["deployments/status"] = deploymentStorage.Status
storage["deployments/rollback"] = deploymentStorage.Rollback
storage["deployments/rollback"] = &RollbackREST{deploymentStorage.Rollback}
storage["deployments/scale"] = deploymentStorage.Scale
// ingresses
ingressStorage, ingressStatusStorage := ingressstore.NewREST(restOptionsGetter)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment