1
0
mirror of https://github.com/ipfs/kubo.git synced 2025-06-30 01:52:26 +08:00

gateway: add CurrentCommit to /version

License: MIT
Signed-off-by: Lars Gierth <larsg@systemli.org>
This commit is contained in:
Lars Gierth
2015-11-24 00:59:51 +01:00
parent 8ab0ddfe44
commit 3e03ae8f77
2 changed files with 9 additions and 1 deletions

View File

@ -8,6 +8,7 @@ import (
core "github.com/ipfs/go-ipfs/core"
id "github.com/ipfs/go-ipfs/p2p/protocol/identify"
config "github.com/ipfs/go-ipfs/repo/config"
)
// Gateway should be instantiated using NewGateway
@ -58,7 +59,8 @@ func GatewayOption(writable bool) ServeOption {
func VersionOption() ServeOption {
return func(n *core.IpfsNode, _ net.Listener, mux *http.ServeMux) (*http.ServeMux, error) {
mux.HandleFunc("/version", func(w http.ResponseWriter, r *http.Request) {
fmt.Fprintf(w, "Client Version: %s\n", id.ClientVersion)
fmt.Fprintf(w, "Commit: %s\n", config.CurrentCommit)
fmt.Fprintf(w, "Client Version: %s\n", id.ClientVersion)
fmt.Fprintf(w, "Protocol Version: %s\n", id.IpfsVersion)
})
return mux, nil

View File

@ -401,6 +401,8 @@ func TestIPNSHostnameBacklinks(t *testing.T) {
}
func TestVersion(t *testing.T) {
config.CurrentCommit = "theshortcommithash"
ns := mockNamesys{}
ts, _ := newTestServerAndNode(t, ns)
t.Logf("test server url: %s", ts.URL)
@ -421,6 +423,10 @@ func TestVersion(t *testing.T) {
}
s := string(body)
if !strings.Contains(s, "Commit: theshortcommithash") {
t.Fatalf("response doesn't contain commit:\n%s", s)
}
if !strings.Contains(s, "Client Version: "+id.ClientVersion) {
t.Fatalf("response doesn't contain client version:\n%s", s)
}