Commit 0d4b039d authored by k8s-merge-robot's avatar k8s-merge-robot

Merge pull request #24474 from deads2k/fix-version-registration

Automatic merge from submit-queue stop changing the root path of the root webservice We shouldn't mutate the root path of the root webservice (see usage). Just write the path we want.
parents ea15d792 a79cb3c4
...@@ -167,19 +167,22 @@ func (g *APIGroupVersion) newInstaller() *APIInstaller { ...@@ -167,19 +167,22 @@ func (g *APIGroupVersion) newInstaller() *APIInstaller {
// TODO: document all handlers // TODO: document all handlers
// InstallSupport registers the APIServer support functions // InstallSupport registers the APIServer support functions
func InstallSupport(mux Mux, ws *restful.WebService, checks ...healthz.HealthzChecker) { func InstallSupport(mux Mux, checks ...healthz.HealthzChecker) []*restful.WebService {
// TODO: convert healthz and metrics to restful and remove container arg // TODO: convert healthz and metrics to restful and remove container arg
healthz.InstallHandler(mux, checks...) healthz.InstallHandler(mux, checks...)
// Set up a service to return the git code version. // Set up a service to return the git code version.
ws.Path("/version") versionWS := new(restful.WebService)
ws.Doc("git code version from which this is built") versionWS.Path("/version")
ws.Route( versionWS.Doc("git code version from which this is built")
ws.GET("/").To(handleVersion). versionWS.Route(
versionWS.GET("/").To(handleVersion).
Doc("get the code version"). Doc("get the code version").
Operation("getCodeVersion"). Operation("getCodeVersion").
Produces(restful.MIME_JSON). Produces(restful.MIME_JSON).
Consumes(restful.MIME_JSON)) Consumes(restful.MIME_JSON))
return []*restful.WebService{versionWS}
} }
// InstallLogsSupport registers the APIServer log support function into a mux. // InstallLogsSupport registers the APIServer log support function into a mux.
......
...@@ -319,9 +319,10 @@ func handleInternal(storage map[string]rest.Storage, admissionControl admission. ...@@ -319,9 +319,10 @@ func handleInternal(storage map[string]rest.Storage, admissionControl admission.
} }
} }
ws := new(restful.WebService) webservices := InstallSupport(mux)
InstallSupport(mux, ws) for i := range webservices {
container.Add(ws) container.Add(webservices[i])
}
return &defaultAPIServer{mux, container} return &defaultAPIServer{mux, container}
} }
...@@ -3257,9 +3258,10 @@ func TestXGSubresource(t *testing.T) { ...@@ -3257,9 +3258,10 @@ func TestXGSubresource(t *testing.T) {
panic(fmt.Sprintf("unable to install container %s: %v", group.GroupVersion, err)) panic(fmt.Sprintf("unable to install container %s: %v", group.GroupVersion, err))
} }
ws := new(restful.WebService) webservices := InstallSupport(mux)
InstallSupport(mux, ws) for i := range webservices {
container.Add(ws) container.Add(webservices[i])
}
handler := defaultAPIServer{mux, container} handler := defaultAPIServer{mux, container}
server := httptest.NewServer(handler) server := httptest.NewServer(handler)
......
...@@ -229,7 +229,7 @@ func (m *Master) InstallAPIs(c *Config) { ...@@ -229,7 +229,7 @@ func (m *Master) InstallAPIs(c *Config) {
} }
// TODO(nikhiljindal): Refactor generic parts of support services (like /versions) to genericapiserver. // TODO(nikhiljindal): Refactor generic parts of support services (like /versions) to genericapiserver.
apiserver.InstallSupport(m.MuxHelper, m.RootWebService, healthzChecks...) webservices := apiserver.InstallSupport(m.MuxHelper, healthzChecks...)
if c.EnableProfiling { if c.EnableProfiling {
m.MuxHelper.HandleFunc("/metrics", MetricsWithReset) m.MuxHelper.HandleFunc("/metrics", MetricsWithReset)
...@@ -237,8 +237,9 @@ func (m *Master) InstallAPIs(c *Config) { ...@@ -237,8 +237,9 @@ func (m *Master) InstallAPIs(c *Config) {
m.MuxHelper.HandleFunc("/metrics", defaultMetricsHandler) m.MuxHelper.HandleFunc("/metrics", defaultMetricsHandler)
} }
// Install root web services for i := range webservices {
m.HandlerContainer.Add(m.RootWebService) m.HandlerContainer.Add(webservices[i])
}
// allGroups records all supported groups at /apis // allGroups records all supported groups at /apis
allGroups := []unversioned.APIGroup{} allGroups := []unversioned.APIGroup{}
......
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