From 0033bf7ed3d8bd61aec9bbcc89b81caedec1a84a Mon Sep 17 00:00:00 2001 From: Ilya Zuyev Date: Thu, 24 Jun 2021 20:02:21 -0700 Subject: [PATCH] make targets for deb and rpm --- Makefile | 70 ++++++++++++++---------- hack/jenkins/release_build_and_upload.sh | 4 +- 2 files changed, 43 insertions(+), 31 deletions(-) diff --git a/Makefile b/Makefile index de1dea5296..e6e1e8cd6f 100644 --- a/Makefile +++ b/Makefile @@ -427,7 +427,8 @@ checksum: ## Generate checksums for f in out/minikube.iso out/minikube-linux-amd64 out/minikube-linux-arm \ out/minikube-linux-arm64 out/minikube-linux-ppc64le out/minikube-linux-s390x \ out/minikube-darwin-amd64 out/minikube-windows-amd64.exe \ - out/docker-machine-driver-kvm2 out/docker-machine-driver-hyperkit; do \ + out/docker-machine-driver-kvm2 out/docker-machine-driver-kvm2-amd64 out/docker-machine-driver-kvm2-arm64 \ + out/docker-machine-driver-hyperkit; do \ if [ -f "$${f}" ]; then \ openssl sha256 "$${f}" | awk '{print $$2}' > "$${f}.sha256" ; \ fi ; \ @@ -513,12 +514,12 @@ verify-iso: # Make sure the current ISO exists in the expected bucket out/docs/minikube.md: $(shell find "cmd") $(shell find "pkg/minikube/constants") go run -ldflags="$(MINIKUBE_LDFLAGS)" -tags gendocs hack/help_text/gen_help_text.go - .PHONY: debs ## Build all deb packages debs: out/minikube_$(DEB_VERSION)-$(DEB_REVISION)_amd64.deb \ out/minikube_$(DEB_VERSION)-$(DEB_REVISION)_arm64.deb \ - out/docker-machine-driver-kvm2_$(DEB_VERSION).deb - + out/docker-machine-driver-kvm2_$(DEB_VERSION).deb \ + out/docker-machine-driver-kvm2_$(DEB_VERSION)-$(DEB_REVISION)_amd64.deb \ + out/docker-machine-driver-kvm2_$(DEB_VERSION)-$(DEB_REVISION)_arm64.deb .PHONY: deb_version deb_version: @@ -788,44 +789,39 @@ out/docker-machine-driver-kvm2-aarch64: out/docker-machine-driver-kvm2-arm64 $(if $(quiet),@echo " CP $@") $(Q)cp $< $@ -out/docker-machine-driver-kvm2-%: -ifeq ($(MINIKUBE_BUILD_IN_DOCKER),y) - docker image inspect -f '{{.Id}} {{.RepoTags}}' $(KVM_BUILD_IMAGE) || $(MAKE) kvm-image - $(call DOCKER,$(KVM_BUILD_IMAGE),/usr/bin/make $@ COMMIT=$(COMMIT)) - # make extra sure that we are linking with the older version of libvirt (1.3.1) - test "`strings $@ | grep '^LIBVIRT_[0-9]' | sort | tail -n 1`" = "LIBVIRT_1.2.9" -else - $(if $(quiet),@echo " GO $@") - $(Q)GOARCH=$* \ - go build \ - -installsuffix "static" \ - -ldflags="$(KVM2_LDFLAGS)" \ - -tags "libvirt.1.3.1 without_lxc" \ - -o $@ \ - k8s.io/minikube/cmd/drivers/kvm -endif - chmod +X $@ out/docker-machine-driver-kvm2_$(DEB_VERSION).deb: out/docker-machine-driver-kvm2_$(DEB_VERSION)-0_amd64.deb cp $< $@ +out/docker-machine-driver-kvm2_$(DEB_VERSION)-$(DEB_REVISION)_amd64.deb: out/docker-machine-driver-kvm2_$(DEB_VERSION)-0_x86_64.deb + cp $< $@ + +out/docker-machine-driver-kvm2_$(DEB_VERSION)-$(DEB_REVISION)_arm64.deb: out/docker-machine-driver-kvm2_$(DEB_VERSION)-0_aarch64.deb + cp $< $@ + out/docker-machine-driver-kvm2_$(DEB_VERSION)-0_%.deb: out/docker-machine-driver-kvm2-% cp -r installers/linux/deb/kvm2_deb_template out/docker-machine-driver-kvm2_$(DEB_VERSION) chmod 0755 out/docker-machine-driver-kvm2_$(DEB_VERSION)/DEBIAN - sed -E -i 's/--VERSION--/'$(DEB_VERSION)'/g' out/docker-machine-driver-kvm2_$(DEB_VERSION)/DEBIAN/control - sed -E -i 's/--ARCH--/'$*'/g' out/docker-machine-driver-kvm2_$(DEB_VERSION)/DEBIAN/control + sed -E -i -e 's/--VERSION--/$(DEB_VERSION)/g' out/docker-machine-driver-kvm2_$(DEB_VERSION)/DEBIAN/control + sed -E -i -e 's/--ARCH--/'$*'/g' out/docker-machine-driver-kvm2_$(DEB_VERSION)/DEBIAN/control mkdir -p out/docker-machine-driver-kvm2_$(DEB_VERSION)/usr/bin cp $< out/docker-machine-driver-kvm2_$(DEB_VERSION)/usr/bin/docker-machine-driver-kvm2 fakeroot dpkg-deb --build out/docker-machine-driver-kvm2_$(DEB_VERSION) $@ rm -rf out/docker-machine-driver-kvm2_$(DEB_VERSION) -out/docker-machine-driver-kvm2-$(RPM_VERSION).rpm: out/docker-machine-driver-kvm2-$(RPM_VERSION)-0.x86_64.deb +out/docker-machine-driver-kvm2-$(RPM_VERSION).rpm: out/docker-machine-driver-kvm2-$(RPM_VERSION)-0.x86_64.rpm + cp $< $@ + +out/docker-machine-driver-kvm2_$(RPM_VERSION).amd64.rpm: out/docker-machine-driver-kvm2-$(RPM_VERSION)-0.x86_64.rpm + cp $< $@ + +out/docker-machine-driver-kvm2_$(RPM_VERSION).arm64.rpm: out/docker-machine-driver-kvm2-$(RPM_VERSION)-0.aarch64.rpm cp $< $@ out/docker-machine-driver-kvm2-$(RPM_VERSION)-0.%.rpm: out/docker-machine-driver-kvm2-% cp -r installers/linux/rpm/kvm2_rpm_template out/docker-machine-driver-kvm2-$(RPM_VERSION) - sed -E -i 's/--VERSION--/'$(RPM_VERSION)'/g' out/docker-machine-driver-kvm2-$(RPM_VERSION)/docker-machine-driver-kvm2.spec - sed -E -i 's|--OUT--|'$(PWD)/out'|g' out/docker-machine-driver-kvm2-$(RPM_VERSION)/docker-machine-driver-kvm2.spec + sed -E -i -e 's/--VERSION--/'$(RPM_VERSION)'/g' out/docker-machine-driver-kvm2-$(RPM_VERSION)/docker-machine-driver-kvm2.spec + sed -E -i -e 's|--OUT--|'$(PWD)/out'|g' out/docker-machine-driver-kvm2-$(RPM_VERSION)/docker-machine-driver-kvm2.spec rpmbuild -bb -D "_rpmdir $(PWD)/out" --target $* \ out/docker-machine-driver-kvm2-$(RPM_VERSION)/docker-machine-driver-kvm2.spec @mv out/$*/docker-machine-driver-kvm2-$(RPM_VERSION)-0.$*.rpm out/ && rmdir out/$* @@ -847,10 +843,24 @@ install-kvm-driver: out/docker-machine-driver-kvm2 ## Install KVM Driver mkdir -p $(GOBIN) cp out/docker-machine-driver-kvm2 $(GOBIN)/docker-machine-driver-kvm2 -.PHONY: release-kvm-driver -release-kvm-driver: install-kvm-driver checksum ## Release KVM Driver - gsutil cp $(GOBIN)/docker-machine-driver-kvm2 gs://minikube/drivers/kvm/$(VERSION)/ - gsutil cp $(GOBIN)/docker-machine-driver-kvm2.sha256 gs://minikube/drivers/kvm/$(VERSION)/ +out/docker-machine-driver-kvm2-%: +ifeq ($(MINIKUBE_BUILD_IN_DOCKER),y) + docker image inspect -f '{{.Id}} {{.RepoTags}}' $(KVM_BUILD_IMAGE) || $(MAKE) kvm-image + $(call DOCKER,$(KVM_BUILD_IMAGE),/usr/bin/make $@ COMMIT=$(COMMIT)) + # make extra sure that we are linking with the older version of libvirt (1.3.1) + test "`strings $@ | grep '^LIBVIRT_[0-9]' | sort | tail -n 1`" = "LIBVIRT_1.2.9" +else + $(if $(quiet),@echo " GO $@") + $(Q)GOARCH=$* \ + go build \ + -installsuffix "static" \ + -ldflags="$(KVM2_LDFLAGS)" \ + -tags "libvirt.1.3.1 without_lxc" \ + -o $@ \ + k8s.io/minikube/cmd/drivers/kvm +endif + chmod +X $@ + site/themes/docsy/assets/vendor/bootstrap/package.js: ## update the website docsy theme git submodule git submodule update -f --init --recursive diff --git a/hack/jenkins/release_build_and_upload.sh b/hack/jenkins/release_build_and_upload.sh index 701d05329f..6465f7bc33 100755 --- a/hack/jenkins/release_build_and_upload.sh +++ b/hack/jenkins/release_build_and_upload.sh @@ -64,7 +64,9 @@ env BUILD_IN_DOCKER=y \ "out/minikube-${RPM_VERSION}-${RPM_REVISION}.ppc64le.rpm" \ "out/minikube-${RPM_VERSION}-${RPM_REVISION}.s390x.rpm" \ "out/docker-machine-driver-kvm2_${DEB_VERSION}-${DEB_REVISION}_amd64.deb" \ - "out/docker-machine-driver-kvm2-${RPM_VERSION}-${RPM_REVISION}.x86_64.rpm" + "out/docker-machine-driver-kvm2_${DEB_VERSION}-${DEB_REVISION}_arm64.deb" \ + "out/docker-machine-driver-kvm2-${RPM_VERSION}-${RPM_REVISION}.x86_64.rpm" \ + "out/docker-machine-driver-kvm2-${RPM_VERSION}-${RPM_REVISION}.arm64.rpm" # check if 'commit: ' line contains '-dirty' commit suffix BUILT_VERSION=$("out/minikube-$(go env GOOS)-$(go env GOARCH)" version)