File tree Expand file tree Collapse file tree 5 files changed +49
-6
lines changed
cmd/machine-controller-manager/app Expand file tree Collapse file tree 5 files changed +49
-6
lines changed Original file line number Diff line number Diff line change 2828 export BINARY_PATH=" $( ${READLINK_BIN} -f " ${BINARY_PATH} " ) /bin"
2929fi
3030
31- cd " ${SOURCE_PATH} "
31+ VCS=" github.com"
32+ ORGANIZATION=" gardener"
33+ PROJECT=" machine-controller-manager"
34+ REPOSITORY=${VCS} /${ORGANIZATION} /${PROJECT}
35+ GIT_SHA=" ${GIT_SHA:- $(git rev-parse --short HEAD || echo " GitNotFound" )} "
36+
37+ cd " ${SOURCE_PATH} "
3238
3339# ##############################################################################
3440
41+ VERSION_FILE=" $( ${READLINK_BIN} -f " ${SOURCE_PATH} /VERSION" ) "
42+ VERSION=" ${VERSION:- " $( cat " ${VERSION_FILE} " ) " } "
43+ GIT_SHA=" ${GIT_SHA:- $(git rev-parse --short HEAD || echo " GitNotFound" )} "
44+
3545CGO_ENABLED=0 GO111MODULE=on go build \
3646 -v \
3747 -o " ${BINARY_PATH} /machine-controller-manager" \
48+ -ldflags " -w -X ${REPOSITORY} /pkg/version.Version=${VERSION} -X ${REPOSITORY} /pkg/version.GitSHA=${GIT_SHA} " \
3849 cmd/machine-controller-manager/controller_manager.go
Original file line number Diff line number Diff line change 66TOOLS_DIR := hack/tools
77include hack/tools.mk
88
9+ REPOSITORY := $(shell go list -m)
910IMAGE_REPOSITORY := europe-docker.pkg.dev/gardener-project/public/gardener/machine-controller-manager
10- IMAGE_TAG := $(shell cat VERSION)
11+ VERSION := $(shell cat VERSION)
12+ IMAGE_TAG := $(VERSION )
13+ GIT_SHA := $(shell git rev-parse --short HEAD || echo "GitNotFound")
1114COVERPROFILE := test/output/coverprofile.out
1215
1316LEADER_ELECT ?= "true" # If LEADER_ELECT is not set in the environment, use the default value "true"
@@ -89,6 +92,7 @@ non-gardener-restore:
8992.PHONY : start
9093start :
9194 @GO111MODULE=on go run \
95+ -ldflags " -w -X ${REPOSITORY} /pkg/version.Version=${VERSION} -X ${REPOSITORY} /pkg/version.GitSHA=${GIT_SHA} " \
9296 cmd/machine-controller-manager/controller_manager.go \
9397 --control-kubeconfig=${CONTROL_KUBECONFIG} \
9498 --target-kubeconfig=${TARGET_KUBECONFIG} \
Original file line number Diff line number Diff line change @@ -43,6 +43,7 @@ import (
4343 "github.com/gardener/machine-controller-manager/cmd/machine-controller-manager/app/options"
4444 "github.com/gardener/machine-controller-manager/pkg/handlers"
4545 "github.com/gardener/machine-controller-manager/pkg/util/configz"
46+ "github.com/gardener/machine-controller-manager/pkg/version"
4647 prometheus "github.com/prometheus/client_golang/prometheus/promhttp"
4748 v1 "k8s.io/api/core/v1"
4849 "k8s.io/apimachinery/pkg/runtime/schema"
@@ -51,7 +52,6 @@ import (
5152 "k8s.io/client-go/discovery"
5253 "k8s.io/client-go/kubernetes"
5354 v1core "k8s.io/client-go/kubernetes/typed/core/v1"
54- "k8s.io/client-go/pkg/version"
5555 "k8s.io/client-go/rest"
5656 "k8s.io/client-go/tools/clientcmd"
5757 "k8s.io/client-go/tools/leaderelection"
7575// Run runs the MCMServer. This should never exit.
7676func Run (s * options.MCMServer ) error {
7777 // To help debugging, immediately log version
78- klog . V ( 3 ). Infof ( "Version: %+v" , version .Get () )
78+ version .LogVersionInfoWithLevel ( 3 )
7979 if err := s .Validate (); err != nil {
8080 return err
8181 }
Original file line number Diff line number Diff line change @@ -45,6 +45,7 @@ import (
4545 "github.com/gardener/machine-controller-manager/pkg/util/configz"
4646 "github.com/gardener/machine-controller-manager/pkg/util/provider/app/options"
4747 "github.com/gardener/machine-controller-manager/pkg/util/provider/driver"
48+ "github.com/gardener/machine-controller-manager/pkg/version"
4849 prometheus "github.com/prometheus/client_golang/prometheus/promhttp"
4950 v1 "k8s.io/api/core/v1"
5051 "k8s.io/apimachinery/pkg/runtime/schema"
@@ -53,7 +54,6 @@ import (
5354 "k8s.io/client-go/discovery"
5455 "k8s.io/client-go/kubernetes"
5556 v1core "k8s.io/client-go/kubernetes/typed/core/v1"
56- "k8s.io/client-go/pkg/version"
5757 "k8s.io/client-go/rest"
5858 "k8s.io/client-go/tools/clientcmd"
5959 "k8s.io/client-go/tools/leaderelection"
7373// Run runs the MCServer. This should never exit.
7474func Run (s * options.MCServer , driver driver.Driver ) error {
7575 // To help debugging, immediately log version
76- klog . V ( 4 ). Infof ( "Version: %+v" , version .Get () )
76+ version .LogVersionInfoWithLevel ( 4 )
7777 if err := s .Validate (); err != nil {
7878 return err
7979 }
Original file line number Diff line number Diff line change 1+ // SPDX-FileCopyrightText: 2025 SAP SE or an SAP affiliate company and Gardener contributors
2+ //
3+ // SPDX-License-Identifier: Apache-2.0
4+
5+ package version
6+
7+ import (
8+ "k8s.io/klog/v2"
9+ "runtime"
10+ )
11+
12+ var (
13+ // These variables typically come from -ldflags settings in build
14+
15+ // Version shows the machine-controller-manager binary version.
16+ Version string
17+ // GitSHA shows the machine-controller-manager binary code commit SHA on git.
18+ GitSHA string
19+ )
20+
21+ // LogVersionInfoWithLevel logs machine-controller-manager version and build information.
22+ func LogVersionInfoWithLevel (debugLevel int32 ) {
23+ level := klog .Level (debugLevel )
24+ klog .V (level ).Infof ("machine-controller-manager Version: %s\n " , Version )
25+ klog .V (level ).Infof ("Git SHA: %s\n " , GitSHA )
26+ klog .V (level ).Infof ("Go Version: %s\n " , runtime .Version ())
27+ klog .V (level ).Infof ("Go OS/Arch: %s/%s\n " , runtime .GOOS , runtime .GOARCH )
28+ }
You can’t perform that action at this time.
0 commit comments