diff --git a/components/packaging/deb/Makefile b/components/packaging/deb/Makefile index bf3f12571e..c707012e92 100644 --- a/components/packaging/deb/Makefile +++ b/components/packaging/deb/Makefile @@ -7,13 +7,13 @@ VERSION?=0.0.0-dev GO_VERSION:=1.10.3 DEB_VERSION=$(shell ./gen-deb-ver $(ENGINE_DIR) "$(VERSION)") CHOWN:=docker run --rm -v $(CURDIR):/v -w /v alpine chown -EPOCH?= +EPOCH?=1 BUILD=docker build --build-arg GO_VERSION=$(GO_VERSION) -t debbuild-$@/$(ARCH) -f $(CURDIR)/$@/Dockerfile.$(ARCH) . RUN=docker run --rm -i \ -e EPOCH='$(EPOCH)' \ - -e DEB_VERSION=$(DEB_VERSION) \ - -e VERSION=$(VERSION) \ + -e DEB_VERSION=$(word 1, $(DEB_VERSION)) \ + -e VERSION=$(word 2, $(DEB_VERSION)) \ -e DOCKER_GITCOMMIT=$(GITCOMMIT) \ -v $(CURDIR)/debbuild/$@:/build \ -v $(ENGINE_DIR):/engine \ diff --git a/components/packaging/deb/gen-deb-ver b/components/packaging/deb/gen-deb-ver index c0304c7823..bc1e321e26 100755 --- a/components/packaging/deb/gen-deb-ver +++ b/components/packaging/deb/gen-deb-ver @@ -2,6 +2,7 @@ ENGINE_DIR="$1" VERSION="$2" +origVersion=$VERSION SUFFIX=${SUFFIX:=ce} @@ -55,8 +56,8 @@ if [[ "$VERSION" == *-dev ]]; then gitUnix="$($GIT_COMMAND log -1 --pretty='%at')" gitDate="$($DATE_COMMAND --date "@$gitUnix" +'%Y%m%d.%H%M%S')" gitCommit="$($GIT_COMMAND log -1 --pretty='%h')" - gitVersion="git${gitDate}.0.${gitCommit}" - debVersion="$debVersion~$gitVersion" + debVersion="0.${gitDate}~${gitCommit}" + origVersion=$debVersion # $ dpkg --compare-versions 1.5.0 gt 1.5.0~rc1 && echo true || echo false # true @@ -68,4 +69,4 @@ if [[ "$VERSION" == *-dev ]]; then # ie, 1.5.0 > 1.5.0~rc1 > 1.5.0~git20150128.112847.17e840a > 1.5.0~dev~git20150128.112847.17e840a fi -echo "$debVersion" +echo "$debVersion" "$origVersion" diff --git a/components/packaging/rpm/Makefile b/components/packaging/rpm/Makefile index c746907c54..fab09f96e0 100644 --- a/components/packaging/rpm/Makefile +++ b/components/packaging/rpm/Makefile @@ -5,8 +5,10 @@ GITCOMMIT=$(shell cd $(ENGINE_DIR) && git rev-parse --short HEAD) VERSION?=0.0.0-dev GO_VERSION:=1.10.3 GEN_RPM_VER=$(shell ./gen-rpm-ver $(ENGINE_DIR) $(VERSION)) +EPOCH?=1 CHOWN=docker run --rm -i -v $(CURDIR):/v -w /v alpine chown RPMBUILD=docker run --privileged --rm -i\ + -e EPOCH="$(EPOCH)" \ -v $(CURDIR)/rpmbuild/SOURCES:/root/rpmbuild/SOURCES \ -v $(CURDIR)/rpmbuild/BUILD:/root/rpmbuild/BUILD \ -v $(CURDIR)/rpmbuild/BUILDROOT:/root/rpmbuild/BUILDROOT \ @@ -17,7 +19,7 @@ RPMBUILD_FLAGS=-ba\ --define '_gitcommit $(word 3,$(GEN_RPM_VER))' \ --define '_release $(word 2,$(GEN_RPM_VER))' \ --define '_version $(word 1,$(GEN_RPM_VER))' \ - --define '_origversion $(VERSION)' \ + --define '_origversion $(word 4, $(GEN_RPM_VER))' \ SPECS/docker-ce.spec .PHONY: help diff --git a/components/packaging/rpm/centos-7/docker-ce.spec b/components/packaging/rpm/centos-7/docker-ce.spec index 9a65893c5a..41318c4af9 100644 --- a/components/packaging/rpm/centos-7/docker-ce.spec +++ b/components/packaging/rpm/centos-7/docker-ce.spec @@ -1,6 +1,7 @@ Name: docker-ce Version: %{_version} Release: %{_release}%{?dist} +Epoch: %{getenv:EPOCH} Summary: The open-source application container engine Group: Tools/Docker License: ASL 2.0 diff --git a/components/packaging/rpm/fedora-27/docker-ce.spec b/components/packaging/rpm/fedora-27/docker-ce.spec index 337831fae5..cc13455dd1 100644 --- a/components/packaging/rpm/fedora-27/docker-ce.spec +++ b/components/packaging/rpm/fedora-27/docker-ce.spec @@ -1,6 +1,7 @@ Name: docker-ce Version: %{_version} Release: %{_release}%{?dist} +Epoch: %{getenv:EPOCH} Summary: The open-source application container engine Group: Tools/Docker License: ASL 2.0 diff --git a/components/packaging/rpm/fedora-28/docker-ce.spec b/components/packaging/rpm/fedora-28/docker-ce.spec index 337831fae5..cc13455dd1 100644 --- a/components/packaging/rpm/fedora-28/docker-ce.spec +++ b/components/packaging/rpm/fedora-28/docker-ce.spec @@ -1,6 +1,7 @@ Name: docker-ce Version: %{_version} Release: %{_release}%{?dist} +Epoch: %{getenv:EPOCH} Summary: The open-source application container engine Group: Tools/Docker License: ASL 2.0 diff --git a/components/packaging/rpm/gen-rpm-ver b/components/packaging/rpm/gen-rpm-ver index 391c67fc44..1db470e89b 100755 --- a/components/packaging/rpm/gen-rpm-ver +++ b/components/packaging/rpm/gen-rpm-ver @@ -11,6 +11,7 @@ if [[ $(uname) -eq "Darwin" ]]; then fi GIT_COMMAND="git -C $ENGINE_DIR" +origVersion="$VERSION" rpmVersion="$VERSION" rpmRelease=3 @@ -47,12 +48,12 @@ if [[ "$rpmVersion" == *-dev ]] || [ -n "$($GIT_COMMAND status --porcelain)" ]; gitUnix="$($GIT_COMMAND log -1 --pretty='%at')" gitDate="$($DATE_COMMAND --date "@$gitUnix" +'%Y%m%d.%H%M%S')" gitCommit="$($GIT_COMMAND log -1 --pretty='%h')" - gitVersion="git${gitDate}.0.${gitCommit}" # gitVersion is now something like '20150128.112847.17e840a' - rpmVersion="${rpmVersion%-dev}" - rpmRelease="0.0.dev.$gitVersion" + rpmVersion="0.${gitDate}~${gitCommit}" + rpmRelease="0" + origVersion="0.${gitDate}~${gitCommit}" fi # Replace any other dashes with periods rpmVersion="${rpmVersion//-/.}" -echo $rpmVersion $rpmRelease $DOCKER_GITCOMMIT +echo $rpmVersion $rpmRelease $DOCKER_GITCOMMIT $origVersion diff --git a/components/packaging/static/gen-static-ver b/components/packaging/static/gen-static-ver index 4fd3d82ab5..9a462687ba 100755 --- a/components/packaging/static/gen-static-ver +++ b/components/packaging/static/gen-static-ver @@ -19,7 +19,7 @@ if [[ "$VERSION" == *-dev ]]; then gitUnix="$($GIT_COMMAND log -1 --pretty='%at')" gitDate="$($DATE_COMMAND --date "@$gitUnix" +'%Y%m%d.%H%M%S')" gitCommit="$($GIT_COMMAND log -1 --pretty='%h')" - staticVersion="${VERSION}-${gitDate}-${gitCommit}" + staticVersion="${gitDate}~${gitCommit}" fi echo "$staticVersion"