From 09bd9fef8e214eeb8487844d6f25f7f6c1101c22 Mon Sep 17 00:00:00 2001 From: makdon Date: Thu, 23 May 2024 01:36:03 +0800 Subject: [PATCH 1/2] feat: Use version info from runtime/debug:BuildInfo when installed by go install --- protoc-gen-grpc-gateway/main.go | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/protoc-gen-grpc-gateway/main.go b/protoc-gen-grpc-gateway/main.go index 5a1e6977e2a..503f15c5590 100644 --- a/protoc-gen-grpc-gateway/main.go +++ b/protoc-gen-grpc-gateway/main.go @@ -13,6 +13,7 @@ import ( "flag" "fmt" "os" + "runtime/debug" "strings" "github.com/grpc-ecosystem/grpc-gateway/v2/internal/codegenerator" @@ -50,6 +51,21 @@ func main() { flag.Parse() if *versionFlag { + if commit == "unknown" { + buildInfo, ok := debug.ReadBuildInfo() + if ok { + for _, setting := range buildInfo.Settings { + if setting.Key == "vcs.revision" { + commit = setting.Value + } + if setting.Key == "vcs.time" { + date = setting.Value + } + } + fmt.Printf("commit %v, built at %v\n", commit, date) + os.Exit(0) + } + } fmt.Printf("Version %v, commit %v, built at %v\n", version, commit, date) os.Exit(0) } From f09e37f26bd1bfdac67173863a2f7a8b2b9f75cb Mon Sep 17 00:00:00 2001 From: makdon Date: Thu, 23 May 2024 01:46:23 +0800 Subject: [PATCH 2/2] feat: Use version info from runtime/debug:BuildInfo when installed by go install --- protoc-gen-openapiv2/main.go | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/protoc-gen-openapiv2/main.go b/protoc-gen-openapiv2/main.go index b1e27f3047d..958b77e8725 100644 --- a/protoc-gen-openapiv2/main.go +++ b/protoc-gen-openapiv2/main.go @@ -4,6 +4,7 @@ import ( "flag" "fmt" "os" + "runtime/debug" "strings" "github.com/grpc-ecosystem/grpc-gateway/v2/internal/codegenerator" @@ -63,6 +64,21 @@ func main() { flag.Parse() if *versionFlag { + if commit == "unknown" { + buildInfo, ok := debug.ReadBuildInfo() + if ok { + for _, setting := range buildInfo.Settings { + if setting.Key == "vcs.revision" { + commit = setting.Value + } + if setting.Key == "vcs.time" { + date = setting.Value + } + } + fmt.Printf("commit %v, built at %v\n", commit, date) + os.Exit(0) + } + } fmt.Printf("Version %v, commit %v, built at %v\n", version, commit, date) os.Exit(0) }