Change-Id: I08ddd516337fc1b654ee52c3e26eee7a7003755d
Reviewed-on: http://photon-jenkins.eng.vmware.com:8082/3195
Reviewed-by: Kumar Kaushik <kaushikk@vmware.com>
Tested-by: gerrit-photon <photon-checkins@vmware.com>
| ... | ... |
@@ -1,20 +1,27 @@ |
| 1 |
+%define debug_package %{nil}
|
|
| 2 |
+%define __os_install_post %{nil}
|
|
| 1 | 3 |
Summary: Docker |
| 2 | 4 |
Name: docker |
| 3 | 5 |
Version: 1.13.1 |
| 4 |
-Release: 3%{?dist}
|
|
| 6 |
+Release: 4%{?dist}
|
|
| 5 | 7 |
License: ASL 2.0 |
| 6 | 8 |
URL: http://docs.docker.com |
| 7 | 9 |
Group: Applications/File |
| 8 | 10 |
Vendor: VMware, Inc. |
| 9 | 11 |
Distribution: Photon |
| 10 |
-Source0: https://github.com/docker/docker/archive/%{name}-%{version}.tar.gz
|
|
| 11 |
-%define sha1 docker=8a39c44c9e665495484fd86fbefdfbc9ab9d815d |
|
| 12 |
-Source1: https://github.com/docker/containerd/archive/containerd-0.2.5.tar.gz |
|
| 13 |
-%define sha1 containerd=aaf6fd1c5176b8575af1d8edf82af3d733528451 |
|
| 14 |
-Source2: https://github.com/opencontainers/runc/tree/runc-1.0.0-rc2-9df8b306d01f59d3a8029be411de015b7304dd8f.zip |
|
| 15 |
-%define sha1 runc=8f66277f75bafebe564226d8a3107a19d60b3237 |
|
| 16 |
-Source3: https://github.com/docker/libnetwork/archive/docker-libnetwork-master-0.8.1.tar.gz |
|
| 17 |
-%define sha1 docker-libnetwork-master=231c59f72a17f5e3f33e75e1efa164623e1852d8 |
|
| 12 |
+#Git commits must be in sync with docker/hack/dockerfile/binaries-commits |
|
| 13 |
+Source0: https://github.com/docker/moby/archive/moby-%{version}.tar.gz
|
|
| 14 |
+%define sha1 moby=eb67f8c60bd132d8917335ebf92d90020ba52d27 |
|
| 15 |
+%define DOCKER_COMMIT 092cba3 |
|
| 16 |
+Source1: https://github.com/docker/containerd/tree/containerd-aa8187d.tar.gz |
|
| 17 |
+%define CONTAINERD_COMMIT aa8187dbd3b7ad67d8e5e3a15115d3eef43a7ed1 |
|
| 18 |
+%define sha1 containerd=b8aac40b423e80028ec6b7ff5cca1ccaab617d86 |
|
| 19 |
+Source2: https://github.com/docker/runc/tree/runc-9df8b30.tar.gz |
|
| 20 |
+%define sha1 runc=35d0c90f634d2327356e7268ff73ecbffdd65d82 |
|
| 21 |
+%define RUNC_COMMIT 9df8b306d01f59d3a8029be411de015b7304dd8f |
|
| 22 |
+Source3: https://github.com/docker/libnetwork/tree/libnetwork-0f53435.tar.gz |
|
| 23 |
+%define sha1 libnetwork=a63774a38bec3aba4b1ff7a0b3e748960da2048b |
|
| 24 |
+%define LIBNETWORK_COMMIT 0f534354b813003a754606689722fe253101bc4e |
|
| 18 | 25 |
Source4: docker.service |
| 19 | 26 |
Source5: docker-containerd.service |
| 20 | 27 |
Source6: docker-completion.bash |
| ... | ... |
@@ -26,6 +33,8 @@ BuildRequires: libseccomp |
| 26 | 26 |
BuildRequires: libseccomp-devel |
| 27 | 27 |
BuildRequires: unzip |
| 28 | 28 |
BuildRequires: go |
| 29 |
+BuildRequires: findutils |
|
| 30 |
+BuildRequires: sed |
|
| 29 | 31 |
Requires: libgcc |
| 30 | 32 |
Requires: glibc |
| 31 | 33 |
Requires: libseccomp |
| ... | ... |
@@ -35,59 +44,84 @@ Requires: device-mapper-libs |
| 35 | 35 |
%description |
| 36 | 36 |
Docker is a platform for developers and sysadmins to develop, ship and run applications. |
| 37 | 37 |
%prep |
| 38 |
-%setup -q |
|
| 38 |
+%setup -q -c |
|
| 39 | 39 |
%setup -T -D -a 1 |
| 40 | 40 |
%setup -T -D -a 2 |
| 41 | 41 |
%setup -T -D -a 3 |
| 42 | 42 |
|
| 43 |
+#Fix containerd git commit/branch |
|
| 44 |
+find containerd-%{CONTAINERD_COMMIT} -name Makefile \
|
|
| 45 |
+ -exec sed -i 's/^GIT_COMMIT :=.*$/GIT_COMMIT := %{CONTAINERD_COMMIT}/g' {} \; \
|
|
| 46 |
+ -exec sed -i 's/^GIT_BRANCH :=.*$/GIT_BRANCH := %{name}-%{version}/g' {} \;
|
|
| 47 |
+ |
|
| 48 |
+#Fix runc git commit/branch |
|
| 49 |
+find runc-%{RUNC_COMMIT} -name Makefile \
|
|
| 50 |
+ -exec sed -i 's/^GIT_COMMIT :=.*$/GIT_COMMIT := %{RUNC_COMMIT}/g' {} \; \
|
|
| 51 |
+ -exec sed -i 's/^COMMIT :=.*$/COMMIT := %{RUNC_COMMIT}/g' {} \; \
|
|
| 52 |
+ -exec sed -i 's/^COMMIT_NO :=.*$/COMMIT_NO := %{RUNC_COMMIT}/g' {} \; \
|
|
| 53 |
+ -exec sed -i 's/^GIT_BRANCH :=.*$/GIT_BRANCH := %{name}-%{version}/g' {} \;
|
|
| 54 |
+ |
|
| 55 |
+#Fix docker git commit/branch |
|
| 56 |
+find moby-%{version} -name Makefile \
|
|
| 57 |
+ -exec sed -i 's/^GIT_COMMIT :=.*$/GIT_COMMIT := %{DOCKER_COMMIT}/g' {} \; \
|
|
| 58 |
+ -exec sed -i 's/^GIT_BRANCH :=.*$/GIT_BRANCH := %{name}-%{version}/g' {} \;
|
|
| 59 |
+ |
|
| 60 |
+#Fail if there is still "shell git" invocation |
|
| 61 |
+find -name Makefile -exec grep "shell git" {} \; | read && exit 1
|
|
| 62 |
+ |
|
| 43 | 63 |
%build |
| 44 | 64 |
|
| 45 |
-export AUTO_GOPATH=1 |
|
| 46 |
-export DOCKER_BUILDTAGS='exclude_graphdriver_aufs' |
|
| 47 |
-export DOCKER_GITCOMMIT="092cba3" |
|
| 65 |
+export GOPATH="${PWD}/gopath"
|
|
| 66 |
+mkdir -p gopath/src/github.com |
|
| 67 |
+cd gopath/src/github.com |
|
| 68 |
+mkdir -p docker |
|
| 69 |
+mkdir -p opencontainers |
|
| 48 | 70 |
|
| 49 |
-./hack/make.sh dynbinary |
|
| 71 |
+ln -snrf ../../../runc-%{RUNC_COMMIT} opencontainers/runc
|
|
| 72 |
+ln -snrf ../../../containerd-%{CONTAINERD_COMMIT} docker/containerd
|
|
| 73 |
+ln -snrf ../../../libnetwork-%{LIBNETWORK_COMMIT} docker/libnetwork
|
|
| 74 |
+ln -snrf ../../../moby-%{version} docker/docker
|
|
| 50 | 75 |
|
| 51 |
-mkdir -p /usr/share/gocode/src/github.com/docker/ |
|
| 52 |
-cd /usr/share/gocode/src/github.com/docker/ |
|
| 53 |
-mv /usr/src/photon/BUILD/docker-1.13.1/containerd-0.2.5 . |
|
| 54 |
-mv containerd-0.2.5 containerd |
|
| 55 |
-cd containerd |
|
| 76 |
+pushd docker/docker |
|
| 77 |
+DOCKER_GITCOMMIT=%{DOCKER_COMMIT} DOCKER_BUILDTAGS='exclude_graphdriver_aufs seccomp' ./hack/make.sh dynbinary
|
|
| 78 |
+popd |
|
| 56 | 79 |
|
| 80 |
+pushd docker/containerd |
|
| 57 | 81 |
make |
| 82 |
+popd |
|
| 58 | 83 |
|
| 59 |
-mkdir -p /usr/share/gocode/src/github.com/opencontainers/ |
|
| 60 |
-cd /usr/share/gocode/src/github.com/opencontainers/ |
|
| 61 |
-mv /usr/src/photon/BUILD/docker-1.13.1/runc-9df8b306d01f59d3a8029be411de015b7304dd8f . |
|
| 62 |
-mv runc-9df8b306d01f59d3a8029be411de015b7304dd8f runc |
|
| 63 |
-cd runc |
|
| 84 |
+pushd opencontainers/runc |
|
| 64 | 85 |
make BUILDTAGS='seccomp' |
| 86 |
+popd |
|
| 65 | 87 |
|
| 66 |
-cd /usr/share/gocode/src/github.com/docker/ |
|
| 67 |
-mv /usr/src/photon/BUILD/docker-1.13.1/libnetwork-master/ . |
|
| 68 |
-mv libnetwork-master libnetwork |
|
| 69 |
-cd libnetwork |
|
| 88 |
+pushd docker/libnetwork |
|
| 70 | 89 |
go build -ldflags="-linkmode=external" -o docker-proxy github.com/docker/libnetwork/cmd/proxy |
| 90 |
+popd |
|
| 71 | 91 |
|
| 72 | 92 |
%install |
| 73 |
-install -vdm755 %{buildroot}/usr/bin
|
|
| 74 |
-mv -v %{_builddir}/%{name}-%{version}/bundles/latest/dynbinary-client/%{name}-%{version} %{buildroot}/usr/bin/%{name}
|
|
| 75 |
-mv -v %{_builddir}/%{name}-%{version}/bundles/latest/dynbinary-daemon/%{name}d-%{version} %{buildroot}/usr/bin/%{name}d
|
|
| 76 |
-mv -v /usr/share/gocode/src/github.com/docker/containerd/bin/containerd %{buildroot}/usr/bin/%{name}-containerd
|
|
| 77 |
-mv -v /usr/share/gocode/src/github.com/docker/containerd/bin/containerd-shim %{buildroot}/usr/bin/%{name}-containerd-shim
|
|
| 78 |
-mv -v /usr/share/gocode/src/github.com/docker/containerd/bin/ctr %{buildroot}/usr/bin/%{name}-containerd-ctr
|
|
| 79 |
-mv -v /usr/share/gocode/src/github.com/opencontainers/runc/runc %{buildroot}/usr/bin/%{name}-runc
|
|
| 80 |
-mv -v /usr/share/gocode/src/github.com/docker/libnetwork/docker-proxy %{buildroot}/usr/bin/%{name}-proxy
|
|
| 81 |
-install -vd %{buildroot}/lib/systemd/system
|
|
| 82 |
-cp %{SOURCE4} %{buildroot}/lib/systemd/system/docker.service
|
|
| 83 |
-cp %{SOURCE5} %{buildroot}/lib/systemd/system/docker-containerd.service
|
|
| 84 |
-install -vdm 755 %{buildroot}%{_datadir}/bash-completion/completions
|
|
| 85 |
-install -m 0644 %{SOURCE6} %{buildroot}%{_datadir}/bash-completion/completions/docker
|
|
| 86 |
- |
|
| 87 |
-%{_fixperms} %{buildroot}/*
|
|
| 88 |
- |
|
| 89 |
-%check |
|
| 90 |
-make -k check |& tee %{_specdir}/%{name}-check-log || %{nocheck}
|
|
| 93 |
+ |
|
| 94 |
+install -vdm755 %{buildroot}%{_bindir}
|
|
| 95 |
+install -vdm755 %{buildroot}%{_unitdir}
|
|
| 96 |
+install -vdm755 %{buildroot}%{_datadir}/bash-completion/completions
|
|
| 97 |
+ |
|
| 98 |
+pushd gopath/src/github.com/docker |
|
| 99 |
+install -m755 docker/bundles/latest/dynbinary-client/%{name}-%{version} %{buildroot}%{_bindir}/%{name}
|
|
| 100 |
+install -m755 docker/bundles/latest/dynbinary-daemon/%{name}d-%{version} %{buildroot}%{_bindir}/%{name}d
|
|
| 101 |
+install -m755 containerd/bin/containerd %{buildroot}%{_bindir}/%{name}-containerd
|
|
| 102 |
+install -m755 containerd/bin/containerd-shim %{buildroot}%{_bindir}/%{name}-containerd-shim
|
|
| 103 |
+install -m755 containerd/bin/ctr %{buildroot}%{_bindir}/%{name}-containerd-ctr
|
|
| 104 |
+install -m755 libnetwork/docker-proxy %{buildroot}%{_bindir}/%{name}-proxy
|
|
| 105 |
+popd |
|
| 106 |
+ |
|
| 107 |
+pushd gopath/src/github.com/opencontainers |
|
| 108 |
+install -m755 runc/runc %{buildroot}%{_bindir}/%{name}-runc
|
|
| 109 |
+popd |
|
| 110 |
+ |
|
| 111 |
+install -m644 %{SOURCE4} %{buildroot}%{_unitdir}/docker.service
|
|
| 112 |
+install -m644 %{SOURCE5} %{buildroot}%{_unitdir}/docker-containerd.service
|
|
| 113 |
+install -m644 %{SOURCE6} %{buildroot}%{_datadir}/bash-completion/completions/docker
|
|
| 114 |
+ |
|
| 115 |
+#%{_fixperms} %{buildroot}/*
|
|
| 91 | 116 |
|
| 92 | 117 |
%preun |
| 93 | 118 |
%systemd_preun docker.service |
| ... | ... |
@@ -116,19 +150,21 @@ rm -rf %{buildroot}/*
|
| 116 | 116 |
|
| 117 | 117 |
%files |
| 118 | 118 |
%defattr(-,root,root) |
| 119 |
-/lib/systemd/system/docker-containerd.service |
|
| 120 |
-/lib/systemd/system/docker.service |
|
| 121 |
-/usr/bin |
|
| 122 |
-/usr/bin/docker |
|
| 123 |
-/usr/bin/docker-containerd |
|
| 124 |
-/usr/bin/docker-containerd-ctr |
|
| 125 |
-/usr/bin/docker-containerd-shim |
|
| 126 |
-/usr/bin/docker-proxy |
|
| 127 |
-/usr/bin/docker-runc |
|
| 128 |
-/usr/bin/dockerd |
|
| 129 |
-/usr/share/bash-completion/completions/docker |
|
| 119 |
+%{_unitdir}/docker-containerd.service
|
|
| 120 |
+%{_unitdir}/docker.service
|
|
| 121 |
+%{_bindir}/docker
|
|
| 122 |
+%{_bindir}/docker-containerd
|
|
| 123 |
+%{_bindir}/docker-containerd-ctr
|
|
| 124 |
+%{_bindir}/docker-containerd-shim
|
|
| 125 |
+%{_bindir}/docker-proxy
|
|
| 126 |
+%{_bindir}/docker-runc
|
|
| 127 |
+%{_bindir}/dockerd
|
|
| 128 |
+%{_datadir}/bash-completion/completions/docker
|
|
| 130 | 129 |
|
| 131 | 130 |
%changelog |
| 131 |
+* Mon Jul 10 2017 Bo Gan <ganb@vmware.com> 1.13.1-4 |
|
| 132 |
+- Fix runc/containerd/libnetwork versions |
|
| 133 |
+- Do not strip binaries |
|
| 132 | 134 |
* Thu May 04 2017 Kumar Kaushik <kaushikk@vmware.com> 1.13.1-3 |
| 133 | 135 |
- Docker build requires GO. |
| 134 | 136 |
* Wed May 03 2017 Kumar Kaushik <kaushikk@vmware.com> 1.13.1-2 |