feat(helm-reval): expose GET /info endpoint#275
Conversation
Adds a shared HTTP handler to go-lib/pkg/version that serves build
metadata as JSON at GET /version. Version and commit are injected at
link time via Bazel x_defs (STABLE_VERSION, STABLE_GIT_COMMIT) when
built with --stamp. Falls back to Go runtime build info for commit
when GitHash is not injected, so local go build still returns a real
commit SHA.
Response schema: {"version": "v1.2.3", "commit": "abc1234"}
Refs: NVCF-10975
Adds a GET /version handler to the management server (port 8082, alongside /healthz and /log_level). Returns service semver and commit SHA injected at build time via Bazel x_defs. Blocked on go-lib PR #270 merging. Once that lands, go.mod will be updated to the published version and the inline handler replaced with nvcfversion.Handler(). Refs: NVCF-10975
|
Important Review skippedDraft detected. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Enterprise Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
🛡️ CodeQL Analysis🚨 Found 2 issue(s) Severity Breakdown:
📋 Top Issues🔗 View full details in Security tab 🕐 Last updated: 2026-07-20 21:20:10 UTC | Commit: a799e06 |
|
Please provide a Github issue instead of an internal JIRA. |
Done — created issue #315 and updated the Issues section. |
|
Bazel CI failure is expected. nvcfversion.Handler() is defined in go-lib PR #270 which has not merged yet. Once that lands, go.mod will be updated to the new go-lib version and this will go green. |
Adds Service string var injected via x_defs so each service identifies
itself in the response. Renames from GET /version to GET /info following
reviewer feedback that /info is more extensible for future fields.
Response schema: {"service":"nvcf-my-service","version":"v1.2.3","commit":"abc1234"}
Refs: NVCF-10975
Registers nvcfversion.Handler() at GET /info on the management server (port 8082). Returns service name, semver, and commit SHA injected at build time via Bazel x_defs. Blocked on go-lib PR #270 merging. Once that lands, go.mod will be updated to the published version that includes Handler(). Refs: NVCF-10975
TL;DR
Adds
GET /infoto the helm-reval management server (port 8082, alongside/healthzand/log_level). Returns service name, semver, and commit SHA injected at build time via Bazelx_defs.Additional Details
nvcfversion.Handler()from go-lib serves the response. Service, version, and commit are resolved from theService,Version, andGitHashpackage vars set viax_defsinBUILD.bazelwhen building with--stamp.This PR is blocked on go-lib PR #270. Once that merges,
go.modwill be updated to the published version that includesHandler()and CI will go green.Changes:
cmd/reval/cli/server.go: registersnvcfversion.Handler()atGET /infoinserveManagementRoutescmd/reval/cli/BUILD.bazel: adds go-libpkg/versionto depscmd/reval-service/BUILD.bazel: addsServicex_def ("nvcf-helm-reval-api") alongside the existingVersionandGitHashx_defsFor the Reviewer
For QA
Tested locally on ncp-local k3d cluster:
Issues
Relates to #315
Checklist