ci: add git version

Even if it egde version we will define git-version.
This commit is contained in:
Serge Logvinov
2023-05-08 10:29:40 +03:00
parent 3796b9aa9d
commit f813f3037a
2 changed files with 12 additions and 10 deletions

View File

@@ -10,7 +10,9 @@ COPY go.mod go.sum /src
RUN go mod download && go mod verify RUN go mod download && go mod verify
COPY . . COPY . .
ARG VERSION
ARG TAG ARG TAG
ARG SHA
RUN make build-all-archs RUN make build-all-archs
######################################## ########################################

View File

@@ -5,13 +5,12 @@ IMAGE ?= $(REGISTRY)/$(USERNAME)/$(PROJECT)
PLATFORM ?= linux/arm64,linux/amd64 PLATFORM ?= linux/arm64,linux/amd64
PUSH ?= false PUSH ?= false
VERSION ?= $(shell git describe --dirty --tag --match='v*')
SHA ?= $(shell git describe --match=none --always --abbrev=8 --dirty) SHA ?= $(shell git describe --match=none --always --abbrev=8 --dirty)
TAG ?= $(shell git describe --tag --always --match='v*') TAG ?= $(VERSION)
ifneq ($(TAG),edge)
GO_LDFLAGS ?= -ldflags '-X k8s.io/component-base/version.gitVersion=$(TAG)' GO_LDFLAGS := -s -w
else GO_LDFLAGS += -X k8s.io/component-base/version.gitVersion=$(VERSION)
GO_LDFLAGS ?= -ldflags '-X k8s.io/component-base/version.gitCommit=$(SHA)'
endif
OS ?= $(shell go env GOOS) OS ?= $(shell go env GOOS)
ARCH ?= $(shell go env GOARCH) ARCH ?= $(shell go env GOARCH)
@@ -62,7 +61,7 @@ clean: ## Clean
.PHONY: build .PHONY: build
build: ## Build build: ## Build
CGO_ENABLED=0 GOOS=$(OS) GOARCH=$(ARCH) go build $(GO_LDFLAGS) \ CGO_ENABLED=0 GOOS=$(OS) GOARCH=$(ARCH) go build -ldflags "$(GO_LDFLAGS)" \
-o bin/proxmox-cloud-controller-manager-$(ARCH) ./cmd/proxmox-cloud-controller-manager -o bin/proxmox-cloud-controller-manager-$(ARCH) ./cmd/proxmox-cloud-controller-manager
.PHONY: run .PHONY: run
@@ -116,8 +115,9 @@ docker-init:
.PHONY: images .PHONY: images
images: ## Build images images: ## Build images
@docker buildx build $(BUILD_ARGS) \ docker buildx build $(BUILD_ARGS) \
--build-arg TAG=$(TAG) \ --build-arg VERSION="$(VERSION)" \
--build-arg SHA=$(SHA) \ --build-arg TAG="$(TAG)" \
--build-arg SHA="$(SHA)" \
-t $(IMAGE):$(TAG) \ -t $(IMAGE):$(TAG) \
-f Dockerfile . -f Dockerfile .