diff options
author | Brent Baude <bbaude@redhat.com> | 2020-01-21 12:44:50 -0600 |
---|---|---|
committer | Brent Baude <bbaude@redhat.com> | 2020-01-28 08:42:18 -0600 |
commit | 54587335bee45bdd5e4b975b4760b2898a138f2a (patch) | |
tree | 08f7cd1282654c0a82d16d8db5de41d2f6f4bcd5 /pkg/api/handlers/generic | |
parent | d07c26310697d8874219731c6c42f6d0d0330e87 (diff) | |
download | podman-54587335bee45bdd5e4b975b4760b2898a138f2a.tar.gz podman-54587335bee45bdd5e4b975b4760b2898a138f2a.tar.bz2 podman-54587335bee45bdd5e4b975b4760b2898a138f2a.zip |
[CI:DOCS]Binding overhauls
Add binding for networks and begin documentation for binding methods for godoc. Also, add major functions to their own subpackages so reduce the amount of of method confusion. So instead of: bindings.ListImages(), we now do a [bindings].images.List().
Also, the connection is passed to each binding method via a context to allow for future growth.
Lastly, add first set of tests. There are a couple of things to work out for rootless tests yet.
Signed-off-by: Brent Baude <bbaude@redhat.com>
Diffstat (limited to 'pkg/api/handlers/generic')
-rw-r--r-- | pkg/api/handlers/generic/ping.go | 4 | ||||
-rw-r--r-- | pkg/api/handlers/generic/version.go | 74 |
2 files changed, 3 insertions, 75 deletions
diff --git a/pkg/api/handlers/generic/ping.go b/pkg/api/handlers/generic/ping.go index 44a67d53f..00afd86bc 100644 --- a/pkg/api/handlers/generic/ping.go +++ b/pkg/api/handlers/generic/ping.go @@ -3,6 +3,8 @@ package generic import ( "fmt" "net/http" + + "github.com/containers/libpod/pkg/api/handlers" ) func PingGET(w http.ResponseWriter, _ *http.Request) { @@ -16,7 +18,7 @@ func PingHEAD(w http.ResponseWriter, _ *http.Request) { } func setHeaders(w http.ResponseWriter) { - w.Header().Set("API-Version", DefaultApiVersion) + w.Header().Set("API-Version", handlers.DefaultApiVersion) w.Header().Set("BuildKit-Version", "") w.Header().Set("Docker-Experimental", "true") w.Header().Set("Cache-Control", "no-cache") diff --git a/pkg/api/handlers/generic/version.go b/pkg/api/handlers/generic/version.go deleted file mode 100644 index 39423914d..000000000 --- a/pkg/api/handlers/generic/version.go +++ /dev/null @@ -1,74 +0,0 @@ -package generic - -import ( - "fmt" - "net/http" - goRuntime "runtime" - "time" - - "github.com/containers/libpod/libpod" - "github.com/containers/libpod/libpod/define" - "github.com/containers/libpod/pkg/api/handlers" - "github.com/containers/libpod/pkg/api/handlers/utils" - docker "github.com/docker/docker/api/types" - "github.com/pkg/errors" -) - -const ( - DefaultApiVersion = "1.40" // See https://docs.docker.com/engine/api/v1.40/ - MinimalApiVersion = "1.24" -) - -func VersionHandler(w http.ResponseWriter, r *http.Request) { - // 200 ok - // 500 internal - runtime := r.Context().Value("runtime").(*libpod.Runtime) - - versionInfo, err := define.GetVersion() - if err != nil { - utils.Error(w, "Something went wrong.", http.StatusInternalServerError, err) - return - } - - infoData, err := runtime.Info() - if err != nil { - utils.Error(w, "Something went wrong.", http.StatusInternalServerError, errors.Wrapf(err, "Failed to obtain system memory info")) - return - } - hostInfo := infoData[0].Data - - components := []docker.ComponentVersion{{ - Name: "Podman Engine", - Version: versionInfo.Version, - Details: map[string]string{ - "APIVersion": DefaultApiVersion, - "Arch": goRuntime.GOARCH, - "BuildTime": time.Unix(versionInfo.Built, 0).Format(time.RFC3339), - "Experimental": "true", - "GitCommit": versionInfo.GitCommit, - "GoVersion": versionInfo.GoVersion, - "KernelVersion": hostInfo["kernel"].(string), - "MinAPIVersion": MinimalApiVersion, - "Os": goRuntime.GOOS, - }, - }} - - utils.WriteResponse(w, http.StatusOK, handlers.Version{Version: docker.Version{ - Platform: struct { - Name string - }{ - Name: fmt.Sprintf("%s/%s/%s", goRuntime.GOOS, goRuntime.GOARCH, hostInfo["Distribution"].(map[string]interface{})["distribution"].(string)), - }, - APIVersion: components[0].Details["APIVersion"], - Arch: components[0].Details["Arch"], - BuildTime: components[0].Details["BuildTime"], - Components: components, - Experimental: true, - GitCommit: components[0].Details["GitCommit"], - GoVersion: components[0].Details["GoVersion"], - KernelVersion: components[0].Details["KernelVersion"], - MinAPIVersion: components[0].Details["MinAPIVersion"], - Os: components[0].Details["Os"], - Version: components[0].Version, - }}) -} |