mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-08-05 02:09:56 +00:00
Add namespace to nickname to prevent dup swagger nicknames
This commit is contained in:
parent
a7364c08b0
commit
dda71bdc7b
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -366,6 +366,10 @@ func (a *APIInstaller) registerResourceHandlers(path string, storage rest.Storag
|
|||||||
for _, action := range actions {
|
for _, action := range actions {
|
||||||
reqScope.Namer = action.Namer
|
reqScope.Namer = action.Namer
|
||||||
m := monitorFilter(action.Verb, resource)
|
m := monitorFilter(action.Verb, resource)
|
||||||
|
namespaced := ""
|
||||||
|
if strings.Contains(action.Path, scope.ArgumentName()) {
|
||||||
|
namespaced = "Namespaced"
|
||||||
|
}
|
||||||
switch action.Verb {
|
switch action.Verb {
|
||||||
case "GET": // Get a resource.
|
case "GET": // Get a resource.
|
||||||
var handler restful.RouteFunction
|
var handler restful.RouteFunction
|
||||||
@ -382,7 +386,7 @@ func (a *APIInstaller) registerResourceHandlers(path string, storage rest.Storag
|
|||||||
Filter(m).
|
Filter(m).
|
||||||
Doc(doc).
|
Doc(doc).
|
||||||
Param(ws.QueryParameter("pretty", "If 'true', then the output is pretty printed.")).
|
Param(ws.QueryParameter("pretty", "If 'true', then the output is pretty printed.")).
|
||||||
Operation("read"+kind+strings.Title(subresource)).
|
Operation("read"+namespaced+kind+strings.Title(subresource)).
|
||||||
Produces(append(storageMeta.ProducesMIMETypes(action.Verb), "application/json")...).
|
Produces(append(storageMeta.ProducesMIMETypes(action.Verb), "application/json")...).
|
||||||
Returns(http.StatusOK, "OK", versionedObject).
|
Returns(http.StatusOK, "OK", versionedObject).
|
||||||
Writes(versionedObject)
|
Writes(versionedObject)
|
||||||
@ -402,7 +406,7 @@ func (a *APIInstaller) registerResourceHandlers(path string, storage rest.Storag
|
|||||||
Filter(m).
|
Filter(m).
|
||||||
Doc(doc).
|
Doc(doc).
|
||||||
Param(ws.QueryParameter("pretty", "If 'true', then the output is pretty printed.")).
|
Param(ws.QueryParameter("pretty", "If 'true', then the output is pretty printed.")).
|
||||||
Operation("list"+kind+strings.Title(subresource)).
|
Operation("list"+namespaced+kind+strings.Title(subresource)).
|
||||||
Produces("application/json").
|
Produces("application/json").
|
||||||
Returns(http.StatusOK, "OK", versionedList).
|
Returns(http.StatusOK, "OK", versionedList).
|
||||||
Writes(versionedList)
|
Writes(versionedList)
|
||||||
@ -434,7 +438,7 @@ func (a *APIInstaller) registerResourceHandlers(path string, storage rest.Storag
|
|||||||
Filter(m).
|
Filter(m).
|
||||||
Doc(doc).
|
Doc(doc).
|
||||||
Param(ws.QueryParameter("pretty", "If 'true', then the output is pretty printed.")).
|
Param(ws.QueryParameter("pretty", "If 'true', then the output is pretty printed.")).
|
||||||
Operation("replace"+kind+strings.Title(subresource)).
|
Operation("replace"+namespaced+kind+strings.Title(subresource)).
|
||||||
Produces(append(storageMeta.ProducesMIMETypes(action.Verb), "application/json")...).
|
Produces(append(storageMeta.ProducesMIMETypes(action.Verb), "application/json")...).
|
||||||
Returns(http.StatusOK, "OK", versionedObject).
|
Returns(http.StatusOK, "OK", versionedObject).
|
||||||
Reads(versionedObject).
|
Reads(versionedObject).
|
||||||
@ -451,7 +455,7 @@ func (a *APIInstaller) registerResourceHandlers(path string, storage rest.Storag
|
|||||||
Doc(doc).
|
Doc(doc).
|
||||||
Param(ws.QueryParameter("pretty", "If 'true', then the output is pretty printed.")).
|
Param(ws.QueryParameter("pretty", "If 'true', then the output is pretty printed.")).
|
||||||
Consumes(string(api.JSONPatchType), string(api.MergePatchType), string(api.StrategicMergePatchType)).
|
Consumes(string(api.JSONPatchType), string(api.MergePatchType), string(api.StrategicMergePatchType)).
|
||||||
Operation("patch"+kind+strings.Title(subresource)).
|
Operation("patch"+namespaced+kind+strings.Title(subresource)).
|
||||||
Produces(append(storageMeta.ProducesMIMETypes(action.Verb), "application/json")...).
|
Produces(append(storageMeta.ProducesMIMETypes(action.Verb), "application/json")...).
|
||||||
Returns(http.StatusOK, "OK", versionedObject).
|
Returns(http.StatusOK, "OK", versionedObject).
|
||||||
Reads(api.Patch{}).
|
Reads(api.Patch{}).
|
||||||
@ -473,7 +477,7 @@ func (a *APIInstaller) registerResourceHandlers(path string, storage rest.Storag
|
|||||||
Filter(m).
|
Filter(m).
|
||||||
Doc(doc).
|
Doc(doc).
|
||||||
Param(ws.QueryParameter("pretty", "If 'true', then the output is pretty printed.")).
|
Param(ws.QueryParameter("pretty", "If 'true', then the output is pretty printed.")).
|
||||||
Operation("create"+kind+strings.Title(subresource)).
|
Operation("create"+namespaced+kind+strings.Title(subresource)).
|
||||||
Produces(append(storageMeta.ProducesMIMETypes(action.Verb), "application/json")...).
|
Produces(append(storageMeta.ProducesMIMETypes(action.Verb), "application/json")...).
|
||||||
Returns(http.StatusOK, "OK", versionedObject).
|
Returns(http.StatusOK, "OK", versionedObject).
|
||||||
Reads(versionedObject).
|
Reads(versionedObject).
|
||||||
@ -489,7 +493,7 @@ func (a *APIInstaller) registerResourceHandlers(path string, storage rest.Storag
|
|||||||
Filter(m).
|
Filter(m).
|
||||||
Doc(doc).
|
Doc(doc).
|
||||||
Param(ws.QueryParameter("pretty", "If 'true', then the output is pretty printed.")).
|
Param(ws.QueryParameter("pretty", "If 'true', then the output is pretty printed.")).
|
||||||
Operation("delete"+kind+strings.Title(subresource)).
|
Operation("delete"+namespaced+kind+strings.Title(subresource)).
|
||||||
Produces(append(storageMeta.ProducesMIMETypes(action.Verb), "application/json")...).
|
Produces(append(storageMeta.ProducesMIMETypes(action.Verb), "application/json")...).
|
||||||
Writes(versionedStatus).
|
Writes(versionedStatus).
|
||||||
Returns(http.StatusOK, "OK", versionedStatus)
|
Returns(http.StatusOK, "OK", versionedStatus)
|
||||||
@ -508,7 +512,7 @@ func (a *APIInstaller) registerResourceHandlers(path string, storage rest.Storag
|
|||||||
Filter(m).
|
Filter(m).
|
||||||
Doc(doc).
|
Doc(doc).
|
||||||
Param(ws.QueryParameter("pretty", "If 'true', then the output is pretty printed.")).
|
Param(ws.QueryParameter("pretty", "If 'true', then the output is pretty printed.")).
|
||||||
Operation("watch"+kind+strings.Title(subresource)).
|
Operation("watch"+namespaced+kind+strings.Title(subresource)).
|
||||||
Produces("application/json").
|
Produces("application/json").
|
||||||
Returns(http.StatusOK, "OK", watchjson.WatchEvent{}).
|
Returns(http.StatusOK, "OK", watchjson.WatchEvent{}).
|
||||||
Writes(watchjson.WatchEvent{})
|
Writes(watchjson.WatchEvent{})
|
||||||
@ -527,7 +531,7 @@ func (a *APIInstaller) registerResourceHandlers(path string, storage rest.Storag
|
|||||||
Filter(m).
|
Filter(m).
|
||||||
Doc(doc).
|
Doc(doc).
|
||||||
Param(ws.QueryParameter("pretty", "If 'true', then the output is pretty printed.")).
|
Param(ws.QueryParameter("pretty", "If 'true', then the output is pretty printed.")).
|
||||||
Operation("watch"+kind+strings.Title(subresource)+"List").
|
Operation("watch"+namespaced+kind+strings.Title(subresource)+"List").
|
||||||
Produces("application/json").
|
Produces("application/json").
|
||||||
Returns(http.StatusOK, "OK", watchjson.WatchEvent{}).
|
Returns(http.StatusOK, "OK", watchjson.WatchEvent{}).
|
||||||
Writes(watchjson.WatchEvent{})
|
Writes(watchjson.WatchEvent{})
|
||||||
@ -538,12 +542,12 @@ func (a *APIInstaller) registerResourceHandlers(path string, storage rest.Storag
|
|||||||
ws.Route(route)
|
ws.Route(route)
|
||||||
case "PROXY": // Proxy requests to a resource.
|
case "PROXY": // Proxy requests to a resource.
|
||||||
// Accept all methods as per https://github.com/GoogleCloudPlatform/kubernetes/issues/3996
|
// Accept all methods as per https://github.com/GoogleCloudPlatform/kubernetes/issues/3996
|
||||||
addProxyRoute(ws, "GET", a.prefix, action.Path, proxyHandler, kind, resource, subresource, hasSubresource, action.Params)
|
addProxyRoute(ws, "GET", a.prefix, action.Path, proxyHandler, namespaced, kind, resource, subresource, hasSubresource, action.Params)
|
||||||
addProxyRoute(ws, "PUT", a.prefix, action.Path, proxyHandler, kind, resource, subresource, hasSubresource, action.Params)
|
addProxyRoute(ws, "PUT", a.prefix, action.Path, proxyHandler, namespaced, kind, resource, subresource, hasSubresource, action.Params)
|
||||||
addProxyRoute(ws, "POST", a.prefix, action.Path, proxyHandler, kind, resource, subresource, hasSubresource, action.Params)
|
addProxyRoute(ws, "POST", a.prefix, action.Path, proxyHandler, namespaced, kind, resource, subresource, hasSubresource, action.Params)
|
||||||
addProxyRoute(ws, "DELETE", a.prefix, action.Path, proxyHandler, kind, resource, subresource, hasSubresource, action.Params)
|
addProxyRoute(ws, "DELETE", a.prefix, action.Path, proxyHandler, namespaced, kind, resource, subresource, hasSubresource, action.Params)
|
||||||
addProxyRoute(ws, "HEAD", a.prefix, action.Path, proxyHandler, kind, resource, subresource, hasSubresource, action.Params)
|
addProxyRoute(ws, "HEAD", a.prefix, action.Path, proxyHandler, namespaced, kind, resource, subresource, hasSubresource, action.Params)
|
||||||
addProxyRoute(ws, "OPTIONS", a.prefix, action.Path, proxyHandler, kind, resource, subresource, hasSubresource, action.Params)
|
addProxyRoute(ws, "OPTIONS", a.prefix, action.Path, proxyHandler, namespaced, kind, resource, subresource, hasSubresource, action.Params)
|
||||||
case "CONNECT":
|
case "CONNECT":
|
||||||
for _, method := range connecter.ConnectMethods() {
|
for _, method := range connecter.ConnectMethods() {
|
||||||
doc := "connect " + method + " requests to " + kind
|
doc := "connect " + method + " requests to " + kind
|
||||||
@ -554,7 +558,7 @@ func (a *APIInstaller) registerResourceHandlers(path string, storage rest.Storag
|
|||||||
To(ConnectResource(connecter, reqScope, admit, connectOptionsKind, path, connectSubpath, connectSubpathKey)).
|
To(ConnectResource(connecter, reqScope, admit, connectOptionsKind, path, connectSubpath, connectSubpathKey)).
|
||||||
Filter(m).
|
Filter(m).
|
||||||
Doc(doc).
|
Doc(doc).
|
||||||
Operation("connect" + strings.Title(strings.ToLower(method)) + kind + strings.Title(subresource)).
|
Operation("connect" + strings.Title(strings.ToLower(method)) + namespaced + kind + strings.Title(subresource)).
|
||||||
Produces("*/*").
|
Produces("*/*").
|
||||||
Consumes("*/*").
|
Consumes("*/*").
|
||||||
Writes("string")
|
Writes("string")
|
||||||
@ -733,7 +737,7 @@ func routeFunction(handler http.Handler) restful.RouteFunction {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func addProxyRoute(ws *restful.WebService, method string, prefix string, path string, proxyHandler http.Handler, kind, resource, subresource string, hasSubresource bool, params []*restful.Parameter) {
|
func addProxyRoute(ws *restful.WebService, method string, prefix string, path string, proxyHandler http.Handler, namespaced, kind, resource, subresource string, hasSubresource bool, params []*restful.Parameter) {
|
||||||
doc := "proxy " + method + " requests to " + kind
|
doc := "proxy " + method + " requests to " + kind
|
||||||
if hasSubresource {
|
if hasSubresource {
|
||||||
doc = "proxy " + method + " requests to " + subresource + " of " + kind
|
doc = "proxy " + method + " requests to " + subresource + " of " + kind
|
||||||
@ -741,7 +745,7 @@ func addProxyRoute(ws *restful.WebService, method string, prefix string, path st
|
|||||||
proxyRoute := ws.Method(method).Path(path).To(routeFunction(proxyHandler)).
|
proxyRoute := ws.Method(method).Path(path).To(routeFunction(proxyHandler)).
|
||||||
Filter(monitorFilter("PROXY", resource)).
|
Filter(monitorFilter("PROXY", resource)).
|
||||||
Doc(doc).
|
Doc(doc).
|
||||||
Operation("proxy" + strings.Title(method) + kind + strings.Title(subresource)).
|
Operation("proxy" + strings.Title(method) + namespaced + kind + strings.Title(subresource)).
|
||||||
Produces("*/*").
|
Produces("*/*").
|
||||||
Consumes("*/*").
|
Consumes("*/*").
|
||||||
Writes("string")
|
Writes("string")
|
||||||
|
Loading…
Reference in New Issue
Block a user