[docker-io/f19] v1.3.2, fixes CVE-2014-6407, CVE-2014-6408

lsm5 lsm5 at fedoraproject.org
Tue Nov 25 11:07:42 UTC 2014


commit 99bd34bc3c25ebe98f8a84e9613a931d3eb1bb6a
Author: Lokesh Mandvekar <lsm5 at fedoraproject.org>
Date:   Tue Nov 25 03:06:23 2014 -0800

    v1.3.2, fixes CVE-2014-6407, CVE-2014-6408
    
    NVR: docker-io-1.3.2-1
    
    use vendor/ dir for golang deps (fix dep rpms soon)
    use pandoc for manpages on f19
    
    Signed-off-by: Lokesh Mandvekar <lsm5 at fedoraproject.org>

 audit-write.patch                  |   29 --
 docker-io.spec                     |  571 +++++++++++++++---------------------
 docker-storage.sysconfig           |   14 +
 docker.service                     |    5 +-
 docker.socket                      |   11 -
 docker.sysconfig                   |    3 +-
 sources                            |    2 +-
 upstream-patched-archive-tar.patch |  108 -------
 8 files changed, 263 insertions(+), 480 deletions(-)
---
diff --git a/docker-io.spec b/docker-io.spec
index d9dfbef..25aed89 100644
--- a/docker-io.spec
+++ b/docker-io.spec
@@ -3,68 +3,69 @@
 
 # docker builds in a checksum of dockerinit into docker,
 # so stripping the binaries breaks docker
-%global debug_package %{nil}
-
-%global import_path github.com/docker/docker
-%global commit      d84a070e476ce923dd03e28232564a87704613ab
+%global debug_package   %{nil}
+%global provider        github
+%global provider_tld    com
+%global project         docker
+%global repo            %{project}
+
+%global import_path %{provider}.%{provider_tld}/%{project}/%{repo}
+%global commit      39fa2faad2f3d6fa5133de4eb740677202f53ef4
 %global shortcommit %(c=%{commit}; echo ${c:0:7})
 
-Name:           docker-io
-Version:        1.1.2
-Release:        3%{?dist}
-Summary:        Automates deployment of containerized applications
-License:        ASL 2.0
-Patch1:         upstream-patched-archive-tar.patch
-# Resolves: rhbz#1119849 - add AUDIT_WRITE capablility
-Patch2:         audit-write.patch
-URL:            http://www.docker.com
+Name:       %{repo}-io
+Version:    1.3.2
+Release:    1%{?dist}
+Summary:    Automates deployment of containerized applications
+License:    ASL 2.0
+URL:        http://www.docker.com
 # only x86_64 for now: https://github.com/docker/docker/issues/136
 ExclusiveArch:  x86_64
-Source0:        https://github.com/docker/docker/archive/v%{version}.tar.gz
-Source1:        docker.service
-Source2:        docker.sysconfig
-Source3:        docker.socket
-# though final name for sysconf/sysvinit files is simply 'docker',
-# having .sysvinit and .sysconfig makes things clear
-BuildRequires:  gcc
+Source0:    https://%{import_path}/archive/v%{version}.tar.gz
+Source1:    %{repo}.service
+Source2:    %{repo}.sysconfig
+Source3:    %{repo}-storage.sysconfig
 BuildRequires:  glibc-static
-# ensure build uses golang 1.2-7 and above
-# http://code.google.com/p/go/source/detail?r=a15f344a9efa35ef168c8feaa92a15a1cdc93db5
-BuildRequires:  golang >= 1.2-7
+#BuildRequires:  golang >= 1.3.3
 # for gorilla/mux and kr/pty https://github.com/dotcloud/docker/pull/5950
-BuildRequires:  golang(github.com/gorilla/mux) >= 0-0.13
-BuildRequires:  golang(github.com/kr/pty) >= 0-0.19
-BuildRequires:  golang(github.com/godbus/dbus)
+#BuildRequires:  golang(github.com/gorilla/mux) >= 0-0.13
+#BuildRequires:  golang(github.com/kr/pty) >= 0-0.19
+#BuildRequires:  golang(github.com/godbus/dbus)
 # for coreos/go-systemd https://github.com/dotcloud/docker/pull/5981
-BuildRequires:  golang(github.com/coreos/go-systemd) >= 2-1
-BuildRequires:  golang(code.google.com/p/go.net/websocket)
-BuildRequires:  golang(code.google.com/p/gosqlite/sqlite3)
+#BuildRequires:  golang(github.com/coreos/go-systemd) >= 2-1
+#BuildRequires:  golang(code.google.com/p/go.net/websocket)
+#BuildRequires:  golang(code.google.com/p/gosqlite/sqlite3)
 # RHBZ#1109039 use syndtr/gocapability >= 0-0.7
-BuildRequires:  golang(github.com/syndtr/gocapability/capability) >= 0-0.7
-BuildRequires:  golang(github.com/docker/libcontainer)
-BuildRequires:  golang(github.com/tchap/go-patricia/patricia)
+#BuildRequires:  golang(github.com/syndtr/gocapability/capability) >= 0-0.7
+#BuildRequires:  golang(github.com/docker/libcontainer) >= 1.2.0-3
+#BuildRequires:  golang(github.com/tchap/go-patricia/patricia)
+#BuildRequires:  golang(github.com/docker/libtrust)
+#BuildRequires:  golang(github.com/docker/libtrust/trustgraph)
+BuildRequires:  sqlite-devel
+BuildRequires:  pandoc
 BuildRequires:  device-mapper-devel
 BuildRequires:  btrfs-progs-devel
 BuildRequires:  pkgconfig(systemd)
-BuildRequires:  pandoc
 # Use appropriate NVR for systemd-units to ensure SocketUser and SocketGroup are available
 %if 0%{?fedora} >= 21
 Requires:       systemd-units >= 214
 %else
 %if 0%{?fedora} == 20
-Requires:       systemd-units >= 208-20
+Requires:   systemd-units >= 208-20
 %else
-Requires:       systemd-units >= 204-20
+Requires:   systemd-units >= 204-20
 %endif
 %endif
 # need xz to work with ubuntu images
 # https://bugzilla.redhat.com/show_bug.cgi?id=1045220
 Requires:       xz
-Provides:       lxc-docker = %{version}
+Provides:       lxc-docker = %{version}-%{release}
 # permitted by https://fedorahosted.org/fpc/ticket/341#comment:7
 # In F22, the whole package should be renamed to be just "docker" and
 # this changed to "Provides: docker-io".
-Provides:       docker
+%if 0%{?fedora} >= 21
+Provides:       %{repo} = %{version}-%{release}
+%endif
 
 %description
 Docker is an open-source engine that automates the deployment of any
@@ -77,106 +78,123 @@ and tests on a laptop will run at scale, in production*, on VMs, bare-metal
 servers, OpenStack clusters, public instances, or combinations of the above.
 
 %package devel
-BuildRequires:  golang
-Requires:       golang
-Requires:       docker-io-pkg-devel
-Summary:        A golang registry for global request variables (source libraries)
-Provides:       golang(%{import_path}) = %{version}-%{release}
-Provides:       golang(%{import_path}/api) = %{version}-%{release}
-Provides:       golang(%{import_path}/api/client) = %{version}-%{release}
-Provides:       golang(%{import_path}/api/server) = %{version}-%{release}
-Provides:       golang(%{import_path}/archive) = %{version}-%{release}
-Provides:       golang(%{import_path}/builtins) = %{version}-%{release}
-Provides:       golang(%{import_path}/contrib) = %{version}-%{release}
-Provides:       golang(%{import_path}/contrib/docker-device-tool) = %{version}-%{release}
-Provides:       golang(%{import_path}/contrib/host-integration) = %{version}-%{release}
-Provides:       golang(%{import_path}/daemon) = %{version}-%{release}
-Provides:       golang(%{import_path}/daemon/execdriver) = %{version}-%{release}
-Provides:       golang(%{import_path}/daemon/execdriver/execdrivers) = %{version}-%{release}
-Provides:       golang(%{import_path}/daemon/execdriver/lxc) = %{version}-%{release}
-Provides:       golang(%{import_path}/daemon/execdriver/native) = %{version}-%{release}
-Provides:       golang(%{import_path}/daemon/execdriver/native/configuration) = %{version}-%{release}
-Provides:       golang(%{import_path}/daemon/execdriver/native/template) = %{version}-%{release}
-Provides:       golang(%{import_path}/daemon/graphdriver) = %{version}-%{release}
-Provides:       golang(%{import_path}/daemon/graphdriver/aufs) = %{version}-%{release}
-Provides:       golang(%{import_path}/daemon/graphdriver/btrfs) = %{version}-%{release}
-Provides:       golang(%{import_path}/daemon/graphdriver/devmapper) = %{version}-%{release}
-Provides:       golang(%{import_path}/daemon/graphdriver/graphtest) = %{version}-%{release}
-Provides:       golang(%{import_path}/daemon/graphdriver/vfs) = %{version}-%{release}
-Provides:       golang(%{import_path}/daemon/networkdriver) = %{version}-%{release}
-Provides:       golang(%{import_path}/daemon/networkdriver/bridge) = %{version}-%{release}
-Provides:       golang(%{import_path}/daemon/networkdriver/ipallocator) = %{version}-%{release}
-Provides:       golang(%{import_path}/daemon/networkdriver/portallocator) = %{version}-%{release}
-Provides:       golang(%{import_path}/daemon/networkdriver/portmapper) = %{version}-%{release}
-Provides:       golang(%{import_path}/daemonconfig) = %{version}-%{release}
-Provides:       golang(%{import_path}/dockerversion) = %{version}-%{release}
-Provides:       golang(%{import_path}/engine) = %{version}-%{release}
-Provides:       golang(%{import_path}/graph) = %{version}-%{release}
-Provides:       golang(%{import_path}/image) = %{version}-%{release}
-Provides:       golang(%{import_path}/integration) = %{version}-%{release}
-Provides:       golang(%{import_path}/integration-cli) = %{version}-%{release}
-Provides:       golang(%{import_path}/links) = %{version}-%{release}
-Provides:       golang(%{import_path}/nat) = %{version}-%{release}
-Provides:       golang(%{import_path}/opts) = %{version}-%{release}
-Provides:       golang(%{import_path}/registry) = %{version}-%{release}
-Provides:       golang(%{import_path}/runconfig) = %{version}-%{release}
-Provides:       golang(%{import_path}/server) = %{version}-%{release}
-Provides:       golang(%{import_path}/sysinit) = %{version}-%{release}
-Provides:       golang(%{import_path}/utils) = %{version}-%{release}
-Provides:       golang(%{import_path}/utils/broadcastwriter) = %{version}-%{release}
-Provides:       golang(%{import_path}/utils/filters) = %{version}-%{release}
+BuildRequires:  golang >= 1.2.1-3
+Requires:   golang >= 1.2.1-3
+Requires:   docker-io-pkg-devel
+Summary:    A golang registry for global request variables (source libraries)
+Provides:   golang(%{import_path}) = %{version}-%{release}
+Provides:   golang(%{import_path}/api) = %{version}-%{release}
+Provides:   golang(%{import_path}/api/client) = %{version}-%{release}
+Provides:   golang(%{import_path}/api/server) = %{version}-%{release}
+Provides:   golang(%{import_path}/builtins) = %{version}-%{release}
+Provides:   golang(%{import_path}/contrib) = %{version}-%{release}
+Provides:   golang(%{import_path}/contrib/docker-device-tool) = %{version}-%{release}
+Provides:   golang(%{import_path}/contrib/host-integration) = %{version}-%{release}
+Provides:   golang(%{import_path}/daemon) = %{version}-%{release}
+Provides:   golang(%{import_path}/daemon/execdriver) = %{version}-%{release}
+Provides:   golang(%{import_path}/daemon/execdriver/execdrivers) = %{version}-%{release}
+Provides:   golang(%{import_path}/daemon/execdriver/lxc) = %{version}-%{release}
+Provides:   golang(%{import_path}/daemon/execdriver/native) = %{version}-%{release}
+Provides:   golang(%{import_path}/daemon/execdriver/native/template) = %{version}-%{release}
+Provides:   golang(%{import_path}/daemon/graphdriver) = %{version}-%{release}
+Provides:   golang(%{import_path}/daemon/graphdriver/aufs) = %{version}-%{release}
+Provides:   golang(%{import_path}/daemon/graphdriver/btrfs) = %{version}-%{release}
+Provides:   golang(%{import_path}/daemon/graphdriver/devmapper) = %{version}-%{release}
+Provides:   golang(%{import_path}/daemon/graphdriver/graphtest) = %{version}-%{release}
+Provides:   golang(%{import_path}/daemon/graphdriver/vfs) = %{version}-%{release}
+Provides:   golang(%{import_path}/daemon/networkdriver) = %{version}-%{release}
+Provides:   golang(%{import_path}/daemon/networkdriver/bridge) = %{version}-%{release}
+Provides:   golang(%{import_path}/daemon/networkdriver/ipallocator) = %{version}-%{release}
+Provides:   golang(%{import_path}/daemon/networkdriver/portallocator) = %{version}-%{release}
+Provides:   golang(%{import_path}/daemon/networkdriver/portmapper) = %{version}-%{release}
+Provides:   golang(%{import_path}/dockerversion) = %{version}-%{release}
+Provides:   golang(%{import_path}/engine) = %{version}-%{release}
+Provides:   golang(%{import_path}/events) = %{version}-%{release}
+Provides:   golang(%{import_path}/graph) = %{version}-%{release}
+Provides:   golang(%{import_path}/image) = %{version}-%{release}
+Provides:   golang(%{import_path}/integration) = %{version}-%{release}
+Provides:   golang(%{import_path}/integration-cli) = %{version}-%{release}
+Provides:   golang(%{import_path}/links) = %{version}-%{release}
+Provides:   golang(%{import_path}/nat) = %{version}-%{release}
+Provides:   golang(%{import_path}/opts) = %{version}-%{release}
+Provides:   golang(%{import_path}/registry) = %{version}-%{release}
+Provides:   golang(%{import_path}/runconfig) = %{version}-%{release}
+Provides:   golang(%{import_path}/trust) = %{version}-%{release}
+Provides:   golang(%{import_path}/utils) = %{version}-%{release}
+Provides:   golang(%{import_path}/volumes) = %{version}-%{release}
 
 %description devel
-This is the source libraries for docker.
+%{summary}
+
+This package provides the source libraries for docker.
 
 %package pkg-devel
-BuildRequires:  golang
-Requires:       golang
-Summary:        A golang registry for global request variables (source libraries)
-Provides:       golang(%{import_path}/pkg/graphdb) = %{version}-%{release}
-Provides:       golang(%{import_path}/pkg/iptables) = %{version}-%{release}
-Provides:       golang(%{import_path}/pkg/listenbuffer) = %{version}-%{release}
-Provides:       golang(%{import_path}/pkg/mflag) = %{version}-%{release}
-Provides:       golang(%{import_path}/pkg/mflag/example) = %{version}-%{release}
-Provides:       golang(%{import_path}/pkg/mount) = %{version}-%{release}
-Provides:       golang(%{import_path}/pkg/namesgenerator) = %{version}-%{release}
-Provides:       golang(%{import_path}/pkg/networkfs/etchosts) = %{version}-%{release}
-Provides:       golang(%{import_path}/pkg/networkfs/resolvconf) = %{version}-%{release}
-Provides:       golang(%{import_path}/pkg/proxy) = %{version}-%{release}
-Provides:       golang(%{import_path}/pkg/signal) = %{version}-%{release}
-Provides:       golang(%{import_path}/pkg/symlink) = %{version}-%{release}
-Provides:       golang(%{import_path}/pkg/sysinfo) = %{version}-%{release}
-Provides:       golang(%{import_path}/pkg/system) = %{version}-%{release}
-Provides:       golang(%{import_path}/pkg/systemd) = %{version}-%{release}
-Provides:       golang(%{import_path}/pkg/tailfile) = %{version}-%{release}
-Provides:       golang(%{import_path}/pkg/term) = %{version}-%{release}
-Provides:       golang(%{import_path}/pkg/testutils) = %{version}-%{release}
-Provides:       golang(%{import_path}/pkg/truncindex) = %{version}-%{release}
-Provides:       golang(%{import_path}/pkg/units) = %{version}-%{release}
-Provides:       golang(%{import_path}/pkg/user) = %{version}-%{release}
-Provides:       golang(%{import_path}/pkg/version) = %{version}-%{release}
+BuildRequires:  golang >= 1.2.1-3
+Requires:   golang >= 1.2.1-3
+Summary:    A golang registry for global request variables (source libraries)
+Provides:   golang(%{import_path}/pkg/archive) = %{version}-%{release}
+Provides:   golang(%{import_path}/pkg/broadcastwriter) = %{version}-%{release}
+Provides:   golang(%{import_path}/pkg/chrootarchive) = %{version}-%{release}
+Provides:   golang(%{import_path}/pkg/fileutils) = %{version}-%{release}
+Provides:   golang(%{import_path}/pkg/graphdb) = %{version}-%{release}
+Provides:   golang(%{import_path}/pkg/httputils) = %{version}-%{release}
+Provides:   golang(%{import_path}/pkg/ioutils) = %{version}-%{release}
+Provides:   golang(%{import_path}/pkg/iptables) = %{version}-%{release}
+Provides:   golang(%{import_path}/pkg/jsonlog) = %{version}-%{release}
+Provides:   golang(%{import_path}/pkg/listenbuffer) = %{version}-%{release}
+Provides:   golang(%{import_path}/pkg/log) = %{version}-%{release}
+Provides:   golang(%{import_path}/pkg/mflag) = %{version}-%{release}
+Provides:   golang(%{import_path}/pkg/mflag/example) = %{version}-%{release}
+Provides:   golang(%{import_path}/pkg/mount) = %{version}-%{release}
+Provides:   golang(%{import_path}/pkg/namesgenerator) = %{version}-%{release}
+Provides:   golang(%{import_path}/pkg/networkfs/etchosts) = %{version}-%{release}
+Provides:   golang(%{import_path}/pkg/networkfs/resolvconf) = %{version}-%{release}
+Provides:   golang(%{import_path}/pkg/parsers) = %{version}-%{release}
+Provides:   golang(%{import_path}/pkg/parsers/filters) = %{version}-%{release}
+Provides:   golang(%{import_path}/pkg/parsers/kernel) = %{version}-%{release}
+Provides:   golang(%{import_path}/pkg/parsers/operatingsystem) = %{version}-%{release}
+Provides:   golang(%{import_path}/pkg/pools) = %{version}-%{release}
+Provides:   golang(%{import_path}/pkg/promise) = %{version}-%{release}
+Provides:   golang(%{import_path}/pkg/proxy) = %{version}-%{release}
+Provides:   golang(%{import_path}/pkg/reexec) = %{version}-%{release}
+Provides:   golang(%{import_path}/pkg/signal) = %{version}-%{release}
+Provides:   golang(%{import_path}/pkg/stdcopy) = %{version}-%{release}
+Provides:   golang(%{import_path}/pkg/symlink) = %{version}-%{release}
+Provides:   golang(%{import_path}/pkg/sysinfo) = %{version}-%{release}
+Provides:   golang(%{import_path}/pkg/system) = %{version}-%{release}
+Provides:   golang(%{import_path}/pkg/systemd) = %{version}-%{release}
+Provides:   golang(%{import_path}/pkg/tailfile) = %{version}-%{release}
+Provides:   golang(%{import_path}/pkg/tarsum) = %{version}-%{release}
+Provides:   golang(%{import_path}/pkg/term) = %{version}-%{release}
+Provides:   golang(%{import_path}/pkg/testutils) = %{version}-%{release}
+Provides:   golang(%{import_path}/pkg/timeutils) = %{version}-%{release}
+Provides:   golang(%{import_path}/pkg/truncindex) = %{version}-%{release}
+Provides:   golang(%{import_path}/pkg/units) = %{version}-%{release}
+Provides:   golang(%{import_path}/pkg/version) = %{version}-%{release}
 
 %description pkg-devel
-These source librariees are provided by docker, but are independent of docker specific logic.
-The import paths of %{import_path}/pkg/...
+%{summary}
+
+These source libraries are provided by docker, but are independent of docker
+specific logic.
+The import paths of import_path/pkg/...
 
 %prep
-%setup -q -n docker-%{version}
-rm -rf vendor
-%patch1 -p1 -b upstream-patched-archive-tar
-%patch2 -p1
-rm daemon/execdriver/native/template/*.go.orig
+%setup -q -n %{repo}-%{version}
+#rm -rf vendor
+#find . -name "*.go" \
+#       -print |\
+#       xargs sed -i 's/github.com\/docker\/docker\/vendor\/src\/code.google.com\/p\/go\/src\/pkg\///g'
+sed -i 's/\!bash//g' contrib/completion/bash/docker
 
 %build
 # set up temporary build gopath, and put our directory there
-mkdir -p ./_build/src/github.com/dotcloud
-ln -s $(pwd) ./_build/src/github.com/dotcloud/docker
+mkdir -p ./_build/src/github.com/docker
+ln -s $(pwd) ./_build/src/%{import_path}
 
 export DOCKER_GITCOMMIT="%{shortcommit}/%{version}"
-# rhbz#1122434 disable selinux for f19 since the required policy has not been
-# backported
-#export DOCKER_BUILDTAGS='selinux'
-export GOPATH=$(pwd)/_build:%{gopath}
+export DOCKER_BUILDTAGS='selinux'
+export GOPATH=$(pwd)/_build:$(pwd)/vendor:%{gopath}
 
 hack/make.sh dynbinary
 docs/man/md2man-all.sh
@@ -187,46 +205,53 @@ cp contrib/syntax/vim/README.md README-vim-syntax.md
 # install binary
 install -d %{buildroot}%{_bindir}
 install -p -m 755 bundles/%{version}/dynbinary/docker-%{version} %{buildroot}%{_bindir}/docker
+
 # install dockerinit
 install -d %{buildroot}%{_libexecdir}/docker
 install -p -m 755 bundles/%{version}/dynbinary/dockerinit-%{version} %{buildroot}%{_libexecdir}/docker/dockerinit
-# install manpage
+
+# install manpages
 install -d %{buildroot}%{_mandir}/man1
 install -p -m 644 docs/man/man1/docker*.1 %{buildroot}%{_mandir}/man1
 install -d %{buildroot}%{_mandir}/man5
 install -p -m 644 docs/man/man5/Dockerfile.5 %{buildroot}%{_mandir}/man5
+
 # install bash completion
-install -d %{buildroot}%{_sysconfdir}/bash_completion.d
-install -p -m 644 contrib/completion/bash/docker %{buildroot}%{_sysconfdir}/bash_completion.d/docker.bash
-# install zsh completion
-install -d %{buildroot}%{_datadir}/zsh/site-functions
-install -p -m 644 contrib/completion/zsh/_docker %{buildroot}%{_datadir}/zsh/site-functions
+install -dp %{buildroot}%{_datadir}/bash-completion/completions
+install -p -m 644 contrib/completion/bash/docker %{buildroot}%{_datadir}/bash-completion/completions
+
 # install vim syntax highlighting
+# (in process of being included in default vim)
 install -d %{buildroot}%{_datadir}/vim/vimfiles/{doc,ftdetect,syntax}
 install -p -m 644 contrib/syntax/vim/doc/dockerfile.txt %{buildroot}%{_datadir}/vim/vimfiles/doc
 install -p -m 644 contrib/syntax/vim/ftdetect/dockerfile.vim %{buildroot}%{_datadir}/vim/vimfiles/ftdetect
 install -p -m 644 contrib/syntax/vim/syntax/dockerfile.vim %{buildroot}%{_datadir}/vim/vimfiles/syntax
+
 # install udev rules
 install -d %{buildroot}%{_sysconfdir}/udev/rules.d
-install -p -m 755 contrib/udev/80-docker.rules %{buildroot}%{_sysconfdir}/udev/rules.d
+install -p contrib/udev/80-docker.rules %{buildroot}%{_sysconfdir}/udev/rules.d
+
 # install storage dir
-install -d -m 700 %{buildroot}%{_sharedstatedir}/docker
-# install systemd unitfile
+install -d %{buildroot}%{_sharedstatedir}/%{repo}
+
+# install systemd/init scripts
 install -d %{buildroot}%{_unitdir}
-#install -p -m 644 contrib/init/systemd/docker.service %{buildroot}%{_unitdir}
 install -p -m 644 %{SOURCE1} %{buildroot}%{_unitdir}
-install -p -m 644 %{SOURCE3} %{buildroot}%{_unitdir}
+install -p -m 644 contrib/init/systemd/%{repo}.socket %{buildroot}%{_unitdir}
+
 # for additional args
 install -d %{buildroot}%{_sysconfdir}/sysconfig/
 install -p -m 644 %{SOURCE2} %{buildroot}%{_sysconfdir}/sysconfig/docker
+install -p -m 644 %{SOURCE3} %{buildroot}%{_sysconfdir}/sysconfig/docker-storage
 
 # sources
 install -d -p %{buildroot}/%{gopath}/src/%{import_path}
+rm -rf pkg/symlink/testdata
 
-for dir in api archive builtins daemon daemonconfig dockerversion engine graph \
-           image links nat opts pkg registry runconfig server sysinit utils
+for dir in api builtins daemon dockerversion engine graph \
+           image links nat opts pkg registry runconfig utils
 do
-	cp -pav $dir %{buildroot}/%{gopath}/src/%{import_path}/
+    cp -rpav $dir %{buildroot}/%{gopath}/src/%{import_path}/
 done
 
 %pre
@@ -243,9 +268,10 @@ exit 0
 %systemd_postun_with_restart docker
 
 %files
-%doc AUTHORS CHANGELOG.md CONTRIBUTING.md FIXME LICENSE MAINTAINERS NOTICE README.md 
+%doc AUTHORS CHANGELOG.md CONTRIBUTING.md LICENSE MAINTAINERS NOTICE README.md 
 %doc LICENSE-vim-syntax README-vim-syntax.md
 %config(noreplace) %{_sysconfdir}/sysconfig/docker
+%config(noreplace) %{_sysconfdir}/sysconfig/docker-storage
 %{_mandir}/man1/docker*.1.gz
 %{_mandir}/man5/Dockerfile.5.gz
 %{_bindir}/docker
@@ -253,212 +279,102 @@ exit 0
 %{_libexecdir}/docker/dockerinit
 %{_unitdir}/docker.service
 %{_unitdir}/docker.socket
-%dir %{_sysconfdir}/bash_completion.d
-%{_sysconfdir}/bash_completion.d/docker.bash
-%{_datadir}/zsh/site-functions/_docker
+%{_datadir}/bash-completion/completions/docker
 %dir %{_sharedstatedir}/docker
-%dir %{_sysconfdir}/udev/rules.d
 %{_sysconfdir}/udev/rules.d/80-docker.rules
-%dir %{_datadir}/vim/vimfiles/doc
 %{_datadir}/vim/vimfiles/doc/dockerfile.txt
-%dir %{_datadir}/vim/vimfiles/ftdetect
 %{_datadir}/vim/vimfiles/ftdetect/dockerfile.vim
-%dir %{_datadir}/vim/vimfiles/syntax
 %{_datadir}/vim/vimfiles/syntax/dockerfile.vim
 
 %files devel
+%doc AUTHORS CHANGELOG.md CONTRIBUTING.md LICENSE MAINTAINERS NOTICE README.md 
+%dir %{gopath}/src/%{provider}.%{provider_tld}/%{project}
 %dir %{gopath}/src/%{import_path}
-%dir %{gopath}/src/%{import_path}/api
-%{gopath}/src/%{import_path}/api/MAINTAINERS
-%{gopath}/src/%{import_path}/api/README.md
-%{gopath}/src/%{import_path}/api/*.go
-%{gopath}/src/%{import_path}/api/client/*.go
-%dir %{gopath}/src/%{import_path}/api/server
-%{gopath}/src/%{import_path}/api/server/MAINTAINERS
-%{gopath}/src/%{import_path}/api/server/*.go
-%dir %{gopath}/src/%{import_path}/archive
-%{gopath}/src/%{import_path}/archive/MAINTAINERS
-%{gopath}/src/%{import_path}/archive/README.md
-%{gopath}/src/%{import_path}/archive/*.go
-%{gopath}/src/%{import_path}/archive/*.goupstream-patched-archive-tar
-%dir %{gopath}/src/%{import_path}/archive/testdata
-%{gopath}/src/%{import_path}/archive/testdata/broken.tar
-%dir %{gopath}/src/%{import_path}/builtins
-%{gopath}/src/%{import_path}/builtins/*.go
-%dir %{gopath}/src/%{import_path}/daemon
-%{gopath}/src/%{import_path}/daemon/*.go
-%{gopath}/src/%{import_path}/daemon/README.md
-%dir %{gopath}/src/%{import_path}/daemon/execdriver
-%{gopath}/src/%{import_path}/daemon/execdriver/*.go
-%{gopath}/src/%{import_path}/daemon/execdriver/MAINTAINERS
-%dir %{gopath}/src/%{import_path}/daemon/execdriver/execdrivers
-%{gopath}/src/%{import_path}/daemon/execdriver/execdrivers/*.go
-%dir %{gopath}/src/%{import_path}/daemon/execdriver/lxc
-%{gopath}/src/%{import_path}/daemon/execdriver/lxc/MAINTAINERS
-%{gopath}/src/%{import_path}/daemon/execdriver/lxc/*.go
-%dir %{gopath}/src/%{import_path}/daemon/execdriver/native
-%{gopath}/src/%{import_path}/daemon/execdriver/native/*.go
-%dir %{gopath}/src/%{import_path}/daemon/execdriver/native/configuration
-%{gopath}/src/%{import_path}/daemon/execdriver/native/configuration/*.go
-%dir %{gopath}/src/%{import_path}/daemon/execdriver/native/template
-%{gopath}/src/%{import_path}/daemon/execdriver/native/template/*.go
-%dir %{gopath}/src/%{import_path}/daemon/graphdriver
-%{gopath}/src/%{import_path}/daemon/graphdriver/*.go
-%dir %{gopath}/src/%{import_path}/daemon/graphdriver/aufs
-%{gopath}/src/%{import_path}/daemon/graphdriver/aufs/*.go
-%dir %{gopath}/src/%{import_path}/daemon/graphdriver/btrfs
-%{gopath}/src/%{import_path}/daemon/graphdriver/btrfs/*.go
-%{gopath}/src/%{import_path}/daemon/graphdriver/btrfs/MAINTAINERS
-%dir %{gopath}/src/%{import_path}/daemon/graphdriver/devmapper
-%{gopath}/src/%{import_path}/daemon/graphdriver/devmapper/*.go
-%{gopath}/src/%{import_path}/daemon/graphdriver/devmapper/MAINTAINERS
-%{gopath}/src/%{import_path}/daemon/graphdriver/devmapper/README.md
-%dir %{gopath}/src/%{import_path}/daemon/graphdriver/graphtest
-%{gopath}/src/%{import_path}/daemon/graphdriver/graphtest/*.go
-%dir %{gopath}/src/%{import_path}/daemon/graphdriver/vfs
-%{gopath}/src/%{import_path}/daemon/graphdriver/vfs/*.go
-%dir %{gopath}/src/%{import_path}/daemon/networkdriver
-%dir %{gopath}/src/%{import_path}/daemon/networkdriver/bridge
-%{gopath}/src/%{import_path}/daemon/networkdriver/bridge/*.go
-%dir %{gopath}/src/%{import_path}/daemon/networkdriver/ipallocator
-%{gopath}/src/%{import_path}/daemon/networkdriver/ipallocator/*.go
-%{gopath}/src/%{import_path}/daemon/networkdriver/*.go
-%dir %{gopath}/src/%{import_path}/daemon/networkdriver/portallocator
-%{gopath}/src/%{import_path}/daemon/networkdriver/portallocator/*.go
-%dir %{gopath}/src/%{import_path}/daemon/networkdriver/portmapper
-%{gopath}/src/%{import_path}/daemon/networkdriver/portmapper/*.go
-%dir %{gopath}/src/%{import_path}/daemonconfig
-%{gopath}/src/%{import_path}/daemonconfig/README.md
-%{gopath}/src/%{import_path}/daemonconfig/*.go
-%dir %{gopath}/src/%{import_path}/dockerversion
-%{gopath}/src/%{import_path}/dockerversion/*.go
-%dir %{gopath}/src/%{import_path}/engine
-%{gopath}/src/%{import_path}/engine/MAINTAINERS
-%{gopath}/src/%{import_path}/engine/*.go
-%dir %{gopath}/src/%{import_path}/graph
-%{gopath}/src/%{import_path}/graph/*.go
-%{gopath}/src/%{import_path}/graph/*.goupstream-patched-archive-tar
-%dir %{gopath}/src/%{import_path}/image
-%{gopath}/src/%{import_path}/image/*.go
-%dir %{gopath}/src/%{import_path}/links
-%{gopath}/src/%{import_path}/links/*.go
-%dir %{gopath}/src/%{import_path}/nat
-%{gopath}/src/%{import_path}/nat/*.go
-%dir %{gopath}/src/%{import_path}/opts
-%{gopath}/src/%{import_path}/opts/*.go
-%dir %{gopath}/src/%{import_path}/registry
-%{gopath}/src/%{import_path}/registry/MAINTAINERS
-%{gopath}/src/%{import_path}/registry/*.go
-%dir %{gopath}/src/%{import_path}/runconfig
-%{gopath}/src/%{import_path}/runconfig/*.go
-%dir %{gopath}/src/%{import_path}/server
-%{gopath}/src/%{import_path}/server/MAINTAINERS
-%{gopath}/src/%{import_path}/server/*.go
-%dir %{gopath}/src/%{import_path}/sysinit
-%{gopath}/src/%{import_path}/sysinit/README.md
-%{gopath}/src/%{import_path}/sysinit/*.go
-%dir %{gopath}/src/%{import_path}/utils
-%dir %{gopath}/src/%{import_path}/utils/filters
-%{gopath}/src/%{import_path}/utils/filters/*.go
-%{gopath}/src/%{import_path}/utils/*.goupstream-patched-archive-tar
-%{gopath}/src/%{import_path}/utils/*.go
-%dir %{gopath}/src/%{import_path}/utils/testdata
-%dir %{gopath}/src/%{import_path}/utils/testdata/46af0962ab5afeb5ce6740d4d91652e69206fc991fd5328c1a94d364ad00e457
-%{gopath}/src/%{import_path}/utils/testdata/46af0962ab5afeb5ce6740d4d91652e69206fc991fd5328c1a94d364ad00e457/json
-%{gopath}/src/%{import_path}/utils/testdata/46af0962ab5afeb5ce6740d4d91652e69206fc991fd5328c1a94d364ad00e457/layer.tar
-%dir %{gopath}/src/%{import_path}/utils/testdata/511136ea3c5a64f264b78b5433614aec563103b4d4702f3ba7d4d2698e22c158
-%{gopath}/src/%{import_path}/utils/testdata/511136ea3c5a64f264b78b5433614aec563103b4d4702f3ba7d4d2698e22c158/json
-%{gopath}/src/%{import_path}/utils/testdata/511136ea3c5a64f264b78b5433614aec563103b4d4702f3ba7d4d2698e22c158/layer.tar
+%dir %{gopath}/src/%{import_path}/*
+%dir %{gopath}/src/%{import_path}/*/*
+%dir %{gopath}/src/%{import_path}/*/*/*
+%dir %{gopath}/src/%{import_path}/*/*/*/*
+%{gopath}/src/%{import_path}/*/MAINTAINERS
+%{gopath}/src/%{import_path}/*/README.md
+%{gopath}/src/%{import_path}/*/*.go
+%{gopath}/src/%{import_path}/*/*/*.go
+%{gopath}/src/%{import_path}/*/*/MAINTAINERS
+%{gopath}/src/%{import_path}/*/*/*/*.go
+%{gopath}/src/%{import_path}/*/*/*/MAINTAINERS
+%{gopath}/src/%{import_path}/*/*/*/README.md
+%{gopath}/src/%{import_path}/*/*/*/*/*.go
 
 %files pkg-devel
+%doc AUTHORS CHANGELOG.md CONTRIBUTING.md LICENSE MAINTAINERS NOTICE README.md 
+%dir %{gopath}/src/%{provider}.%{provider_tld}/%{project}
 %dir %{gopath}/src/%{import_path}
 %dir %{gopath}/src/%{import_path}/pkg
+%dir %{gopath}/src/%{import_path}/pkg/*
+%dir %{gopath}/src/%{import_path}/pkg/*/*
+%dir %{gopath}/src/%{import_path}/pkg/*/*/*
 %{gopath}/src/%{import_path}/pkg/README.md
-%dir %{gopath}/src/%{import_path}/pkg/graphdb
-%{gopath}/src/%{import_path}/pkg/graphdb/MAINTAINERS
-%{gopath}/src/%{import_path}/pkg/graphdb/*.go
-%dir %{gopath}/src/%{import_path}/pkg/iptables
-%{gopath}/src/%{import_path}/pkg/iptables/MAINTAINERS
-%{gopath}/src/%{import_path}/pkg/iptables/*.go
-%dir %{gopath}/src/%{import_path}/pkg/listenbuffer
-%{gopath}/src/%{import_path}/pkg/listenbuffer/*.go
-%dir %{gopath}/src/%{import_path}/pkg/mflag
-%{gopath}/src/%{import_path}/pkg/mflag/LICENSE
-%{gopath}/src/%{import_path}/pkg/mflag/MAINTAINERS
-%{gopath}/src/%{import_path}/pkg/mflag/README.md
-%dir %{gopath}/src/%{import_path}/pkg/mflag/example
-%{gopath}/src/%{import_path}/pkg/mflag/example/example.go
-%{gopath}/src/%{import_path}/pkg/mflag/*.go
-%dir %{gopath}/src/%{import_path}/pkg/mount
-%{gopath}/src/%{import_path}/pkg/mount/MAINTAINERS
-%{gopath}/src/%{import_path}/pkg/mount/*.go
-%dir %{gopath}/src/%{import_path}/pkg/namesgenerator
-%{gopath}/src/%{import_path}/pkg/namesgenerator/*.go
-%dir %{gopath}/src/%{import_path}/pkg/networkfs
-%{gopath}/src/%{import_path}/pkg/networkfs/MAINTAINERS
-%dir %{gopath}/src/%{import_path}/pkg/networkfs/etchosts
-%{gopath}/src/%{import_path}/pkg/networkfs/etchosts/*.go
-%dir %{gopath}/src/%{import_path}/pkg/networkfs/resolvconf
-%{gopath}/src/%{import_path}/pkg/networkfs/resolvconf/*.go
-%dir %{gopath}/src/%{import_path}/pkg/proxy
-%{gopath}/src/%{import_path}/pkg/proxy/MAINTAINERS
-%{gopath}/src/%{import_path}/pkg/proxy/*.go
-%dir %{gopath}/src/%{import_path}/pkg/signal
-%{gopath}/src/%{import_path}/pkg/signal/*.go
-%dir %{gopath}/src/%{import_path}/pkg/symlink
-%{gopath}/src/%{import_path}/pkg/symlink/MAINTAINERS
-%{gopath}/src/%{import_path}/pkg/symlink/*.go
-%dir %{gopath}/src/%{import_path}/pkg/symlink/testdata
-%dir %{gopath}/src/%{import_path}/pkg/symlink/testdata/fs
-%dir %{gopath}/src/%{import_path}/pkg/symlink/testdata/fs/a
-%{gopath}/src/%{import_path}/pkg/symlink/testdata/fs/a/d
-%{gopath}/src/%{import_path}/pkg/symlink/testdata/fs/a/e
-%{gopath}/src/%{import_path}/pkg/symlink/testdata/fs/a/f
-%dir %{gopath}/src/%{import_path}/pkg/symlink/testdata/fs/b
-%{gopath}/src/%{import_path}/pkg/symlink/testdata/fs/b/h
-%{gopath}/src/%{import_path}/pkg/symlink/testdata/fs/g
-%{gopath}/src/%{import_path}/pkg/symlink/testdata/fs/i
-%dir %{gopath}/src/%{import_path}/pkg/sysinfo
-%{gopath}/src/%{import_path}/pkg/sysinfo/MAINTAINERS
-%{gopath}/src/%{import_path}/pkg/sysinfo/*.go
-%dir %{gopath}/src/%{import_path}/pkg/system
-%{gopath}/src/%{import_path}/pkg/system/MAINTAINERS
-%{gopath}/src/%{import_path}/pkg/system/*.go
-%dir %{gopath}/src/%{import_path}/pkg/systemd
-%{gopath}/src/%{import_path}/pkg/systemd/MAINTAINERS
-%{gopath}/src/%{import_path}/pkg/systemd/*.go
-%dir %{gopath}/src/%{import_path}/pkg/tailfile
-%{gopath}/src/%{import_path}/pkg/tailfile/*.go
-%dir %{gopath}/src/%{import_path}/pkg/truncindex
-%{gopath}/src/%{import_path}/pkg/truncindex/*.go
-%dir %{gopath}/src/%{import_path}/pkg/term
-%{gopath}/src/%{import_path}/pkg/term/MAINTAINERS
-%{gopath}/src/%{import_path}/pkg/term/*.go
-%dir %{gopath}/src/%{import_path}/pkg/testutils
-%{gopath}/src/%{import_path}/pkg/testutils/MAINTAINERS
-%{gopath}/src/%{import_path}/pkg/testutils/README.md
-%{gopath}/src/%{import_path}/pkg/testutils/testutils.go
-%dir %{gopath}/src/%{import_path}/pkg/units
-%{gopath}/src/%{import_path}/pkg/units/MAINTAINERS
-%{gopath}/src/%{import_path}/pkg/units/*.go
-%dir %{gopath}/src/%{import_path}/pkg/user
-%{gopath}/src/%{import_path}/pkg/user/MAINTAINERS
-%{gopath}/src/%{import_path}/pkg/user/*.go
-%dir %{gopath}/src/%{import_path}/pkg/version
-%{gopath}/src/%{import_path}/pkg/version/*.go
+%{gopath}/src/%{import_path}/pkg/*/MAINTAINER*
+%{gopath}/src/%{import_path}/pkg/*/LICENSE
+%{gopath}/src/%{import_path}/pkg/*/README.md
+%{gopath}/src/%{import_path}/pkg/*/*.go
+%{gopath}/src/%{import_path}/pkg/*/*/*.tar
+%{gopath}/src/%{import_path}/pkg/*/*/*.go
+%{gopath}/src/%{import_path}/pkg/*/*/*/json
+%{gopath}/src/%{import_path}/pkg/*/*/*/*.tar
 
 %changelog
-* Tue Aug 05 2014 Lokesh Mandvekar <lsm5 at fedoraproject.org> - 1.1.2-3
-- Resolves:rhbz#1122434 - Disable selinux for f19
+* Tue Nov 25 2014 Lokesh Mandvekar <lsm5 at fedoraproject.org> - 1.3.2-1
+- Resolves: rhbz#1167642 - Update to upstream v1.3.2
+- Resolves: rhbz#1167505, rhbz#1167507 - CVE-2014-6407
+- Resolves: rhbz#1167506 - CVE-2014-6408
+- use vendor/ dir for golang deps for this NVR (fix deps soon after)
+
+* Fri Oct 31 2014 Lokesh Mandvekar <lsm5 at fedoraproject.org> - 1.3.1-2
+- Remove pandoc from build reqs
+
+* Fri Oct 31 2014 Lokesh Mandvekar <lsm5 at fedoraproject.org> - 1.3.1-1
+- update to v1.3.1
+
+* Mon Oct 20 2014 Lokesh Mandvekar <lsm5 at fedoraproject.org> - 1.3.0-1
+- Resolves: rhbz#1153936 - update to v1.3.0
+- don't install zsh files
+- iptables=false => ip-masq=false
+
+* Wed Oct 08 2014 Lokesh Mandvekar <lsm5 at fedoraproject.org> - 1.2.0-5
+- Resolves: rhbz#1149882 - systemd unit and socket file updates
+
+* Tue Sep 30 2014 Lokesh Mandvekar <lsm5 at fedoraproject.org> - 1.2.0-4
+- Resolves: rhbz#1139415 - correct path for bash completion
+    /usr/share/bash-completion/completions
+- versioned provides for docker
+- golang versioned requirements for devel and pkg-devel
+- remove macros from changelog
+- don't own dirs owned by vim, systemd, bash
+
+* Thu Sep 25 2014 Lokesh Mandvekar <lsm5 at fedoraproject.org> - 1.2.0-3
+- Resolves: rhbz#1145660 - support /etc/sysconfig/docker-storage 
+  From: Colin Walters <walters at redhat.com>
+- patch to ignore selinux if it's disabled
+  https://github.com/docker/docker/commit/9e2eb0f1cc3c4ef000e139f1d85a20f0e00971e6
+  From: Dan Walsh <dwalsh at redhat.com>
+
+* Sun Aug 24 2014 Lokesh Mandvekar <lsm5 at fedoraproject.org> - 1.2.0-2
+- Provides docker only for f21 and above
+
+* Sat Aug 23 2014 Lokesh Mandvekar <lsm5 at fedoraproject.org> - 1.2.0-1
+- Resolves: rhbz#1132824 - update to v1.2.0
+
+* Sat Aug 16 2014 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 1.1.2-3
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
 
 * Fri Aug 01 2014 Lokesh Mandvekar <lsm5 at fedoraproject.org> - 1.1.2-2
-- change %else if -> %else %if
+- change conditionals
 
 * Thu Jul 31 2014 Lokesh Mandvekar <lsm5 at fedoraproject.org> - 1.1.2-1
 - Resolves: rhbz#1124036 - update to upstream v1.1.2
 
 * Mon Jul 28 2014 Vincent Batts <vbatts at fedoraproject.org> - 1.0.0-10
-- split out the %{import_path}/pkg/... libraries, to avoid cyclic deps with libcontainer
+- split out the import_path/pkg/... libraries, to avoid cyclic deps with libcontainer
 
 * Thu Jul 24 2014 Lokesh Mandvekar <lsm5 at fedoraproject.org> - 1.0.0-9
 - /etc/sysconfig/docker should be config(noreplace)
@@ -526,11 +442,12 @@ exit 0
 * Tue May 27 2014 Lokesh Mandvekar <lsm5 at redhat.com> - 0.11.1-4
 - patches for BZ 1088125, 1096375
 
-* Tue May 13 2014 Lokesh Mandvekar <lsm5 at redhat.com> - 0.11.1-3
-- enable selinux
+* Fri May 09 2014 Lokesh Mandvekar <lsm5 at redhat.com> - 0.11.1-3
+- add selinux buildtag
+- enable selinux in unitfile
 
-* Tue May 13 2014 Lokesh Mandvekar <lsm5 at redhat.com> - 0.11.1-2
-- remove conditionals
+* Fri May 09 2014 Lokesh Mandvekar <lsm5 at redhat.com> - 0.11.1-2
+- get rid of conditionals, separate out spec for each branch
 
 * Thu May 08 2014 Lokesh Mandvekar <lsm5 at redhat.com> - 0.11.1-1
 - Bug 1095616 - upstream bump to 0.11.1
diff --git a/docker-storage.sysconfig b/docker-storage.sysconfig
new file mode 100644
index 0000000..3dc1654
--- /dev/null
+++ b/docker-storage.sysconfig
@@ -0,0 +1,14 @@
+# This file may be automatically generated by an installation program.
+
+# By default, Docker uses a loopback-mounted sparse file in
+# /var/lib/docker.  The loopback makes it slower, and there are some
+# restrictive defaults, such as 100GB max storage.
+
+# If your installation did not set a custom storage for Docker, you
+# may do it below.
+
+# Example: Use a custom pair of raw logical volumes (one for metadata,
+# one for data).
+# DOCKER_STORAGE_OPTIONS = --storage-opt dm.metadatadev=/dev/mylogvol/my-docker-metadata --storage-opt dm.datadev=/dev/mylogvol/my-docker-data
+
+DOCKER_STORAGE_OPTIONS=
diff --git a/docker.service b/docker.service
index 9b6c614..10c7e15 100644
--- a/docker.service
+++ b/docker.service
@@ -7,9 +7,10 @@ Requires=docker.socket
 [Service]
 Type=notify
 EnvironmentFile=-/etc/sysconfig/docker
-ExecStart=/usr/bin/docker -d -H fd:// $OPTIONS
+EnvironmentFile=-/etc/sysconfig/docker-storage
+ExecStart=/usr/bin/docker -d -H fd:// $OPTIONS $DOCKER_STORAGE_OPTIONS
 LimitNOFILE=1048576
 LimitNPROC=1048576
 
 [Install]
-Also=docker.socket
+WantedBy=multi-user.target
diff --git a/docker.sysconfig b/docker.sysconfig
index 65f306a..c8c301a 100644
--- a/docker.sysconfig
+++ b/docker.sysconfig
@@ -1,2 +1 @@
-# /etc/sysconfig/docker
-OPTIONS=
+OPTIONS=--selinux-enabled
diff --git a/sources b/sources
index 06b3414..bf5a889 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-2e02d5288ecd6cbd9a6c3e4fd3b81ffc  v1.1.2.tar.gz
+09af621b62626dd18a2f2994435236ca  v1.3.2.tar.gz


More information about the scm-commits mailing list