From 6ffe8147f566f106b80af8feefd07815fc31a96b Mon Sep 17 00:00:00 2001 From: Brian Meek Date: Thu, 15 Sep 2022 12:17:41 -0700 Subject: [PATCH] Add commit hash to version API Signed-off-by: Brian Meek --- clientapi/routing/routing.go | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/clientapi/routing/routing.go b/clientapi/routing/routing.go index e8b38a049..b5c18fbd2 100644 --- a/clientapi/routing/routing.go +++ b/clientapi/routing/routing.go @@ -19,6 +19,8 @@ import ( "net/http" "strings" + "runtime/debug" + "github.com/gorilla/mux" appserviceAPI "github.com/matrix-org/dendrite/appservice/api" "github.com/matrix-org/dendrite/clientapi/api" @@ -41,6 +43,17 @@ import ( "github.com/sirupsen/logrus" ) +var commitHash = func() string { + if info, ok := debug.ReadBuildInfo(); ok { + for _, setting := range info.Settings { + if setting.Key == "vcs.revision" { + return setting.Value + } + } + } + return "" +}() + // Setup registers HTTP handlers with the given ServeMux. It also supplies the given http.Client // to clients which need to make outbound HTTP requests. // @@ -101,6 +114,7 @@ func Setup( JSON: struct { Versions []string `json:"versions"` UnstableFeatures map[string]bool `json:"unstable_features"` + CommitHash string `json:"commit_hash"` }{Versions: []string{ "r0.0.1", "r0.1.0", @@ -112,7 +126,7 @@ func Setup( "v1.0", "v1.1", "v1.2", - }, UnstableFeatures: unstableFeatures}, + }, UnstableFeatures: unstableFeatures, CommitHash: commitHash}, } }), ).Methods(http.MethodGet, http.MethodOptions)