Skip to content

Commit f2b4ca4

Browse files
authored
Merge pull request #6257 from afbjorklund/storage-provisioner-arch-image
Allow building storage-provisioner for other arch
2 parents 50c32d2 + bfa7c13 commit f2b4ca4

File tree

3 files changed

+20
-31
lines changed

3 files changed

+20
-31
lines changed

Makefile

Lines changed: 18 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -81,10 +81,16 @@ BUILD_OS := $(shell uname -s)
8181
SHA512SUM=$(shell command -v sha512sum || echo "shasum -a 512")
8282

8383
STORAGE_PROVISIONER_TAG := v1.8.1
84+
# TODO: multi-arch manifest
85+
ifeq ($(GOARCH),amd64)
86+
STORAGE_PROVISIONER_IMAGE ?= $(REGISTRY)/storage-provisioner:$(STORAGE_PROVISIONER_TAG)
87+
else
88+
STORAGE_PROVISIONER_IMAGE ?= $(REGISTRY)/storage-provisioner-$(GOARCH):$(STORAGE_PROVISIONER_TAG)
89+
endif
8490

8591
# Set the version information for the Kubernetes servers
8692
MINIKUBE_LDFLAGS := -X k8s.io/minikube/pkg/version.version=$(VERSION) -X k8s.io/minikube/pkg/version.isoVersion=$(ISO_VERSION) -X k8s.io/minikube/pkg/version.isoPath=$(ISO_BUCKET) -X k8s.io/minikube/pkg/version.gitCommitID=$(COMMIT)
87-
PROVISIONER_LDFLAGS := "$(MINIKUBE_LDFLAGS) -s -w"
93+
PROVISIONER_LDFLAGS := "-X k8s.io/minikube/pkg/storage.version=$(STORAGE_PROVISIONER_TAG) -s -w"
8894

8995
MINIKUBEFILES := ./cmd/minikube/
9096
HYPERKIT_FILES := ./cmd/drivers/hyperkit
@@ -472,17 +478,20 @@ $(ISO_BUILD_IMAGE): deploy/iso/minikube-iso/Dockerfile
472478
@echo ""
473479
@echo "$(@) successfully built"
474480

475-
out/storage-provisioner:
476-
CGO_ENABLED=0 GOOS=linux go build -o $@ -ldflags=$(PROVISIONER_LDFLAGS) cmd/storage-provisioner/main.go
481+
out/storage-provisioner: out/storage-provisioner-$(GOARCH)
482+
cp $< $@
477483

478-
.PHONY: storage-provisioner-image
479-
storage-provisioner-image: out/storage-provisioner ## Build storage-provisioner docker image
480-
ifeq ($(GOARCH),amd64)
481-
docker build -t $(REGISTRY)/storage-provisioner:$(STORAGE_PROVISIONER_TAG) -f deploy/storage-provisioner/Dockerfile .
484+
out/storage-provisioner-%: cmd/storage-provisioner/main.go pkg/storage/storage_provisioner.go
485+
ifeq ($(MINIKUBE_BUILD_IN_DOCKER),y)
486+
$(call DOCKER,$(BUILD_IMAGE),/usr/bin/make $@)
482487
else
483-
docker build -t $(REGISTRY)/storage-provisioner-$(GOARCH):$(STORAGE_PROVISIONER_TAG) -f deploy/storage-provisioner/Dockerfile-$(GOARCH) .
488+
CGO_ENABLED=0 GOOS=linux GOARCH=$* go build -o $@ -ldflags=$(PROVISIONER_LDFLAGS) cmd/storage-provisioner/main.go
484489
endif
485490

491+
.PHONY: storage-provisioner-image
492+
storage-provisioner-image: out/storage-provisioner-$(GOARCH) ## Build storage-provisioner docker image
493+
docker build -t $(STORAGE_PROVISIONER_IMAGE) -f deploy/storage-provisioner/Dockerfile --build-arg arch=$(GOARCH) .
494+
486495
.PHONY: kic-base-image
487496
kic-base-image: ## builds the base image used for kic.
488497
docker rmi -f $(REGISTRY)/kicbase:v0.0.2-snapshot || true
@@ -492,11 +501,7 @@ kic-base-image: ## builds the base image used for kic.
492501

493502
.PHONY: push-storage-provisioner-image
494503
push-storage-provisioner-image: storage-provisioner-image ## Push storage-provisioner docker image using gcloud
495-
ifeq ($(GOARCH),amd64)
496-
gcloud docker -- push $(REGISTRY)/storage-provisioner:$(STORAGE_PROVISIONER_TAG)
497-
else
498-
gcloud docker -- push $(REGISTRY)/storage-provisioner-$(GOARCH):$(STORAGE_PROVISIONER_TAG)
499-
endif
504+
gcloud docker -- push $(STORAGE_PROVISIONER_IMAGE)
500505

501506
.PHONY: out/gvisor-addon
502507
out/gvisor-addon: pkg/minikube/assets/assets.go pkg/minikube/translate/translations.go ## Build gvisor addon

deploy/storage-provisioner/Dockerfile

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,5 +13,6 @@
1313
# limitations under the License.
1414

1515
FROM scratch
16-
COPY out/storage-provisioner storage-provisioner
16+
ARG arch
17+
COPY out/storage-provisioner-${arch} storage-provisioner
1718
CMD ["/storage-provisioner"]

deploy/storage-provisioner/Dockerfile-s390x

Lines changed: 0 additions & 17 deletions
This file was deleted.

0 commit comments

Comments
 (0)