[arch-commits] Commit in docker/trunk (PKGBUILD)
Sébastien Luttringer
seblu at archlinux.org
Fri May 5 21:01:59 UTC 2017
Date: Friday, May 5, 2017 @ 21:01:57
Author: seblu
Revision: 227177
upgpkg: docker 1:17.05.0-1
Modified:
docker/trunk/PKGBUILD
----------+
PKGBUILD | 156 ++++++++++++++++++++++++++++++++++---------------------------
1 file changed, 89 insertions(+), 67 deletions(-)
Modified: PKGBUILD
===================================================================
--- PKGBUILD 2017-05-05 20:52:21 UTC (rev 227176)
+++ PKGBUILD 2017-05-05 21:01:57 UTC (rev 227177)
@@ -2,7 +2,7 @@
# Maintainer: Sébastien "Seblu" Luttringer
pkgname=docker
-pkgver=17.04.0
+pkgver=17.05.0
pkgrel=1
epoch=1
pkgdesc='Pack, ship and run any application as a lightweight container'
@@ -11,7 +11,7 @@
license=('Apache')
depends=('glibc' 'bridge-utils' 'iproute2' 'device-mapper' 'sqlite' 'libsystemd'
'libseccomp')
-makedepends=('git' 'go' 'btrfs-progs' 'go-md2man' 'cmake')
+makedepends=('git' 'go' 'btrfs-progs' 'cmake')
optdepends=('btrfs-progs: btrfs backend support'
'lxc: lxc backend support')
# don't strip binaries! A sha1 is used to check binary consistency.
@@ -20,14 +20,16 @@
# https://github.com/docker/containerd/issues/299#issuecomment-240745119
# see commit in hack/dockerfile/binaries-commits
_RUNC_COMMIT=9c2d8d184e5da67c95d601382adf14862e4f2228
-_CONTAINERD_COMMIT=422e31ce907fd9c3833a38d7b8fdd023e5a76e73
+_CONTAINERD_COMMIT=9048e5e50717ea4497b757314bad98ea3763c145
+_TINI_COMMIT=949e6facb77383876aeff8a6944dde66b3089574
_LIBNETWORK_COMMIT=7b2b1feb1de4817d522cc372af149ff48d25028e
-_TINI_COMMIT=949e6facb77383876aeff8a6944dde66b3089574
-source=("git+https://github.com/docker/docker.git#tag=v$pkgver-ce"
+source=("git+https://github.com/moby/moby.git#tag=v$pkgver-ce"
"git+https://github.com/docker/runc.git#commit=$_RUNC_COMMIT"
- "git+https://github.com/docker/containerd.git#commit=$_CONTAINERD_COMMIT"
+ "git+https://github.com/containerd/containerd.git#commit=$_CONTAINERD_COMMIT"
"git+https://github.com/docker/libnetwork.git#commit=$_LIBNETWORK_COMMIT"
"git+https://github.com/krallin/tini.git#commit=$_TINI_COMMIT"
+ "git+https://github.com/spf13/cobra.git"
+ "git+https://github.com/cpuguy83/go-md2man.git"
"$pkgname.sysusers")
md5sums=('SKIP'
'SKIP'
@@ -34,26 +36,15 @@
'SKIP'
'SKIP'
'SKIP'
+ 'SKIP'
+ 'SKIP'
'9a8b2744db23b14ca3cd350fdf73c179')
-prepare() {
- cd docker
- # apply patch from the source array (should be a pacman feature)
- local filename
- for filename in "${source[@]}"; do
- if [[ "$filename" =~ \.patch$ ]]; then
- msg2 "Applying patch ${filename##*/}"
- patch -p1 -N -i "$srcdir/${filename##*/}"
- fi
- done
- :
-}
-
build() {
- # check packager mistake on commit version
+ ### check my mistakes on commit version
msg2 'Checking commit mismatch'
local _cfile _commit _pkgbuild _dockerfile
- _cfile="$srcdir"/docker/hack/dockerfile/binaries-commits
+ _cfile="$srcdir"/moby/hack/dockerfile/binaries-commits
. "$_cfile"
for _commit in RUNC CONTAINERD LIBNETWORK TINI; do
_pkgbuild=_${_commit}_COMMIT
@@ -65,77 +56,108 @@
fi
done
- # go
+ ### go magics
export GOPATH="$srcdir"
+ export PATH="$GOPATH/bin:$PATH"
- # runc
+ ### docker binary
+ msg2 'Building docker'
+ # projects still reference import with github.com/docker
+ mkdir -p src/github.com/docker
+ ln -rsfT moby src/github.com/docker/docker
+ pushd src/github.com/docker/docker >/dev/null
+ DOCKER_BUILDTAGS='seccomp' hack/make.sh dynbinary
+ popd >/dev/null
+
+ ### go-md2man (used for manpages)
+ msg2 'Building go-md2man'
+ mkdir -p src/github.com/cpuguy83
+ ln -rsf go-md2man src/github.com/cpuguy83
+ pushd src/github.com/cpuguy83/go-md2man >/dev/null
+ go get -v ./...
+ popd >/dev/null
+
+ ### docker man pages
+ msg2 'Building man pages'
+ # cobra (used for manpages)
+ mkdir -p src/github.com/spf13
+ ln -rsf cobra src/github.com/spf13
+ # generate
+ pushd src/github.com/docker/docker >/dev/null
+ man/generate.sh 2>/dev/null
+ popd >/dev/null
+
+ ### runc
msg2 'Building runc'
- mkdir -p src/github.com/opencontainers
- ln -rsf "$srcdir/runc" src/github.com/opencontainers/runc
- cd src/github.com/opencontainers/runc
+ pushd runc >/dev/null
make BUILDTAGS='seccomp'
+ popd >/dev/null
- # containerd
+ ### containerd
msg2 'Building containerd'
- cd "$srcdir"
- mkdir -p src/github.com/docker
- ln -rsf containerd src/github.com/docker
- cd src/github.com/docker/containerd
+ ln -rsfT containerd src/github.com/docker/containerd
+ pushd src/github.com/docker/containerd >/dev/null
LDFLAGS= make
+ popd >/dev/null
- # docker proxy
+ ### docker proxy
msg2 'Building docker-proxy'
- cd "$srcdir"
ln -rsf libnetwork src/github.com/docker
- cd src/github.com/docker/libnetwork
+ pushd src/github.com/docker/libnetwork >/dev/null
go build -ldflags='-linkmode=external' github.com/docker/libnetwork/cmd/proxy
+ popd >/dev/null
- # docker-init
+ ### docker-init
msg2 'Building docker-init'
- cd "$srcdir/tini"
+ pushd tini >/dev/null
cmake .
# we must use the static binary because it's started in a foreign os
make tini-static
-
- # docker
- msg2 'Building docker'
- cd "$srcdir"/docker
- export AUTO_GOPATH=1 DOCKER_BUILDTAGS='seccomp'
- hack/make.sh dynbinary
- # man pages
- man/md2man-all.sh 2>/dev/null
+ popd >/dev/null
}
package() {
- # runc
+ ### runc
install -Dm755 runc/runc "$pkgdir/usr/bin/docker-runc"
- # docker-containerd
+ ### docker-containerd
install -Dm755 containerd/bin/containerd "$pkgdir/usr/bin/docker-containerd"
- install -Dm755 containerd/bin/containerd-shim "$pkgdir/usr/bin/docker-containerd-shim"
+ install -Dm755 containerd/bin/containerd-shim \
+ "$pkgdir/usr/bin/docker-containerd-shim"
install -Dm755 containerd/bin/ctr "$pkgdir/usr/bin/docker-containerd-ctr"
- # docker-proxy
+ ### docker-proxy
install -Dm755 libnetwork/proxy "$pkgdir/usr/bin/docker-proxy"
- # docker-init
+ ### docker-init
install -Dm755 tini/tini-static "$pkgdir/usr/bin/docker-init"
- # docker binary
- cd docker
- install -Dm755 "bundles/latest/dynbinary-client/docker" "$pkgdir/usr/bin/docker"
- install -Dm755 "bundles/latest/dynbinary-daemon/dockerd" "$pkgdir/usr/bin/dockerd"
- # completion
- install -Dm644 'contrib/completion/bash/docker' "$pkgdir/usr/share/bash-completion/completions/docker"
- install -Dm644 'contrib/completion/zsh/_docker' "$pkgdir/usr/share/zsh/site-functions/_docker"
- install -Dm644 'contrib/completion/fish/docker.fish' "$pkgdir/usr/share/fish/vendor_completions.d/docker.fish"
- # systemd
- install -Dm644 'contrib/init/systemd/docker.service' "$pkgdir/usr/lib/systemd/system/docker.service"
- install -Dm644 'contrib/init/systemd/docker.socket' "$pkgdir/usr/lib/systemd/system/docker.socket"
- install -Dm644 'contrib/udev/80-docker.rules' "$pkgdir/usr/lib/udev/rules.d/80-docker.rules"
- install -Dm644 "$srcdir/$pkgname.sysusers" "$pkgdir/usr/lib/sysusers.d/$pkgname.conf"
- # vim syntax
- install -Dm644 'contrib/syntax/vim/syntax/dockerfile.vim' "$pkgdir/usr/share/vim/vimfiles/syntax/dockerfile.vim"
- install -Dm644 'contrib/syntax/vim/ftdetect/dockerfile.vim' "$pkgdir/usr/share/vim/vimfiles/ftdetect/dockerfile.vim"
- # man
+ ### docker binary
+ cd moby
+ install -Dm755 "bundles/latest/dynbinary-client/docker" \
+ "$pkgdir/usr/bin/docker"
+ install -Dm755 "bundles/latest/dynbinary-daemon/dockerd" \
+ "$pkgdir/usr/bin/dockerd"
+ ### completion
+ install -Dm644 'contrib/completion/bash/docker' \
+ "$pkgdir/usr/share/bash-completion/completions/docker"
+ install -Dm644 'contrib/completion/zsh/_docker' \
+ "$pkgdir/usr/share/zsh/site-functions/_docker"
+ install -Dm644 'contrib/completion/fish/docker.fish' \
+ "$pkgdir/usr/share/fish/vendor_completions.d/docker.fish"
+ ### systemd
+ install -Dm644 'contrib/init/systemd/docker.service' \
+ "$pkgdir/usr/lib/systemd/system/docker.service"
+ install -Dm644 'contrib/init/systemd/docker.socket' \
+ "$pkgdir/usr/lib/systemd/system/docker.socket"
+ install -Dm644 'contrib/udev/80-docker.rules' \
+ "$pkgdir/usr/lib/udev/rules.d/80-docker.rules"
+ install -Dm644 "$srcdir/$pkgname.sysusers" \
+ "$pkgdir/usr/lib/sysusers.d/$pkgname.conf"
+ ### vim syntax
+ install -Dm644 'contrib/syntax/vim/syntax/dockerfile.vim' \
+ "$pkgdir/usr/share/vim/vimfiles/syntax/dockerfile.vim"
+ install -Dm644 'contrib/syntax/vim/ftdetect/dockerfile.vim' \
+ "$pkgdir/usr/share/vim/vimfiles/ftdetect/dockerfile.vim"
+ ### man
install -dm755 "$pkgdir/usr/share/man"
- mv man/man* "$pkgdir/usr/share/man"
+ cp -r man/man* "$pkgdir/usr/share/man"
}
# vim:set ts=2 sw=2 et:
More information about the arch-commits
mailing list