mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-25 12:43:23 +00:00
Merge pull request #63837 from roycaihw/fix-rollback-return-object
Automatic merge from submit-queue (batch tested with PRs 65377, 63837, 65370, 65294, 65376). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>. Fix openapi spec: posting a rollback returns a deploymentstatus **What this PR does / why we need it**: Fix openapi spec and documentation. Posting a rollback doesnt return a rollback object, it instead returns a deployment status. **Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*: ref #56591 **Release note**: ```release-note NONE ``` /sig api-machinery /sig apps
This commit is contained in:
commit
32c3ffa19e
12
api/openapi-spec/swagger.json
generated
12
api/openapi-spec/swagger.json
generated
@ -29443,19 +29443,19 @@
|
||||
"200": {
|
||||
"description": "OK",
|
||||
"schema": {
|
||||
"$ref": "#/definitions/io.k8s.api.apps.v1beta1.DeploymentRollback"
|
||||
"$ref": "#/definitions/io.k8s.api.apps.v1beta1.DeploymentStatus"
|
||||
}
|
||||
},
|
||||
"201": {
|
||||
"description": "Created",
|
||||
"schema": {
|
||||
"$ref": "#/definitions/io.k8s.api.apps.v1beta1.DeploymentRollback"
|
||||
"$ref": "#/definitions/io.k8s.api.apps.v1beta1.DeploymentStatus"
|
||||
}
|
||||
},
|
||||
"202": {
|
||||
"description": "Accepted",
|
||||
"schema": {
|
||||
"$ref": "#/definitions/io.k8s.api.apps.v1beta1.DeploymentRollback"
|
||||
"$ref": "#/definitions/io.k8s.api.apps.v1beta1.DeploymentStatus"
|
||||
}
|
||||
},
|
||||
"401": {
|
||||
@ -47879,19 +47879,19 @@
|
||||
"200": {
|
||||
"description": "OK",
|
||||
"schema": {
|
||||
"$ref": "#/definitions/io.k8s.api.extensions.v1beta1.DeploymentRollback"
|
||||
"$ref": "#/definitions/io.k8s.api.extensions.v1beta1.DeploymentStatus"
|
||||
}
|
||||
},
|
||||
"201": {
|
||||
"description": "Created",
|
||||
"schema": {
|
||||
"$ref": "#/definitions/io.k8s.api.extensions.v1beta1.DeploymentRollback"
|
||||
"$ref": "#/definitions/io.k8s.api.extensions.v1beta1.DeploymentStatus"
|
||||
}
|
||||
},
|
||||
"202": {
|
||||
"description": "Accepted",
|
||||
"schema": {
|
||||
"$ref": "#/definitions/io.k8s.api.extensions.v1beta1.DeploymentRollback"
|
||||
"$ref": "#/definitions/io.k8s.api.extensions.v1beta1.DeploymentStatus"
|
||||
}
|
||||
},
|
||||
"401": {
|
||||
|
8
api/swagger-spec/apps_v1beta1.json
generated
8
api/swagger-spec/apps_v1beta1.json
generated
@ -1957,7 +1957,7 @@
|
||||
"description": "API at /apis/apps/v1beta1",
|
||||
"operations": [
|
||||
{
|
||||
"type": "v1beta1.DeploymentRollback",
|
||||
"type": "v1beta1.DeploymentStatus",
|
||||
"method": "POST",
|
||||
"summary": "create rollback of a Deployment",
|
||||
"nickname": "createNamespacedDeploymentRollback",
|
||||
@ -1999,17 +1999,17 @@
|
||||
{
|
||||
"code": 200,
|
||||
"message": "OK",
|
||||
"responseModel": "v1beta1.DeploymentRollback"
|
||||
"responseModel": "v1beta1.DeploymentStatus"
|
||||
},
|
||||
{
|
||||
"code": 201,
|
||||
"message": "Created",
|
||||
"responseModel": "v1beta1.DeploymentRollback"
|
||||
"responseModel": "v1beta1.DeploymentStatus"
|
||||
},
|
||||
{
|
||||
"code": 202,
|
||||
"message": "Accepted",
|
||||
"responseModel": "v1beta1.DeploymentRollback"
|
||||
"responseModel": "v1beta1.DeploymentStatus"
|
||||
}
|
||||
],
|
||||
"produces": [
|
||||
|
8
api/swagger-spec/extensions_v1beta1.json
generated
8
api/swagger-spec/extensions_v1beta1.json
generated
@ -2127,7 +2127,7 @@
|
||||
"description": "API at /apis/extensions/v1beta1",
|
||||
"operations": [
|
||||
{
|
||||
"type": "v1beta1.DeploymentRollback",
|
||||
"type": "v1beta1.DeploymentStatus",
|
||||
"method": "POST",
|
||||
"summary": "create rollback of a Deployment",
|
||||
"nickname": "createNamespacedDeploymentRollback",
|
||||
@ -2169,17 +2169,17 @@
|
||||
{
|
||||
"code": 200,
|
||||
"message": "OK",
|
||||
"responseModel": "v1beta1.DeploymentRollback"
|
||||
"responseModel": "v1beta1.DeploymentStatus"
|
||||
},
|
||||
{
|
||||
"code": 201,
|
||||
"message": "Created",
|
||||
"responseModel": "v1beta1.DeploymentRollback"
|
||||
"responseModel": "v1beta1.DeploymentStatus"
|
||||
},
|
||||
{
|
||||
"code": 202,
|
||||
"message": "Accepted",
|
||||
"responseModel": "v1beta1.DeploymentRollback"
|
||||
"responseModel": "v1beta1.DeploymentStatus"
|
||||
}
|
||||
],
|
||||
"produces": [
|
||||
|
6
docs/api-reference/apps/v1beta1/operations.html
generated
6
docs/api-reference/apps/v1beta1/operations.html
generated
@ -2950,17 +2950,17 @@ span.icon > [class^="icon-"], span.icon > [class*=" icon-"] { cursor: default; }
|
||||
<tr>
|
||||
<td class="tableblock halign-left valign-top"><p class="tableblock">202</p></td>
|
||||
<td class="tableblock halign-left valign-top"><p class="tableblock">Accepted</p></td>
|
||||
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="../definitions#_v1beta1_deploymentrollback">v1beta1.DeploymentRollback</a></p></td>
|
||||
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="../definitions#_v1beta1_deploymentstatus">v1beta1.DeploymentStatus</a></p></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="tableblock halign-left valign-top"><p class="tableblock">200</p></td>
|
||||
<td class="tableblock halign-left valign-top"><p class="tableblock">success</p></td>
|
||||
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="../definitions#_v1beta1_deploymentrollback">v1beta1.DeploymentRollback</a></p></td>
|
||||
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="../definitions#_v1beta1_deploymentstatus">v1beta1.DeploymentStatus</a></p></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="tableblock halign-left valign-top"><p class="tableblock">201</p></td>
|
||||
<td class="tableblock halign-left valign-top"><p class="tableblock">Created</p></td>
|
||||
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="../definitions#_v1beta1_deploymentrollback">v1beta1.DeploymentRollback</a></p></td>
|
||||
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="../definitions#_v1beta1_deploymentstatus">v1beta1.DeploymentStatus</a></p></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
@ -3508,17 +3508,17 @@ span.icon > [class^="icon-"], span.icon > [class*=" icon-"] { cursor: default; }
|
||||
<tr>
|
||||
<td class="tableblock halign-left valign-top"><p class="tableblock">202</p></td>
|
||||
<td class="tableblock halign-left valign-top"><p class="tableblock">Accepted</p></td>
|
||||
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="../definitions#_v1beta1_deploymentrollback">v1beta1.DeploymentRollback</a></p></td>
|
||||
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="../definitions#_v1beta1_deploymentstatus">v1beta1.DeploymentStatus</a></p></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="tableblock halign-left valign-top"><p class="tableblock">200</p></td>
|
||||
<td class="tableblock halign-left valign-top"><p class="tableblock">success</p></td>
|
||||
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="../definitions#_v1beta1_deploymentrollback">v1beta1.DeploymentRollback</a></p></td>
|
||||
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="../definitions#_v1beta1_deploymentstatus">v1beta1.DeploymentStatus</a></p></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="tableblock halign-left valign-top"><p class="tableblock">201</p></td>
|
||||
<td class="tableblock halign-left valign-top"><p class="tableblock">Created</p></td>
|
||||
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="../definitions#_v1beta1_deploymentrollback">v1beta1.DeploymentRollback</a></p></td>
|
||||
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="../definitions#_v1beta1_deploymentstatus">v1beta1.DeploymentStatus</a></p></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
@ -49,6 +49,7 @@ go_library(
|
||||
"//pkg/printers/internalversion:go_default_library",
|
||||
"//pkg/printers/storage:go_default_library",
|
||||
"//pkg/registry/apps/deployment:go_default_library",
|
||||
"//vendor/k8s.io/api/apps/v1beta1:go_default_library",
|
||||
"//vendor/k8s.io/apimachinery/pkg/api/errors:go_default_library",
|
||||
"//vendor/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
|
||||
"//vendor/k8s.io/apimachinery/pkg/runtime:go_default_library",
|
||||
|
@ -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)
|
||||
|
Loading…
Reference in New Issue
Block a user