diff --git a/components/packaging/deb/Makefile b/components/packaging/deb/Makefile index dd800b3b4f..9e0c2d4e10 100644 --- a/components/packaging/deb/Makefile +++ b/components/packaging/deb/Makefile @@ -156,21 +156,7 @@ sources/dockerd.json: ../common/dockerd.json -e 's/$${IMAGE_TAG}/$(IMAGE_TAG)/' \ $< > $@ -# TODO: Eventually clean this up when we release an image with a manifest -DOCKER2OCI=artifacts/docker2oci -$(DOCKER2OCI): - -$(CHOWN) -R $(shell id -u):$(shell id -g) $(@D) - docker run --name docker2oci $(GO_IMAGE) sh -c 'go get github.com/coolljt0725/docker2oci' - mkdir -p $(@D) - docker cp docker2oci:/go/bin/docker2oci "$@" - docker rm -f docker2oci - $(CHOWN) -R $(shell id -u):$(shell id -g) $(@D) - # offline bundle -sources/engine.tar: $(DOCKER2OCI) - $(MAKE) -C ../image ENGINE_IMAGE=$(ENGINE_IMAGE) ENGINE_SCOPE=$(ENGINE_SCOPE) image-linux - mkdir -p artifacts - docker save -o artifacts/docker-engine.tar $$(cat ../image/image-linux) - ./$(DOCKER2OCI) -i artifacts/docker-engine.tar artifacts/engine-image - mkdir -p $(@D) - tar c -C artifacts/engine-image . > $@ +sources/engine.tar: + $(MAKE) -C ../image ENGINE_IMAGE=$(ENGINE_IMAGE) ENGINE_SCOPE=$(ENGINE_SCOPE) engine-$(ARCH).tar + mv ../image/engine-$(ARCH).tar $@ diff --git a/components/packaging/image/Makefile b/components/packaging/image/Makefile index 8165fa5ab7..2f5b2f825b 100644 --- a/components/packaging/image/Makefile +++ b/components/packaging/image/Makefile @@ -9,6 +9,7 @@ STATIC_VERSION=$(shell ../static/gen-static-ver $(ENGINE_DIR) $(VERSION)) DOCKER_HUB_ORG?=dockereng ARCH=$(shell uname -m) ENGINE_IMAGE?=engine-community +CHOWN:=docker run --rm -v $(CURDIR):/v -w /v alpine chown DEFAULT_PRODUCT_LICENSE?=Community Engine .PHONY: help @@ -42,9 +43,21 @@ image-linux: $(ENGINE_DIR)/Dockerfile.engine --file $< $(ENGINE_DIR) echo $(DOCKER_HUB_ORG)/$(ENGINE_IMAGE):$(STATIC_VERSION).$(ARCH) > $@ -engine-$(ARCH).tar: image-linux - docker save -o $@ $$(cat $<) +DOCKER2OCI=artifacts/docker2oci +$(DOCKER2OCI): + -$(CHOWN) -R $(shell id -u):$(shell id -g) $(@D) + docker run --name docker2oci $(ENGINE_GO_IMAGE) sh -c 'go get github.com/coolljt0725/docker2oci' + mkdir -p $(@D) + docker cp docker2oci:/go/bin/docker2oci "$@" + docker rm -f docker2oci + $(CHOWN) -R $(shell id -u):$(shell id -g) $(@D) +engine-$(ARCH).tar: image-linux $(DOCKER2OCI) + mkdir -p artifacts + docker save -o artifacts/docker-engine.tar $$(cat image-linux) + ./$(DOCKER2OCI) -i artifacts/docker-engine.tar artifacts/engine-image + mkdir -p $(@D) + tar c -C artifacts/engine-image . > $@ .PHONY: release release: diff --git a/components/packaging/rpm/Makefile b/components/packaging/rpm/Makefile index a6157c1c5c..e9b44ec8b3 100644 --- a/components/packaging/rpm/Makefile +++ b/components/packaging/rpm/Makefile @@ -123,21 +123,7 @@ rpmbuild/SOURCES/dockerd.json: ../common/dockerd.json -e 's/$${IMAGE_TAG}/$(IMAGE_TAG)/' \ $< > $@ -# TODO: Eventually clean this up when we release an image with a manifest -DOCKER2OCI=artifacts/docker2oci -$(DOCKER2OCI): - -$(CHOWN) -R $(shell id -u):$(shell id -g) $(@D) - docker run --name docker2oci $(GO_IMAGE) sh -c 'go get github.com/coolljt0725/docker2oci' - mkdir -p $(@D) - docker cp docker2oci:/go/bin/docker2oci "$@" - docker rm -f docker2oci - $(CHOWN) -R $(shell id -u):$(shell id -g) $(@D) - # offline bundle -rpmbuild/SOURCES/engine.tar: $(DOCKER2OCI) - $(MAKE) -C ../image ENGINE_IMAGE=$(ENGINE_IMAGE) ENGINE_SCOPE=$(ENGINE_SCOPE) image-linux - mkdir -p artifacts - docker save -o artifacts/docker-engine.tar $$(cat ../image/image-linux) - ./$(DOCKER2OCI) -i artifacts/docker-engine.tar artifacts/engine-image - mkdir -p $(@D) - tar c -C artifacts/engine-image . > $@ +rpmbuild/SOURCES/engine.tar: + $(MAKE) -C ../image ENGINE_IMAGE=$(ENGINE_IMAGE) ENGINE_SCOPE=$(ENGINE_SCOPE) engine-$(ARCH).tar + mv ../image/engine-$(ARCH).tar $@