Commit graph

792 commits

Author SHA1 Message Date
Yong Tang
49ad3d69a7
Merge pull request #36336 from cpuguy83/split_installers
Split binary installers/commit scripts
2018-02-21 19:20:29 -08:00
Brian Goff
b529d1b093 Split binary installers/commit scripts
Originally I worked on this for the multi-stage build Dockerfile
changes. Decided to split this out as we are still waiting for
multi-stage to be available on CI and rebasing these is pretty annoying.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2018-02-21 15:39:24 -05:00
Daniel Nephin
e73d742cd7 Remove explicit DOCKER_API_VERSION from integration env setup
Use the default version because it is used by the client package

Signed-off-by: Daniel Nephin <dnephin@docker.com>
2018-02-20 17:27:28 -05:00
Vincent Demeester
af306d149e
Rename integration/util to integration/internal
Both names have no real sense, but one allows to make sure these packages
aren't used outside of `integration`.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2018-02-10 09:16:32 +01:00
Akihiro Suda
cd3c0057ac
Merge pull request #34369 from cyphar/build-buildmode-pie
*: switch to -buildmode=pie
2018-01-29 23:54:03 +09:00
Dennis Chen
662bdb4a56 Removal of TEST_IMAGE_NAMESPACE
We don't need the test image namespace anymore since we've already
upgrade those images to the latest multi-arch ones.

Signed-off-by: Dennis Chen <dennis.chen@arm.com>
2018-01-11 05:16:09 +00:00
Sebastiaan van Stijn
fda904911d
Merge pull request #35772 from arm64b/multi-arch-manifest-support
Download support of images with multi-arch manifest
2018-01-03 19:03:33 +01:00
Brett Randall
3b80d57899 Fixed typo DEREPCATED -> DEPRECATED.
Signed-off-by: Brett Randall <javabrett@gmail.com>
2017-12-29 06:39:09 -05:00
Dennis Chen
0af5db511e Download support of images with multi-arch manifest
Currently we only support 'application/vnd.docker.distribution.manifest.v2+json'
manifest images download, with more multi-arch images used, we need to support
download images with 'application/vnd.docker.distribution.manifest.list.v2+json'
format(aka "fat manifest"), else we will fail to download those multi-arch ones.

This PR adds 'application/vnd.docker.distribution.manifest.list.v2+json' manifest
support, thus we can download both multi-arch and legacy images.

Signed-off-by: Dennis Chen <dennis.chen@arm.com>
2017-12-14 05:37:22 +00:00
Tibor Vass
cb8283a6e9 Fix windows
Signed-off-by: Tibor Vass <tibor@docker.com>
2017-12-06 23:23:55 +01:00
Tibor Vass
9152e63290 api: generalize version information to any platform component
This change adds a Platform struct with a Name field and a general
Components field to the Version API type. This will allow API
consumers to show version information for the whole platform and
it will allow API providers to set the versions for the various
components of the platform.

All changes here are backwards compatible.

Signed-off-by: Tibor Vass <tibor@docker.com>
2017-12-06 23:23:55 +01:00
Kir Kolyshkin
17708e72a7 graphdriver: custom build-time priority list
Add a way to specify a custom graphdriver priority list
during build. This can be done with something like

  go build -ldflags "-X github.com/docker/docker/daemon/graphdriver.priority=overlay2,devicemapper"

As ldflags are already used by the engine build process, and it seems
that only one (last) `-ldflags` argument is taken into account by go,
an envoronment variable `DOCKER_LDFLAGS` is introduced in order to
be able to append some text to `-ldflags`. With this in place,
using the feature becomes

  make DOCKER_LDFLAGS="-X github.com/docker/docker/daemon/graphdriver.priority=overlay2,devicemapper" dynbinary

The idea behind this is, the priority list might be different
for different distros, so vendors are now able to change it
without patching the source code.

Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>
2017-11-16 19:43:34 -08:00
Aleksa Sarai
1f4e37cf4b
*: switch to -buildmode=pie
Go has supported PIC builds for a while now, and given the security
benefits of using PIC binaries we should really enable them. There also
appears to be some indication that non-PIC builds have been interacting
oddly on ppc64le (the linker cannot load some shared libraries), and
using PIC builds appears to solve this problem.

Signed-off-by: Aleksa Sarai <asarai@suse.de>
2017-11-11 21:59:49 +11:00
Yong Tang
64e1d4a1f0
Merge pull request #35363 from yongtang/11012017-Dockerfile.solaris
Remove Dockerfile.solaris reference
2017-11-01 16:36:00 -07:00
Daniel Nephin
a17bfb78e8
Merge pull request #35360 from thaJeztah/fix-autogen-warning
Fix .go-autogen warnings
2017-11-01 15:12:09 -04:00
Yong Tang
d157d98a5f Remove Dockerfile.solaris reference
Remove Dockerfile.solaris reference in `hack/make/.detect-daemon-osarch`
as `Dockerfile.solaris` has been removed.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-11-01 16:26:29 +00:00
Sebastiaan van Stijn
6d5e468db1
Fix .go-autogen warnings
The `.integration-test-helpers` script was sourced by `/etc/bash/bash.rc`.
However, the `$SCRIPTDIR` environment variable is set through `hack/make.sh`,
so will not be set when calling the `.integration-test-helpers` script directly.

Before this patch;

    make BIND_DIR=. shell
    ...
    bash: /make/.go-autogen: No such file or directory

After this patch, the warning is no longer printed

Also removed sourcing `.go-autogen` from test-integration and build-integration-test-binary,
as they already sourced `.integration-test-helpers` (which sources
`.go-autogen`).

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-11-01 12:03:32 +01:00
Daniel Nephin
eef85648e4 Remove packaging scripts
These scripts have not been used for a while now, and should not be used again
because they are for releasing docker, not moby

Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-10-31 18:37:05 -04:00
Kenfe-Mickael Laventure
ddae20c032
Update libcontainerd to use containerd 1.0
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2017-10-20 07:11:37 -07:00
Vincent Demeester
fe33ea9b0e Merge pull request #34941 from dsheets/authz-tests-api-port
integration/plugin/authz: port tests from integration-cli
2017-10-11 16:15:56 +02:00
Daniel Nephin
104c1c6843 Skip all testdata in integration
Also skip.IfCondition directly from the test, so that the skip message is correct

Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-10-02 17:02:52 -04:00
David Sheets
1574d91463 integration/plugin/authz: inline CLI work-alike library
I strongly disagree with the design of this pull request.

Signed-off-by: David Sheets <dsheets@docker.com>
2017-10-02 14:20:59 +01:00
David Sheets
928b0631c9 integration/plugin/authz: port tests from integration-cli
Signed-off-by: David Sheets <dsheets@docker.com>
2017-10-02 14:20:59 +01:00
Daniel Nephin
dbf580be57 Add a new entrypoint for CI
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-09-20 17:26:30 -04:00
Daniel Nephin
96707bc600 Fix integration suite and propagate failures
Failures from the integration suite were not propagating to the outter shell
for some reason. Handle the failure with an if exit 1.

Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-09-01 13:07:47 -04:00
Daniel Nephin
c467a11205 Remove config tests, which are now unit tests in docker/cli
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-08-18 14:24:52 -04:00
Akihiro Suda
2fddf9f6ef Fix make build-integration-cli-on-swarm
Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2017-08-12 06:53:25 +00:00
Daniel Nephin
e593b72cc9 Fix exclude list in make.ps1
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-08-09 11:03:20 -04:00
Daniel Nephin
c66c0447ef move api test client setup to a package.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-08-09 11:02:57 -04:00
Daniel Nephin
5fa134b906 Protect images in the integration/ suite
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-08-09 11:02:57 -04:00
Daniel Nephin
4308e881cc Cleanup test output, and binaries.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-08-09 11:02:57 -04:00
Daniel Nephin
de46fb736d Add integration suite
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-08-09 11:02:57 -04:00
Daniel Nephin
bc82b13995 Remove test-integration-cli and references to it.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-08-09 11:02:57 -04:00
Vincent Demeester
6b025a8b66 Introduce test-integration target (and deprecate/freeze test-integration-cli)
This adds a new package `integration` where `engine` integration tests
should live. Those integration tests should not depends on any `cli`
components (except from the `dockerd` daemon for now — to actually
start a daemon).

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-08-09 11:02:57 -04:00
Sebastiaan van Stijn
f8c434366e Merge pull request #33987 from dnephin/cleanup-more-hack
Move test-unit out of hack/make
2017-07-27 00:29:13 +02:00
Eli Uriegas
3cdd471cac Add go-autogen to integration tests
Integration test were failing in trial runs for docker-ce 17.07 due to
the lack of go-autogen being sourced in `hack/make.sh`. This re-adds
go-autogen to be sourced for test-integration-cli so that we can
actually run tests without the error found in:
https://github.com/moby/moby/pull/33857

Signed-off-by: Eli Uriegas <eli.uriegas@docker.com>
2017-07-20 11:37:12 -07:00
Daniel Nephin
1fb615599a Remove test-unit from hack/make
Also remove the test flag from pkg/term and jsut checkuid directly.
Fixed a problem with a pkg/term test that was leaving the terminal in a bad
state.

Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-07-17 11:39:33 -04:00
Daniel Nephin
ece4520bf8 More helper hack helper functions to a more appropriate place.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-07-17 11:38:59 -04:00
Sebastiaan van Stijn
e038f9f81f
Remove old "get.docker.com" install script
This script is part of the Docker product,
and no longer maintained in this repository.

The script has been updated to install Docker CE
packages from https://download.docker.com, and is
now located in the https://github.com/docker/docker-install
repository.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-07-06 11:29:07 -07:00
Josh Soref
39bcaee47b
Spelling fixes
* additional
* ambiguous
* anonymous
* anything
* application
* because
* before
* building
* capabilities
* circumstances
* commit
* committer
* compresses
* concatenated
* config
* container
* container's
* current
* definition
* delimiter
* disassociates
* discovery
* distributed
* doesnotexist
* downloads
* duplicates
* either
* enhancing
* enumerate
* escapable
* exactly
* expect
* expectations
* expected
* explicitly
* false
* filesystem
* following
* forbidden
* git with
* healthcheck
* ignore
* independent
* inheritance
* investigating
* irrelevant
* it
* logging
* looking
* membership
* mimic
* minimum
* modify
* mountpoint
* multiline
* notifier
* outputting
* outside
* overridden
* override
* parsable
* plugins
* precedence
* propagation
* provided
* provides
* registries
* repositories
* returning
* settings
* should
* signals
* someone
* something
* specifically
* successfully
* synchronize
* they've
* thinking
* uninitialized
* unintentionally
* unmarshaling
* unnamed
* unreferenced
* verify

Signed-off-by: Josh Soref <jsoref@gmail.com>
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-07-03 13:13:09 -07:00
Yong Tang
fac486d0a0 Fix build error for make test-unit
This fix tries to address the issue raised by #33856 where
`make test-unit` will result in the failure:
```
...
...
dockerversion/useragent.go:20: undefined: Version
dockerversion/useragent.go:22: undefined: GitCommit
ok  	github.com/docker/docker/api	0.026s	coverage: 68.0% of statements
ok  	github.com/docker/docker/api/errors	0.003s	coverage: 100.0% of statements
FAIL	github.com/docker/docker/api/server [build failed]
make: *** [test-unit] Error 2
```

The issue is because in case of `make test-unit`, `source "${MAKEDIR}/.go-autogen"`
is missing.

This caused the `make test-unit` failure.

This fix adds `source "${MAKEDIR}/.go-autogen"` in `hack/make/test-unit`

This fix fixes #33856.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
2017-06-28 03:18:55 +00:00
Christy Perez
091e07c87d Fix autogen vars
commit ea2e4d73c4 removed the autogen
script, but if you happen to clone the dir fresh from git, you can't
build the integration test binaries.

Signed-off-by: Christy Perez <christy@linux.vnet.ibm.com>
2017-06-23 14:40:09 -05:00
Daniel Nephin
2b45ec7f78 Remove yaml docs generator and man pages
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-06-21 11:20:05 -04:00
Daniel Nephin
ea2e4d73c4 remove cli concerns from hack/make
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-06-21 11:20:05 -04:00
Daniel Nephin
b877fc31c5 Remove pkcs11, libltdl-dev, and clang for osx.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-06-21 11:18:44 -04:00
John Howard
cdc39033ef Show what cross-build is executing
Signed-off-by: John Howard <jhoward@microsoft.com>
2017-06-20 13:30:51 -07:00
Sebastiaan van Stijn
7839ff2244
Bump API version
With the Moby/Docker split, no decisions have been
made yet how, and when to bump the API version.

Although these decisions should not be lead
by Docker releases, I'm bumping the API version
to not complicate things for now; after this bump
we should make a plan how to handle this in future
(for example, using SemVer for the REST api, and
bump with every change).

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-06-09 14:58:01 +02:00
Naveed Jamil
a267248b5a Add test coverage to pkg/term/proxy.go
Signed-off-by: Naveed Jamil <naveed.jamil@tenpearls.com>
2017-06-08 12:48:33 +05:00
Kenfe-Mickael Laventure
0b90edc22f Use actual cli version for TestConfigHTTPHeader
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2017-06-01 09:35:30 -07:00
Brian Goff
c307f4521e Merge pull request #32437 from cpuguy83/container_selinux
Rely on container-selinux for centos/fedora25/rhel
2017-05-12 09:23:17 -04:00
Tonis Tiigi
973bce2100 hack: Remove install-binary-client
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2017-05-08 10:50:31 -07:00
Arnaud Porterie (icecrime)
32915b1d0a Remove cmd/docker and other directories in cli/ in accordance with the new Moby project scope
Starting with this commit, integration tests should no longer rely on
the docker cli, they should be API tests instead. For the existing tests
the scripts will use a frozen version of the docker cli with a
DOCKER_API_VERSION frozen to 1.30, which should ensure that the CI remains
green at all times.

To help contributors develop and test manually with a modified docker
cli, this commit also adds a DOCKER_CLI_PATH environment variable to the
Makefile. This allows to set the path of a custom cli that will be
available inside the development container and used to run the
integration tests.

Signed-off-by: Arnaud Porterie (icecrime) <arnaud.porterie@docker.com>
Signed-off-by: Tibor Vass <tibor@docker.com>
2017-05-05 12:14:29 -07:00
Brian Goff
adb2ddf288 Rely on container-selinux for centos/fedora25/rhel
RH now provides `container-selinux` which provides everything we need
for docker's selinux policy. Rely on `container-selinux` where
available, and `docker-engine-selinux` when not.

This still builds the `docker-engine-selinux` package and presumably
makes it available, but is no longer a requirement in the
`docker-engine` package preferring `container-selinux` instead.

`container-selinux` is available on fedora24, however the version that
is available does not set the correct types on the `dockerd` binary. We
can use `container-selinux` and just supplement that with some of our
own policy, but for now just keep using `docker-engine-selinux` as is.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2017-05-01 11:23:18 -04:00
Sebastiaan van Stijn
2443decdd5
do not show errors on make install
When running "make install" in a build container,
docker is not installed the first time it's
run, causing these errors to appear;

    $ make install
    hack/make/.detect-daemon-osarch: line 11: docker: command not found
    hack/make/.detect-daemon-osarch: line 11: docker: command not found
    hack/make/.detect-daemon-osarch: line 11: docker: command not found
    hack/make/.detect-daemon-osarch: line 11: docker: command not found
    KEEPBUNDLE=1 hack/make.sh install-binary

This patch checks if docker exists, and if not
just continues silently :)

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-04-04 15:19:50 +02:00
Vincent Demeester
8305617510 Merge pull request #32213 from aaronlehmann/plugin-build-mac
plugins: Rename plugins_linux.go to plugins_unix.go and use build tags
2017-03-30 15:03:32 +02:00
Aaron Lehmann
8eb7edab7c Add line to hack/make/cross to cross-compile pkgs directory
Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2017-03-29 15:58:03 -07:00
Sebastiaan van Stijn
089b71443a
delete generated rpm "changelog"
The generated "changelog" was not removed
before re-generating, causing the changelog
to be added twice on repeated runs of "make rpm"
(when bind-mounting the local source).

As a result, rpms failed to build, because
the resulting file had entries in non-chronological
order.

This change removes the generated file
before re-generating, and adds the file
to .gitignore, to prevent it from
accidentally being added to source control.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-03-29 18:19:07 +02:00
Sebastiaan van Stijn
1b2f07a2f1 Merge pull request #31501 from thtanaka/update-oracle-selinux
Update oracle linux selinux to match docker upstream
2017-03-29 13:15:28 +02:00
Fengtu Wang
a42e72814f fix wrong usage in script of integration test
Signed-off-by: Fengtu Wang <wangfengtu@huawei.com>
2017-03-29 18:23:06 +08:00
Thomas Tanaka
fc7cc1cc75 Update oracle linux selinux to match docker upstream
Add a dependency on specific selinux version for OL on docker-engine.spec

Signed-off-by: Thomas Tanaka <thomas.tanaka@oracle.com>
2017-03-24 12:17:39 -07:00
French Ben
5443f0152f docs: added support for CLI yaml file generation
Signed-off-by: French Ben <frenchben@docker.com>
Signed-off-by: Tibor Vass <tibor@docker.com>
2017-03-14 16:04:08 -07:00
Akihiro Suda
28797019b3 [EXPERIMENTAL] Integration Test on Swarm
This commit adds contrib/integration-cli-on-swarm/integration-cli-on-swarm.sh,
which enables IT to be running in parallel, using Swarm-mode and Funker.

Please refer to contrib/integration-cli-on-swarm/README.md

The test takes almost 5 to 6 minutes, with 10 n1-standard-4 GCE instances.

  $ ./contrib/integration-cli-on-swarm/integration-cli-on-swarm.sh --push-worker-image example.gcr.io/foo/bar --replicas 30 --shuffle
  2016/12/29 08:32:15 Loaded 1618 tests (30 chunks)
  2016/12/29 08:32:15 Executing 30 chunks in parallel, against "integration-cli-worker"
  2016/12/29 08:32:15 Executing chunk 0 (contains 54 test filters)
  ..
  2016/12/29 08:34:34 Finished chunk 28 [1/30] with 54 test filters in 2m19.098068003s, code=0.
  2016/12/29 08:34:38 Finished chunk 12 [2/30] with 54 test filters in 2m23.088569511s, code=0.
  2016/12/29 08:34:48 Finished chunk 10 [3/30] with 54 test filters in 2m33.880679079s, code=0.
  2016/12/29 08:34:54 Finished chunk 20 [4/30] with 54 test filters in 2m39.973747028s, code=0.
  2016/12/29 08:35:11 Finished chunk 18 [5/30] with 54 test filters in 2m56.28384361s, code=0.
  2016/12/29 08:35:11 Finished chunk 29 [6/30] with 52 test filters in 2m56.54047088s, code=0.
  2016/12/29 08:35:15 Finished chunk 1 [7/30] with 54 test filters in 3m0.285044426s, code=0.
  2016/12/29 08:35:22 Finished chunk 6 [8/30] with 54 test filters in 3m7.211775338s, code=0.
  2016/12/29 08:35:24 Finished chunk 25 [9/30] with 54 test filters in 3m9.938413009s, code=0.
  2016/12/29 08:35:30 Finished chunk 27 [10/30] with 54 test filters in 3m15.219834368s, code=0.
  2016/12/29 08:35:36 Finished chunk 9 [11/30] with 54 test filters in 3m21.615434162s, code=0.
  2016/12/29 08:35:41 Finished chunk 13 [12/30] with 54 test filters in 3m26.576907401s, code=0.
  2016/12/29 08:35:45 Finished chunk 17 [13/30] with 54 test filters in 3m30.290752537s, code=0.
  2016/12/29 08:35:53 Finished chunk 2 [14/30] with 54 test filters in 3m38.148423321s, code=0.
  2016/12/29 08:35:55 Finished chunk 24 [15/30] with 54 test filters in 3m40.09669137s, code=0.
  2016/12/29 08:35:57 Finished chunk 8 [16/30] with 54 test filters in 3m42.299945108s, code=0.
  2016/12/29 08:35:57 Finished chunk 22 [17/30] with 54 test filters in 3m42.946558809s, code=0.
  2016/12/29 08:35:59 Finished chunk 23 [18/30] with 54 test filters in 3m44.232557165s, code=0.
  2016/12/29 08:36:02 Finished chunk 3 [19/30] with 54 test filters in 3m47.112051358s, code=0.
  2016/12/29 08:36:11 Finished chunk 15 [20/30] with 54 test filters in 3m56.340656645s, code=0.
  2016/12/29 08:36:11 Finished chunk 11 [21/30] with 54 test filters in 3m56.882401231s, code=0.
  2016/12/29 08:36:22 Finished chunk 19 [22/30] with 54 test filters in 4m7.551093516s, code=0.
  2016/12/29 08:36:23 Finished chunk 21 [23/30] with 54 test filters in 4m8.221093446s, code=0.
  2016/12/29 08:36:25 Finished chunk 16 [24/30] with 54 test filters in 4m10.450451705s, code=0.
  2016/12/29 08:36:27 Finished chunk 5 [25/30] with 54 test filters in 4m12.162272692s, code=0.
  2016/12/29 08:36:28 Finished chunk 14 [26/30] with 54 test filters in 4m13.977801031s, code=0.
  2016/12/29 08:36:29 Finished chunk 0 [27/30] with 54 test filters in 4m14.34086812s, code=0.
  2016/12/29 08:36:49 Finished chunk 26 [28/30] with 54 test filters in 4m34.437085539s, code=0.
  2016/12/29 08:37:14 Finished chunk 7 [29/30] with 54 test filters in 4m59.22902721s, code=0.
  2016/12/29 08:37:20 Finished chunk 4 [30/30] with 54 test filters in 5m5.103469214s, code=0.
  2016/12/29 08:37:20 Executed 30 chunks in 5m5.104379119s. PASS: 30, FAIL: 0.

Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2017-02-28 02:10:09 +00:00
Victor Vieux
47396d6377 Switch to new versioning scheme
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2017-02-15 23:22:50 -08:00
Victor Vieux
3167bb8629 Merge pull request #29957 from ilianaw/amazonlinux-rpms
Build the docker-engine RPM for Amazon Linux
2017-02-15 09:40:03 -08:00
Tianon Gravi
52379fa76d Convert script shebangs from "#!/bin/bash" to "#!/usr/bin/env bash"
This is especially important for distributions like NixOS where `/bin/bash` doesn't exist, or for MacOS users who've installed a newer version of Bash than the one that comes with their OS.

Signed-off-by: Andrew "Tianon" Page <admwiggin@gmail.com>
2017-02-13 11:01:54 -08:00
Iliana Weller
0b0216b67b
Build the docker-engine RPM for Amazon Linux
Signed-off-by: Iliana Weller <iweller@amazon.com>
2017-02-08 16:19:22 -08:00
Christopher Jones
9db1d16053
[ppc64le/s390x] add p/z to release-deb
This adds ppc64le and s390x architectures to those supported
by hack/make/release-debs

Signed-off-by: Christopher Jones <tophj@linux.vnet.ibm.com>
2017-01-30 17:44:33 -05:00
Tibor Vass
7a97705b52 Merge pull request #29959 from cpuguy83/master_fix_selinux_packaging
[master] Fix conflicts with newly updated selinux policies
2017-01-20 15:13:18 -08:00
Zhang Wei
062ce13e9c Add missing ${DOCKER_BUILD_ARGS}
Add missing "${DOCKER_BUILD_ARGS}" for building rpm with `docker build`,
this is quite important when running `make rpm` behind http proxy.

Signed-off-by: Zhang Wei <zhangwei555@huawei.com>
2017-01-17 20:10:48 +08:00
Brian Goff
ec9a05e5e2 Fix conflicts with newly updated selinux policies
The base selinux policies on centos/rhel/oraclelinux have all been
updated in a way that conflicts with the policies we install with
`docker-engine-selinux`. This patch fixes these conflicts.

In addition, removes special cases for old/unsupported versions of
fedora in our selinux package, and change to use a single minimum
version for the selinux base policy package, as this is the minimum
version required to use our selinux policy package.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2017-01-06 16:04:24 -05:00
Brian Goff
71ca76e8f2 Set inspect type in ensure-emptyfs
This keeps the test daemon logs from being flooded with calls to lookup
emptyfs for other types.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2016-12-09 08:26:05 -05:00
Justin Cormack
74ecec9199 Merge pull request #29174 from lhsvobodaj/29132-add-build-args-to-build-deb-script
Add variable DOCKER_BUILD_ARGS to build-deb script
2016-12-07 09:02:47 -08:00
Vincent Demeester
aefbc03444 Make sure we don't run integration cli test if compilation fails
Otherwise, while using test-integration-shell, it runs the tests using
the previously compiled test binary.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-12-06 23:37:08 +01:00
Luiz Svoboda
63aaf5e316 Add variable DOCKER_BUILD_ARGS to build-deb script
Some containers were being built (`docker build`) without
the DOCKER_BUILD_ARGS variable, which was causing some
issues because of the lack of network proxy configuration.

Fixes #29132

Signed-off-by: Luiz Svoboda <luizek@gmail.com>
2016-12-06 10:17:41 -02:00
Akihiro Suda
4522f14f8c Fix bundle dir for integration-cli
test.main was unexpectedly created under docker/integration-cli/bundles/VERSION/test-integration-cli directory.
This commit moves test.main to docker/bundles/VERSION/test-integration-cli.

Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2016-12-05 09:07:38 +00:00
Dieter Reuter
0d7e118f01 Add support for running builds within an QEMU emulation
With this change we can run a Docker build in QEMU and build ARM or ARM64 binaries directly on an Intel build machine. This feature already supports building with Docker4Mac (Beta31). So it's easy for a developer to compile and test the Docker binaries locally on his dev machine w/o the need of the target hardware. Another use case would be to run builds on a clound CI like Travis to get an instant feedback loop for PR's, all on a common Intel platform w/o the need to set up the CI system on the target hardware.

Usage: build static Docker binaries for ARM 32-bit
```
DOCKER_ENGINE_OSARCH="linux/arm" make binary
```

Usage: build static Docker binaries for ARM64 aka AARCH64
```
DOCKER_ENGINE_OSARCH="linux/arm64" make binary
```

Signed-off-by: Dieter Reuter <dieter.reuter@me.com>
2016-12-03 13:53:59 +01:00
John Howard
155435b6ce Windows: make.ps1 and Dockerfile for native builds
Signed-off-by: John Howard <jhoward@microsoft.com>
2016-12-02 10:46:15 -08:00
John Howard
64cc7677bf Windows: Native autogen
Signed-off-by: John Howard <jhoward@microsoft.com>
2016-11-17 13:48:57 -08:00
Kenfe-Mickael Laventure
17df5593eb Remove extra binaries commit variables from windows build
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2016-11-11 08:24:17 -08:00
Victor Vieux
0427afa409 Merge pull request #27955 from mlaventure/runc-docker-info
Add external binaries version to docker info
2016-11-10 21:27:14 -08:00
Sebastiaan van Stijn
c4f1cb7791 Add Fedora 25 RPMs
This is a temporary version for building
Fedora 25. Fedora 25 will be released during
code-freeze, and is currently in beta, so no
official images are available yet.

Current release date is scheduled for 2016-11-15
https://fedoraproject.org/wiki/Releases/25/Schedule

Once released, the image will be updated for
GA

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2016-11-10 20:44:30 +01:00
Sebastiaan van Stijn
44c816a808 Merge pull request #27829 from DieterReuter/fix-aptrepo-distro-versions
Fix creation of the APT repo directory structure for similar distros
2016-11-10 16:23:27 +01:00
Kenfe-Mickael Laventure
2790ac68b3 Add expected 3rd party binaries commit ids to info
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2016-11-09 07:42:44 -08:00
Michael Crosby
d58b47623b Replace grimes with tini
There is no reason to duplicate efforts and tini is well built and
better than grimes.  It is a much stronger option for the default init
and @krallin has done a great job maintaining it and helping make
changes so that it will work with Docker.

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-11-08 14:42:54 -08:00
Tibor Vass
109c26bd74 Merge pull request #28056 from LK4D4/solaris_me
Add functional support for Docker sub commands on Solaris
2016-11-07 16:46:18 -08:00
Amit Krishnan
934328d8ea Add functional support for Docker sub commands on Solaris
Signed-off-by: Amit Krishnan <krish.amit@gmail.com>

Signed-off-by: Alexander Morozov <lk4d4@docker.com>
2016-11-07 09:06:34 -08:00
John Howard
d945441e23 Remove Windows CI stubs from hack/
Signed-off-by: John Howard <jhoward@microsoft.com>
2016-11-05 21:01:06 -07:00
Kenfe-Mickaël Laventure
3a9322e9ec Merge pull request #28074 from dmcgowan/force-sha512-sign-repos
Use sha512 when gpg signing builds
2016-11-04 14:08:52 -07:00
Derek McGowan
201f804310
Use sha512 when gpg signing builds
Signed-off-by: Derek McGowan <derek@mcgstyle.net> (github: dmcgowan)
2016-11-04 09:45:13 -07:00
Alexander Morozov
f2614f2107 project: use vndr for vendoring
Signed-off-by: Alexander Morozov <lk4d4@docker.com>
2016-11-03 15:31:46 -07:00
Daniel Nephin
9a2eb8b162 Add stubs for windows CI
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-11-03 14:24:58 -06:00
Daniel Nephin
22033e1003 Move validation out of hack/make
Allow each script to run directly without the hack/make.sh wrapper. These
scripts do not produce artifacts and do not benefit from the "bundles"
framework.

Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-11-03 14:24:22 -06:00
Sebastiaan van Stijn
1be4b0e0cc
Don't include PowerShell completions in tgz
The PowerShell completion script was outdated,
and removed from this repository in
65fdbf0210.

A more up to date implementation can be found
here; https://github.com/samneirinck/posh-docker

Removing this script from the tgz

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2016-11-02 21:51:58 -07:00
Alexander Morozov
bf0fe87fe6 project: fix build rpm
* change workdir for accessing install-binaries.sh
* use other gopath for binaries to preserve sources
* add sources of proxy and grimes to rpc spec
* use dynamic proxy with -linkmode external in deb and rpm

Signed-off-by: Alexander Morozov <lk4d4@docker.com>
2016-10-28 14:34:17 -07:00
Dieter Reuter
8b8d27fb78 Include distro name into .deb filename
Right now we do have a problem to store the .debs for raspbian-jessie and
debian-jessie distro version for armhf arch. Both .debs have the same filename
so we have to include the distro version, too.

Signed-off-by: Dieter Reuter <dieter.reuter@me.com>
2016-10-28 20:59:49 +02:00
Tibor Vass
280eadf9bf Merge pull request #27735 from justincormack/completions-tgz
Add shell completions to tgz
2016-10-25 15:46:45 -07:00
Alexander Morozov
36f47aa252 Merge pull request #27519 from justincormack/proxy-build
Build docker-proxy from git checkout like other external binaries
2016-10-25 08:54:13 -07:00
Justin Cormack
1c6f5b5fff Add shell completions to tgz
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-10-25 13:43:55 +01:00
Justin Cormack
3996975b08 Build docker-proxy from git checkout like other external binaries
This means we can vendor libnetwork without special casing, and
it is built the same way as the other external binaries.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-10-25 13:13:22 +01:00
Kenfe-Mickael Laventure
7781a1bf0f Make experimental a runtime flag
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2016-10-24 15:20:01 -07:00
Daniel Nephin
4bfa2e634c Exclude generated types from linting.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-10-20 13:24:23 -07:00
Alexander Morozov
179479c6cd project: unify way of installing runc and containerd
Signed-off-by: Alexander Morozov <lk4d4@docker.com>
2016-10-20 08:50:02 -07:00
Michael Crosby
0b86ca9ad0 Merge pull request #26509 from LK4D4/commits_from_vendor
project: move go binaries installation to separate script
2016-10-05 13:15:30 -07:00
Kenfe-Mickael Laventure
61335bcb03 Remove amd64 assumption in release.sh, cross and tgz scripts
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2016-10-03 15:46:42 -07:00
Alexander Morozov
1b41125ad9 project: move go binaries installation to separate script
It should allow easier updates for containerd and runc

Signed-off-by: Alexander Morozov <lk4d4@docker.com>
2016-09-23 09:21:29 -07:00
Brian Goff
a7b0b6e2a9 Merge pull request #26770 from YuPengZTE/devEG
'eg.' should be 'e.g.'
2016-09-21 10:03:23 -04:00
YuPengZTE
0b86bca0b5 'eg.' should be 'e.g.'
Signed-off-by: YuPengZTE <yu.peng36@zte.com.cn>
2016-09-21 13:48:06 +08:00
Michael Crosby
ee3ac3aa66 Add init process for zombie fighting
This adds a small C binary for fighting zombies.  It is mounted under
`/dev/init` and is prepended to the args specified by the user.  You
enable it via a daemon flag, `dockerd --init`, as it is disable by
default for backwards compat.

You can also override the daemon option or specify this on a per
container basis with `docker run --init=true|false`.

You can test this by running a process like this as the pid 1 in a
container and see the extra zombie that appears in the container as it
is running.

```c

int main(int argc, char ** argv) {
	pid_t pid = fork();
	if (pid == 0) {
		pid = fork();
		if (pid == 0) {
			exit(0);
		}
		sleep(3);
		exit(0);
	}
	printf("got pid %d and exited\n", pid);
	sleep(20);
}
```

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-09-19 17:33:50 -07:00
Justin Cormack
da7a7f9b76 Merge pull request #26375 from cpuguy83/fix_apt_mirror_propagation
Propagate BUILD_APT_MIRROR and consume in buil-deb
2016-09-09 00:02:42 +01:00
Brian Goff
ff91276d1f Move some test fixtures to go
moves ensure-frozen-images to go
moves ensure-syscall-test to go
moves ensure-nnp-test to go
moves ensure-httpserver to go

Also makes some of the fixtures load only for the required tests.
This makes sure that fixtures that won't be needed for a test run such as
`make TESTFLAGS='-check.f Swarm' test-integration-cli` (for example)
aren't loaded... like the syscall tests.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2016-09-07 17:30:35 -04:00
Brian Goff
f672a963c9 Propagate BUILD_APT_MIRROR and consume in buil-deb
Passses down BUILD_APT_MIRROR to the docker env.
Ensures BUILD_APT_MIRROR is used when building debs, but only when the
consuming `Dockerfile` actually uses it, otherwise it will cause the
build to fail (e.g. on Ubuntu builds we aren't using APT_MIRROR).

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2016-09-07 10:57:00 -04:00
Brian Goff
4d0275c819 Verify integration tests before building bundles
Adds a new bundle `verify-integration-tests` which pre-compiles a test
binary for the integration tests.

This makes sure that the integration tests will actually compile before
doing other tasks which take much longer, such as building dockerd and
loading test fixtures.
When it comes time to actually run the tests, the pre-compiled binary
will be used so it doesn't have to compile the tests a 2nd time.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2016-09-06 20:27:28 -04:00
Michael Crosby
a9e513867c Output docker-py test results in xunit format
This adds a `results.xml` to the test-docker-py output folder.

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-08-31 09:35:49 -07:00
Justin Cormack
f243bfbc9d All supported Go versions have -cover now
Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-08-25 18:24:35 +01:00
Justin Cormack
eda90f6344 Remove gccgo support
Since Go 1.7, s390x uses upstream Go, so we have no reason to
support gccgo any more.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-08-24 11:09:35 +01:00
Vincent Demeester
5ec6e11e15
Disable coverage on test-integration-cli
Temporarly remove cover bundle from defaults.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-08-18 22:12:24 +02:00
Tibor Vass
e1c7ad871f release-rpm: fix bad destination paths for rpms
Signed-off-by: Tibor Vass <tibor@docker.com>
2016-08-12 16:51:12 -07:00
Tibor Vass
2ff2e9a730 Make release scripts architecture-agnostic and add ARM support
This patch allows to only release the packages that were built and are
present under the bundles/ directory instead of assuming packages exist
for all distros enumerated in the contrib/builder/ directory.

It also now adds support for armhf architecture for apt repositories.

Signed-off-by: Tibor Vass <tibor@docker.com>
2016-08-11 11:18:52 -07:00
Tibor Vass
fc40ed24d8 Merge pull request #25334 from crosbymichael/selinux-fedora
Add selinux policy per distro/version
2016-08-10 11:40:33 -07:00
Daniel Nephin
8a81986a58 Merge pull request #24948 from dnephin/support-iterative-integration-testing
Support running integration tests without restarting a daemon
2016-08-05 14:23:24 -04:00
Alexander Morozov
430a234a5b Merge pull request #24434 from AkihiroSuda/fixMakeInstall
make install: install runc and containerd
2016-08-05 09:34:21 -07:00
Daniel Nephin
1d945a9743 Support interactive integration testing.
Interactive integration testing is useful when you're developing new tests, or
making changes to cli code.

Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-08-05 12:07:28 -04:00
Michael Crosby
32b1f26c51 Add selinux policy per distro
This adds the ability to have different profiles for individual distros
and versions of the distro because they all ship with and depend on
different versions of policy packages.

The `selinux` dir contains the unmodified policy that is being used
today.  The `selinux-fedora` dir contains the new policy for fedora 24
with the changes for it to compile and work on the system.

The fedora policy is from commit
4a6ce94da5

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-08-04 14:29:22 -07:00
Sebastiaan van Stijn
153c946b79 deb: skip hidden files when generating indexes
We don't need hidden files to be listed
in the indexes, so skip them if hidden
files exist.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2016-08-03 12:58:14 +02:00
Justin Cormack
a846fa7ac9 Merge pull request #24835 from justincormack/armextlink
Do not default to external linking on arm, i386
2016-07-29 00:57:56 +01:00
Justin Cormack
93bbc76ee5 Add a test that the default seccomp profile allows execution of 32 bit binaries
While testing #24510 I noticed that 32 bit syscalls were incorrectly being
blocked and we did not have a test for this, so adding one.

This is only tested on amd64 as it is the only architecture that
reliably supports 32 bit code execution, others only do sometimes.

There is no 32 bit libc in the buildpack-deps so we cannot build
32 bit C code easily so use the simplest assembly program which
just calls the exit syscall.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-07-27 18:42:34 +01:00
Daniel Nephin
1ea9c19ffe Require manpages for packages.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-07-22 16:34:46 -04:00
Daniel Nephin
7004f219f5 Make manpages in a conatiner.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-07-22 16:32:51 -04:00
Justin Cormack
4d7038208f Do not default to external linking on arm, i386
Reverts https://github.com/docker/docker/pull/18197

This was a workaround before Go 1.6, not required any more.

cc @nalind @Govinda-Fichtner

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-07-20 11:21:26 +01:00
Arnaud Porterie
ac26ee15df Merge pull request #23825 from dnephin/auto-gen-man-page
Generate man pages from the Command description
2016-07-19 18:22:01 +00:00
Michael Crosby
04104c3a1e Remove docker.socket from rpm based systems
Fixes #23981

The selinux issue we are seeing in the report is related to the socket
file for docker and nothing else. By removing the socket docker starts
up correctly.

However, there is another motivation for removing socket activation from
docker's systemd files and that is because when you have daemons running
with --restart always whenever you have a host reboot those daemons
will not be started again because the docker daemon is not started by
systemd until a request comes into the docker API.

Leave it for deb based systems because everything is working correctly
for both socket activation and starting normally at boot.

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-07-19 09:31:43 -07:00
Daniel Nephin
47cca88c8c Dont run man generation as part of test-unit.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-07-19 12:00:35 -04:00
Daniel Nephin
00a8a40398 Add a script to generate man pages from cobra commands.
Use the generate.sh script instead of md2man directly.
Update Dockerfile for generating man pages.

Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-07-19 12:00:21 -04:00
Tibor Vass
9a690d3544 docker-proxy: Force external linking to add BuildID information to please rpm
Signed-off-by: Tibor Vass <tibor@docker.com>
2016-07-12 19:59:48 -07:00
Christy Perez
dab287819a Uncomment the TasksMax val later in the deb build
The original sed placement was creating packages with an
"unsupported" tag in the package name.

Fixes #24197

Signed-off-by: Christy Perez <christy@linux.vnet.ibm.com>
2016-07-12 16:30:31 -05:00
Brian Goff
3ab080a4bd Merge pull request #24425 from cpuguy83/add_make_run
Add target for `make run`
2016-07-08 21:10:19 -04:00
Brian Goff
cae890bc79 Add target for make run
`make run` allows you to fire up a daemon (in a container) just using
the existing built binaries. This allows for more rapid iteration
instead of dealing with firing up a shell just to start the daemon.

By default the daemon will listen on port 2375 on the default network
interface.

If a port forward is required to access the daemon, the user can set
`make DOCKER_PORT=2375 run` to get a port forward on a random port with
the daemon listening on port 2375, or `make DOCKER_PORT=2375:2375 run`
to get a daemon running with port 2375 forwarded to the daemon running
on 2375.

Note that the daemon is automatically configured to listen on whatever
port is set for the container side of the `DOCKER_PORT` port spec.

When running on docker4mac, the user must do the following:
```
$ make BINDDIR=. DOCKER_PORT=2375 run
```

This makes sure the binaries are loaded in the container and a port is
forwarded, since it is currently impossible to route traffic from the
mac directly to a container IP.

To get a fresh binary:
```
$ make BINDDIR=. DOCKER_PORT=2375 binary run
```

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2016-07-08 16:25:21 -04:00
Justin Cormack
47ace5cd98 Add missing docker-proxy into managed files in rpm spec
This was missed in #23312 even though the other parts of
this were fixed.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-07-08 14:15:57 +01:00
Akihiro Suda
e36a7fdefc make install: install docker-{runc,containerd,containerd-ctr,containerd-shim}
Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2016-07-08 01:58:38 +00:00
Justin Cormack
0682468431 Make the docker proxy a standalone binary not a re-exec
This reduces memory usage with a lot of docker proxy processes.
On Docker for Mac we are currently carrying a patch to replace
the binary as we modify it to forward ports to the Mac rather
than the Linux VM, this allows us to simply replace this binary
in our packaging with one that has a compatible interface. This
patch does not provide an easy way to substitute a binary as
the interface is complex and there are few use cases, but where
needed this can be done.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
2016-07-07 12:53:39 +01:00
Otto Kekäläinen
644a7426cc Fix spelling in comments, strings and documentation
Signed-off-by: Otto Kekäläinen <otto@seravo.fi>
2016-07-03 20:58:11 +03:00
Antonio Murdaca
0c07e55e4c fix F24 rpm build
error: line 89: Invalid version (epoch must be unsigned integer):
%{epoch}:1.12.0-0.3.rc3.fc24: Requires(pre): docker-engine-selinux >=
%%{epoch}:1.12.0-0.3.rc3.fc24

Signed-off-by: Antonio Murdaca <runcom@redhat.com>
2016-07-01 23:29:48 +02:00
Sebastiaan van Stijn
295a6a37dc Merge pull request #24100 from hypriot/revert-tasksmax-workaround-21628
Revert tasksmax workaround to avoid unsupported bins
2016-06-30 13:20:33 -07:00
Stefan Scherer
6509cc4e63
Revert tasksmax workaround to avoid unsupported bins
Signed-off-by: Stefan Scherer <scherer_stefan@icloud.com>
2016-06-29 08:10:10 +02:00
Kenfe-Mickael Laventure
fd1129d31a Prevent CI from getting stuck if shims are left alive
This will kill any left over containerd-shims to avoid the integration
script to stay stuck while it waits on them.

It will then causes CI to fail (even if all the tests succeeded).

Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2016-06-28 10:05:05 -07:00
Tibor Vass
bf08aae852 Merge pull request #23919 from Microsoft/jjh/prefix
Windows: Ensure frozen cope with prefix
2016-06-23 19:46:55 -07:00
John Howard
b820ead426 Windows: Ensure frozen cope with prefix
Signed-off-by: John Howard <jhoward@microsoft.com>
2016-06-23 16:39:16 -07:00
Kenfe-Mickael Laventure
63b0713014 Fix the value of the Components value in apt {In,}Release files
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2016-06-21 12:01:41 -07:00
Anusha Ragunathan
379ec38222 Dont leak DOCKER_INCREMENTAL_BINARY flag into go test.
Signed-off-by: Anusha Ragunathan <anusha@docker.com>
2016-06-14 13:02:54 -07:00
Tibor Vass
4940985340 Merge pull request #23224 from mlaventure/dont-overwrite-existing-deb
Do not overwrite already published deb files when releasing
2016-06-13 22:16:53 -07:00
Sebastiaan van Stijn
94ac03cdf5
release-deb: create "dists" directory if missing
The script failed if an empty volume is used
to generate the repo. This adds the directory
if missing.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2016-06-09 15:22:49 +02:00
Sebastiaan van Stijn
70a03951a0
fix RPM spec for man8
installation for man-8 was added in 1514b499f0
(pull-request 23236), but had a typo in a path,
causing generation of the RPM's to fail.

This fixes the path

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2016-06-08 22:21:21 +02:00
Vincent Demeester
8e63de1f63 Merge pull request #23236 from runcom/fix-spec
Fix spec and man
2016-06-07 12:54:42 +02:00
Antonio Murdaca
1514b499f0 docker-engine.spec: install man8
Signed-off-by: Antonio Murdaca <runcom@redhat.com>
2016-06-03 15:27:24 +02:00
Brian Goff
9bb54f89ad
Add make install task
This installs docker and dockerd to `$DOCKER_MAKE_INSTALL_PREFIX/bin`, which
defaults to `/usr/local/bin`

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2016-06-03 12:08:33 +02:00
Kenfe-Mickael Laventure
acd67e25a9 Do not overwrite already published deb files when releasing
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2016-06-02 21:01:57 -07:00
Kenfe-Mickael Laventure
afc2579d1a Fix release-deb script
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2016-06-02 08:53:33 -07:00
John Starks
fa82c0aa10 Windows: work around Go 1.6.2/Nano Server TP5 issue
This works around golang/go#15286 by explicitly loading shell32.dll at
load time, ensuring that syscall can load it dynamically during process
startup.

Signed-off-by: John Starks <jostarks@microsoft.com>
Signed-off-by: Antonio Murdaca <runcom@redhat.com>
2016-05-25 11:59:28 +02:00
Arnaud Porterie
dc430944b9 Merge pull request #22262 from kencochrane/fix_release_deb
Create the correct directory structure for apt-ftparchive
2016-05-11 12:38:12 -10:00
Tibor Vass
e421668b1b Merge pull request #21708 from tianon/InRelease
Also generate "InRelease" files for newer APT clients
2016-05-11 13:21:15 -04:00
Alexander Morozov
ebc5a61593 Merge pull request #22076 from thtanaka/rpmbuild-error
DWZ problem with multiple golang binary caused OL7 RPM build to fail
2016-05-06 11:22:27 -07:00
Alexander Morozov
4531c01509 Merge pull request #22236 from kencochrane/remove_git_from_rpm
Exclude .git directories from the source RPMS and debian packages
2016-05-06 11:16:12 -07:00
Vincent Demeester
af916d316a Merge pull request #22519 from mlaventure/add-dockerd-to-rpm-packaged-files
Add dockerd to the list of files included in generated rpms
2016-05-05 13:16:06 +02:00
Kenfe-Mickael Laventure
6118952e44 Add dockerd to the list of files included in generated rpms
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2016-05-04 20:45:22 -07:00
Kenfe-Mickael Laventure
20e1b9593e Update build-deb to make correct use of DOCKER_BUILD_PKGS
An environment variable cannot directly be used as a bash array, this
patch loops through all the IFS separated value (which default to
space) instead.

Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2016-05-02 11:22:01 -07:00
Daniel Nephin
8983d42988 Raise a more relevant error when dockerd is not available on the platform.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-05-02 11:59:25 -04:00
John Starks
57aef3b490 Windows: Support running dockerd as a service
This adds support for Windows dockerd to run as a Windows service, managed
by the service control manager. The log is written to the Windows event
log (and can be viewed in the event viewer or in PowerShell). If there is
a Go panic, the stack is written to a file panic.log in the Docker root.

Signed-off-by: John Starks <jostarks@microsoft.com>
2016-04-26 14:04:47 -07:00
John Howard
0c7eab3157 Make dockerd debuggable
Signed-off-by: John Howard <jhoward@microsoft.com>
2016-04-26 09:35:22 -07:00
Vincent Demeester
dc7664d62e Merge pull request #22308 from tianon/dockerd-consistency
Tweak hack/make/*-{client,daemon} to be consistent
2016-04-26 15:32:06 +02:00
Ken Cochrane
f1ad6f127b Exclude .git directories from the source RPMS
Ignore .git directory when creating debian sources

Added missing DOCKER_GITCOMMIT env variable to build-deb

Signed-off-by: Ken Cochrane <kencochrane@gmail.com>
2016-04-26 09:26:32 -04:00
John Howard
78895c92c2 Merge pull request #22275 from Microsoft/jstarks/no_rsrc
Windows: Add file version information
2016-04-25 20:53:19 -07:00
Tianon Gravi
626d25a7d9 Tweak hack/make/*-{client,daemon} to be consistent
Signed-off-by: Andrew "Tianon" Page <admwiggin@gmail.com>
2016-04-25 11:40:36 -07:00
Tibor Vass
e974eadd94 Merge pull request #22303 from kencochrane/fix_integration_daemon_start
Fixing the PATH in .integration-daemon-start to find dyn docker binary
2016-04-25 14:39:45 -04:00
Ken Cochrane
5ee737c70c
Fixing the PATH in .integration-daemon-start to find dynamic docker binary
Signed-off-by: Ken Cochrane <kencochrane@gmail.com>
2016-04-25 11:18:34 -04:00
Ken Cochrane
f9e03d52e9
Change name from docker-client to docker in dynbinary-client
Signed-off-by: Ken Cochrane <kencochrane@gmail.com>
2016-04-25 10:44:37 -04:00
John Starks
4677f8036e Windows: Add file version information
This change adds file version information to docker.exe and dockerd.exe by
adding a Windows version resource with the windres tool.

This change adds a dependency to binutils-mingw-w64 on Linux, but removes
a dependency on rsrc. Most Windows build environments should already have
windres if they have gcc (which is necessary to build dockerd).

Signed-off-by: John Starks <jostarks@microsoft.com>
2016-04-24 10:55:51 -07:00
Tibor Vass
44ff216985 Add dockerd daemon binary to tgz and zip archives
Signed-off-by: Tibor Vass <tibor@docker.com>
2016-04-23 18:26:05 -04:00
Daniel Nephin
c0acfccc7b Cleanup from CR.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-04-23 15:05:15 -04:00
Ken Cochrane
f68b61052b Create the correct directory structure for apt-ftparchive. fixes #22238
Signed-off-by: Ken Cochrane <kencochrane@gmail.com>
2016-04-22 16:28:49 -04:00
Daniel Nephin
9e7651db4d Build two binaries client and daemon.
Add a proxy to support 'docker daemon'
Fix configFile option, and remove a test that is no longer relevant.
Remove daemon build tag.
Remove DOCKER_CLIENTONLY from build scripts.

Signed-off-by: Daniel Nephin <dnephin@docker.com>

Change docker-daemon to dockerd.

Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-04-22 11:26:01 -04:00
Alexander Morozov
1cd7dd8917 Merge pull request #22082 from tiborvass/revert-go-security-fix-for-windows
Workaround Windows bug discovered with Go security fix
2016-04-18 12:44:13 -07:00
Tibor Vass
cbb6c6e959
runc install path changed from /usr/local/bin to /usr/local/sbin
Signed-off-by: Tibor Vass <tibor@docker.com>
(cherry picked from commit 3d85e51ef4)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2016-04-17 01:36:53 +02:00
Tibor Vass
3b3e58b639 Workaround Windows bug discovered with Go security fix
For context: https://github.com/golang/go/issues/15286

This commit downloads go1.5.3 in addition to go1.5.4 in order to
workaround the issue.

It is not expected to do a Docker release without a proper fix, however
this should help unblock Docker development on Windows TP5.

Signed-off-by: Tibor Vass <tibor@docker.com>
2016-04-15 21:00:45 -04:00
Thomas Tanaka
c892a8d620 DWZ problem with multiple golang binary caused OL7 RPM build to fail
Refering to this: https://fedoraproject.org/wiki/PackagingDrafts/Go
this could be due to the following bug:
https://bugzilla.redhat.com/show_bug.cgi?id=995136#c12

This fixes #22051

Signed-off-by: Thomas Tanaka <thomas.tanaka@oracle.com>
2016-04-15 09:48:53 -07:00
Tibor Vass
e82830ecde Merge pull request #21628 from clnperez/systemd-tasksmax-workaround
Build-deb hack for systemd tasksmax
2016-04-07 12:30:45 -04:00
Christy Perez
2b849e0263 Build-deb hack for systemd tasksmax
Since we can't use the TasksMax value in the docker.service
file by default, we can uncomment it at buildtime.

See docker/docker/pull/21491 for some background.

Signed-off-by: Christy Perez <christy@linux.vnet.ibm.com>
2016-04-07 11:08:30 -05:00
Tianon Gravi
b82fc524a7 Also generate "InRelease" files for newer APT clients
Signed-off-by: Andrew "Tianon" Page <admwiggin@gmail.com>
2016-03-31 17:39:50 -07:00
Ken Cochrane
fda99a7e16 Change the windows .tgz to a .zip file
Signed-off-by: Ken Cochrane <kencochrane@gmail.com>
2016-03-31 15:56:13 -04:00
David Calavera
8c06ba3665 Merge pull request #21625 from kencochrane/fix_tgz_directory
Change the directory inside of tgz files.
2016-03-30 13:11:55 -07:00
Tibor Vass
d800be743d Merge pull request #21591 from riyazdf/hardware-signing-non-experimental
move hardware signing out of experimental, remove yubico-piv-tool deps
2016-03-30 00:09:22 -04:00
Ken Cochrane
7df5b32834 Change the directory inside of tgz files.
Currently the directory inside of the tgz files is /usr/local/bin
and this is causing some confusion, and problems with people who already
have stuff in those directories. This commit changes the directory
to /docker to help remove the confusion.

Signed-off-by: Ken Cochrane <kencochrane@gmail.com>
2016-03-29 14:39:28 -04:00
Harald Albers
a7e9bf6cb7 Use https for git clone in build
Signed-off-by: Harald Albers <github@albersweb.de>
2016-03-29 09:35:42 +02:00
Riyaz Faizullabhoy
8d18e6b30f move hardware signing out of experimental, remove dependencies to yubico-piv-tool
Signed-off-by: Riyaz Faizullabhoy <riyaz.faizullabhoy@docker.com>
2016-03-28 14:33:06 -07:00
Tonis Tiigi
477fe4846a Add support for repeating integration tests
`TEST_REPEAT=n` runs the test suite again n times or
until the first failure without doing building and
daemon setup. Useful for debugging flaky tests.

Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2016-03-26 23:05:55 -07:00
Tibor Vass
996138bf8e Fix release scripts
Add some missing dependencies in the Dockerfile:
- apt-utils for apt-ftparchive.conf
- bsdmainutils for our use of the column command in
  hack/make/generate-index-listing

We also ensure that the docker daemon is started before calling
release-deb or release-rpm, since .detect-daemon-osarch, which is sourced
in each of them, requires the daemon to be running.

This commit also gets completely rid of s3cmd and fixes references to
AWS_* environment variables (changing from AWS_ACCESS_KEY to
AWS_ACCESS_KEY_ID and AWS_SECRET_KEY to AWS_SECRET_ACCESS_KEY) in order
to please awscli. Also AWS_DEFAULT_REGION is now important to specify,
the default has been set to the region used by get.docker.com and
test.docker.com.

Signed-off-by: Tibor Vass <tibor@docker.com>
2016-03-25 11:55:26 -04:00
Sebastiaan van Stijn
36458b5787 Merge pull request #21501 from tonistiigi/fix-deb-init-symlinks
Fix symlink copying for deb init scripts
2016-03-25 01:08:09 -07:00
Tonis Tiigi
61277c395b Fix symlink copying for deb init scripts
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2016-03-24 23:15:17 -07:00
cyli
dd33d18045 Revert "Merge pull request #21003 from riyazdf/hardware-signing-ga"
This reverts commit e6d3a9849c, reversing
changes made to d3afe34b51.

Signed-off-by: cyli <cyli@twistedmatrix.com>
2016-03-24 21:12:52 -07:00
Ken Cochrane
bb66d7144f Packaging changes required for new containerd binaries
These are the changes required due to the new binaries that containerd introduced.
The rpm, and deb packages now include 5 binaries.

docker, containerd, containerd-shim, ctr, and runc

The tar files also include all 5 binaries.

Signed-off-by: Ken Cochrane <KenCochrane@gmail.com>
2016-03-24 16:25:33 -04:00
Michael Crosby
5ff66748da Export GOOS and GOARCH in subprocess for tgz
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-03-22 15:43:06 -07:00