From f6d172da4605769c5ca2859a06263f89f393b31a Mon Sep 17 00:00:00 2001 From: Yousong Zhou Date: Fri, 28 Feb 2020 15:10:19 +0800 Subject: [PATCH 1/3] build: rename docker-build to docker-centos-build --- Makefile | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/Makefile b/Makefile index a5f5a4911e..775c8bc1aa 100644 --- a/Makefile +++ b/Makefile @@ -195,7 +195,7 @@ mod: DOCKER_BUILD_IMAGE_VERSION?=latest -define dockerBuildCmd +define dockerCentOSBuildCmd set -o errexit set -o pipefail cd /home/build/onecloud @@ -203,26 +203,26 @@ export GOFLAGS=-mod=vendor make $(1) endef -docker-build: export dockerBuildCmd:=$(call dockerBuildCmd,$(F)) -docker-build: - echo "$$dockerBuildCmd" +docker-centos-build: export dockerCentOSBuildCmd:=$(call dockerCentOSBuildCmd,$(F)) +docker-centos-build: + echo "$$dockerCentOSBuildCmd" docker rm --force onecloud-ci-build &>/dev/null || true docker run \ --name onecloud-ci-build \ --rm \ --volume $(CURDIR):/home/build/onecloud \ yunionio/onecloud-ci:$(DOCKER_BUILD_IMAGE_VERSION) \ - /bin/bash -c "$$dockerBuildCmd" + /bin/bash -c "$$dockerCentOSBuildCmd" chown -R $$(id -u):$$(id -g) _output ls -lh _output/bin # NOTE we need a way to stop and remove the container started by docker-build. # No --tty, --stop-signal won't work -docker-build-stop: - docker stop --time 0 onecloud-ci-build || true +docker-centos-build-stop: + docker-centos stop --time 0 onecloud-ci-build || true -.PHONY: docker-build -.PHONY: docker-build-stop +.PHONY: docker-centos-build +.PHONY: docker-centos-build-stop define helpText Build with docker From 6ef4eb995410324f8234a605b030728ba9956092 Mon Sep 17 00:00:00 2001 From: Yousong Zhou Date: Fri, 28 Feb 2020 15:20:28 +0800 Subject: [PATCH 2/3] build: add docker-alpine-build --- Makefile | 38 ++++++++++++++++++++++++++++++++++---- 1 file changed, 34 insertions(+), 4 deletions(-) diff --git a/Makefile b/Makefile index 775c8bc1aa..d2b23127cb 100644 --- a/Makefile +++ b/Makefile @@ -196,6 +196,7 @@ mod: DOCKER_BUILD_IMAGE_VERSION?=latest define dockerCentOSBuildCmd +set -o xtrace set -o errexit set -o pipefail cd /home/build/onecloud @@ -205,7 +206,6 @@ endef docker-centos-build: export dockerCentOSBuildCmd:=$(call dockerCentOSBuildCmd,$(F)) docker-centos-build: - echo "$$dockerCentOSBuildCmd" docker rm --force onecloud-ci-build &>/dev/null || true docker run \ --name onecloud-ci-build \ @@ -224,12 +224,42 @@ docker-centos-build-stop: .PHONY: docker-centos-build .PHONY: docker-centos-build-stop +define dockerAlpineBuildCmd +set -o xtrace +set -o errexit +set -o pipefail +cd /root/go/src/yunion.io/x/onecloud +export GOFLAGS=-mod=vendor +make $(1) +endef + +docker-alpine-build: export dockerAlpineBuildCmd:=$(call dockerAlpineBuildCmd,$(F)) +docker-alpine-build: + docker rm --force onecloud-docker-alpine-build &>/dev/null || true + docker run --rm \ + --name onecloud-docker-alpine-build \ + -v $(CURDIR):/root/go/src/yunion.io/x/onecloud \ + -v $(CURDIR)/_output/alpine-build:/root/go/src/yunion.io/x/onecloud/_output \ + registry.cn-beijing.aliyuncs.com/yunionio/alpine-build:1.0-1 \ + /bin/sh -c "$$dockerAlpineBuildCmd" + ls -lh _output/alpine-build/bin + +docker-alpine-build-stop: + docker stop --time 0 onecloud-docker-alpine-build || true + +.PHONY: docker-alpine-build +.PHONY: docker-alpine-build-stop + define helpText Build with docker - make docker-build F='-j4' - make docker-build F='-j4 cmd/region cmd/climc' - make docker-build-stop + make docker-centos-build F='-j4' + make docker-centos-build F='-j4 cmd/region cmd/climc' + make docker-centos-build-stop + + make docker-alpine-build F='-j4' + make docker-alpine-build F='-j4 cmd/host cmd/host-deployer' + make docker-alpine-build-stop Tidy up go modules and vendor directory From 5670e2401b706bf96aa179fe02cbad4a6dd45b4f Mon Sep 17 00:00:00 2001 From: Yousong Zhou Date: Fri, 28 Feb 2020 15:21:59 +0800 Subject: [PATCH 3/3] build: github: build host with docker-alpine-build --- .github/workflows/docker.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml index dad7c8b46a..0a4f3eba0a 100644 --- a/.github/workflows/docker.yml +++ b/.github/workflows/docker.yml @@ -29,17 +29,16 @@ jobs: - name: Build run: | sudo apt-get update - sudo apt-get install librados-dev librbd-dev make cmd/apigateway cmd/climc cmd/keystone make cmd/logger cmd/region cmd/scheduler cmd/webconsole make cmd/yunionconf cmd/glance cmd/torrent cmd/s3gateway make cmd/ansibleserver cmd/cloudnet cmd/notify - make cmd/host && ./scripts/bundle_libraries.sh _output/bin/bundles/host _output/bin/host && ./scripts/host_find_libraries.sh _output/bin/bundles/host make cmd/host-deployer && ./scripts/bundle_libraries.sh _output/bin/bundles/host-deployer _output/bin/host-deployer make cmd/baremetal-agent && ./scripts/bundle_libraries.sh _output/bin/bundles/baremetal-agent _output/bin/baremetal-agent make cmd/cloudevent cmd/devtool make cmd/*cli make cmd/esxi-agent + make docker-alpine-build F=cmd/host - name: Image baremetal-agent uses: elgohr/Publish-Docker-Github-Action@master