Commit graph

271 commits

Author SHA1 Message Date
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
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
Yong Tang
975675e924 Merge pull request #34682 from dnephin/fail-build-on-integration-suite
Fix integration suite and propagate failures
2017-09-05 12:40:00 -07:00
Eli Uriegas
7664302579 Allows VERSION to be overwritten by env variable
VERSION was hardcoded to be used as the `VERSION` file from the root
directory, this makes it so that you have the option to overwrite this.

Signed-off-by: Eli Uriegas <eli.uriegas@docker.com>
2017-09-01 15:47:15 -07: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
cef786f787 Pin docker-cli version to the 17.06-ce release version
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-08-22 14:29:16 -04:00
Sebastiaan van Stijn
c500bb562f
Fix make test-unit printing deprecation warning
Commit 1fb615599a moved the unit tests out
of `hack/make.sh`, however the Makefile still used the old path, resulting
in a warning being printed when the unit tests were run:

    ---> Making bundle: test-unit (in bundles/17.06.0-dev/test-unit)
    DEPRECATED: use hack/test/unit instead of hack/make.sh test-unit

This patch updates the Makefile to use the new command.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2017-08-16 16:02:04 +02: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
Aleksa Sarai
c81255c9c0
make: add dynbinary target
Recently, it's become necessary to build dynbinaries on certain
distributions, so make it easier for users to build dynbinaries. It
looks like this was just an oversight when we added dynbinary builds.

Signed-off-by: Aleksa Sarai <asarai@suse.de>
2017-07-01 04:54:57 +10:00
Harald Albers
0e2c424a7f Add bash completion to the development container
Adds an environment variable `DOCKER_BASH_COMPLETION_PATH` that allows to
include a bash completion script into the development container.

This is needid for development of bash completion.

Signed-off-by: Harald Albers <github@albersweb.de>
2017-06-23 18:11:55 +02: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
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
Akihiro Suda
63d4000e97 integration-cli-on-swarm/README.md: add a note about Docker->Moby
Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2017-05-15 14:37:05 +00: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
Tianon Gravi
9c9cc5ec43 Only set DOCKER_CROSSPLATFORMS from env if it's set
This allows for the default to come from the image/`Dockerfile` rather
than being unconditionally overwritten by the environment.

Signed-off-by: Andrew "Tianon" Page <admwiggin@gmail.com>
2017-05-04 07:13:09 -07:00
Tibor Vass
36bd288162 docs: fix Makefile for yaml docs generation
Signed-off-by: Tibor Vass <tibor@docker.com>
2017-03-29 15:07:16 -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
Sebastiaan van Stijn
01ed606439 Merge pull request #29775 from AkihiroSuda/integration-cli-on-swarm
[EXPERIMENTAL] Integration Test on Swarm (completes in about 5 minutes, with 10 Swarm nodes)
2017-03-01 21:16:05 +01:00
Victor Vieux
8aa1158164 pass DOCKER_CROSSPLATFORMS to the container in the Makefile
Signed-off-by: Victor Vieux <victorvieux@gmail.com>
2017-02-28 10:14:19 -08: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
Vincent Demeester
617be0ef2b
Bind mount .git 👼
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-02-03 21:00:32 +01:00
Vincent Demeester
fae6ca2bb4
Do not required .git in the build context
- export DOCKER_GITCOMMIT in the Makefile
- prioritize DOCKER_GITCOMMIT against the `git` command in
  `./hack/make.sh`
- Also add `integration-cli/bundles` to gitignore (it's generated when
  using integration-cli shell)

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2017-01-24 14:42:57 +01:00
Vincent Demeester
4bda9bd6e9
Add the possibility to set the dev container name
By using `make CONTAINER_NAME=docker-dev shell` you're able to name
the docker-dev container to what you want. The idea behind it is by
knowing the name of your dev container you can automate easily some
thing using `docker exec` later.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-12-16 10:24:16 +01:00
Ben Firshman
27ca33e965
Add make command for previewing API docs
Much easier than the previous method of copying over to the docs
repository and generating the docs.

And, as @cpuguy83 pointed out, that actually didn't work
because the PR that adds Swagger docs isn't merged yet. Oopsy.

Signed-off-by: Ben Firshman <ben@firshman.co.uk>
2016-12-14 12:27:32 +00:00
Brian Goff
c9623d1b76 Use named volumes for docker pkg cache
Changes the default when incremental build is enabled to use named
volumes instead of bindmounts.
The reason for this is, on Mac/Windows the bind mounts will go over the
shared fs, which is incredibly slow and itself uses lots of CPU.

Makes an incremental build on OSX go from ~40s to 10s.

To get the old behavior, can set `PKGCACHE_DIR=.go-pkg-cache`

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2016-12-05 20:42:08 -05:00
Brian Goff
fddb5a7f2a Merge pull request #29069 from vdemeester/29031-manpages-buildarg
Use DOCKER_BUILD_ARGS on manpages make target
2016-12-02 12:30:36 -05:00
Vincent Demeester
58505ffdee
Use DOCKER_BUILD_ARGS on manpages make target
This make it more consistent with the other image builds and allow to
build manpages behind a proxy for example.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-12-02 14:20:30 +01:00
Sebastiaan van Stijn
ba20c3e65e
pin go-swagger 0.7.4
This pins the version of go-swagger used, because
the results generated by different versions
can differ quite a bit (tested between 0.7.2 - 0.7.4),
and can cause CI / validation to fail.

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2016-12-02 01:36:46 +01:00
Vincent Demeester
2c342cff79
Build docker incrementally by default
This speeds up docker build time drastically. It still possible to
disable this by setting `DOCKER_INCREMENTAL_BUILD` to `0` (and this is
what should be done on the CI).

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-11-15 16:23:48 +01: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
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
Daniel Nephin
252963bd3f Fix swagger-gen.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-11-02 10:48:34 -04:00
Daniel Nephin
02e1ffd76c Add whitespace and create a script to run generation
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-10-20 13:24:23 -07:00
Daniel Nephin
b06c352783 Generate api/types:Image from the swagger spec
and rename it to a more appropriate name ImageSummary.

Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-10-20 13:24:23 -07:00
Daniel Nephin
f06d8d6db9 Generate api/types:Port from swagger spec.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-10-20 13:24:23 -07:00
Daniel Nephin
0243936d92 Add swagger.yaml
Generate Volume type from the swagger.yaml
Add makefile target for generating the models

Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-10-20 13:24:23 -07:00
Misty Stanley-Jones
3aeaa9f8fd Add a link to the new build instructions
Signed-off-by: Misty Stanley-Jones <misty@docker.com>
2016-10-14 14:05:48 -07:00
Brian Goff
a95ad53ca4 Fix issue with bundles dir volume
The bundles dir used to be automatically made a volume if BINDDIR was
not set.

The `PKGCACHE_*` stuff was added recently which gets added to
`DOCKER_MOUNT`. This breaks the case where someone wants to use the
package cache (DOCKER_INCREMENTAL_BINARY is enabled) but has not
specified a bind dir but needs the bundles dir made a volume.

Moves the package cache handling to after the bundles dir is made a
volume.

Before this patch, if you have `DOCKER_GRAPHDRIVER` set to anything
other than vfs, the tests in the daemon suite (and swarm suite, and
registry suite) will fail to run since they cannot startup a daemon
(except for speicifc cases where <driver> over <driver> is possible,
like devmapper).

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2016-09-22 16:49:28 -04: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
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
Vincent Demeester
5c2064f890 Merge pull request #26123 from cpuguy83/revert_makefile_build_args
Fix passing custom APT_MIRROR on building Docker
2016-08-30 17:30:48 +02:00
Brian Goff
39c87c79c8 Pass through build APT_MIRROR as separate var
DOCKER_BUILD_APT_MIRROR

This allows passthrough of other options like HTTP_PROXY from
DOCKER_BUILD_ARGS to work on all builds (for example,
ensure-syscall-test) when APT_MIRROR is set.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2016-08-30 09:09:31 -04:00
Christopher Jones
c2775c0b67
Alphabetize makefile targets
Sorts the makefile targets alphabetically

Signed-off-by: Christopher Jones <tophj@linux.vnet.ibm.com>
2016-08-29 14:06:45 -04:00
Alexander Morozov
8d99dfbc69 Merge pull request #25978 from justincormack/no-no-gccgo
Remove gccgo support
2016-08-25 12:12:29 -07:00
Vincent Demeester
a36016cd3a Merge pull request #25481 from keloyang/build-args-docker-env
Add DOCKER_BUILD_ARGS to DOCKER_ENVS in Makefile
2016-08-25 18:56:08 +02: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
yuexiao-wang
bf3d1d1e5a keep the same between rules and PHONY
Signed-off-by: yuexiao-wang <wang.yuexiao@zte.com.cn>
2016-08-19 09:08:39 +08:00
Shukui Yang
4aa9b9c5b3 Add DOCKER_BUILD_ARGS to DOCKER_ENVS in Makefile
Signed-off-by: Shukui Yang <yangshukui@huawei.com>
2016-08-10 11:09:07 +08:00
Dieter Reuter
12c10239bb Cleanup manpage container in build process
When running a `make manpages` the image `docker-manpage-dev` will be build and started to create
the man pages. But the container will not be deleted afterwards. So I propose to start it with
`docker run --rm ...`, otherwise we'll collect some trash.
```
$ docker ps -a
CONTAINER ID        IMAGE                COMMAND                  CREATED             STATUS                      PORTS               NAMES
e3d9f721d862        docker-manpage-dev   "man/generate.sh"        19 minutes ago      Exited (0) 16 minutes ago                       berserk_jang
5738a23fb682        docker-manpage-dev   "man/generate.sh"        9 hours ago         Exited (0) 9 hours ago                          boring_bartik
15490b5e63f7        docker-manpage-dev   "man/generate.sh"        10 hours ago        Exited (0) 10 hours ago                         lonely_joliot
```

Signed-off-by: Dieter Reuter <dieter.reuter@me.com>
2016-08-06 10:20:16 +02:00
Daniel Nephin
fcde27e6db Fix the man/Dockerfile for arm
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-08-02 12:56:05 -04:00
Akihiro Suda
389d5cde7b mount .go-pkg-cache for DOCKER_INCREMENTAL_BINARY
The cache was not used when we run `make binary` from the host.

Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
2016-07-20 08:20:38 +00: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
Sebastiaan van Stijn
13fcbe3d53 Merge pull request #24280 from miaoyq/24261-fix-make-docker-py-err
Fix 'make test-docker-py' error
2016-07-16 02:07:23 +02:00
Yanqiang Miao
c125bbd5e8 Fix 'make test-docker-py' error
Signed-off-by: Yanqiang Miao <miao.yanqiang@zte.com.cn>
2016-07-09 11:52:33 +08: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
Yanqiang Miao
bbfda85261 Fix 'make docker-py' error
Signed-off-by: Yanqiang Miao <miao.yanqiang@zte.com.cn>
2016-07-07 10:00:22 +08:00
Yanqiang Miao
38550d27f8 Modify comment of Makefile
Signed-off-by: Yanqiang Miao <miao.yanqiang@zte.com.cn>
2016-07-02 11:23:03 +08: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
Antonio Murdaca
a4192471cd Makefile: clean git branch before building
Signed-off-by: Antonio Murdaca <runcom@redhat.com>
2016-05-08 11:52:38 +02: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
Thomas Leonard
1aa9369499 Build: pass through DOCKER_GITCOMMIT
This is useful if you want to build Docker when the .git directory is
not present.

Signed-off-by: Thomas Leonard <thomas.leonard@docker.com>
2016-04-14 12:16:16 +01:00
Vincent Demeester
3785844c5b
Fixing a typo in Makefile
A typo is present in the new awesome `make help`, fixing that.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-04-07 16:10:09 +02:00
Victor Vieux
b967e381aa remove docker info warnings (if any) from Makefile
Signed-off-by: Victor Vieux <vieux@docker.com>
2016-04-06 16:57:33 -07:00
Victor Vieux
c72b51b09c add make help
Signed-off-by: Victor Vieux <vieux@docker.com>
2016-04-06 16:57:28 -07:00
Tibor Vass
76aefc18f9 Merge pull request #21691 from tonistiigi/fix-gccgo-make
Fix building gccgo from makefile
2016-04-06 17:31:59 -04: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
Tonis Tiigi
8b408fd66b Fix building gccgo from makefile
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2016-03-31 10:35:56 -07:00
Jess Frazelle
54aa3a3c21
set the default storage driver as the users current default
Signed-off-by: Jess Frazelle <jess@mesosphere.com>
2016-03-24 09:41:19 -07:00
Phil Estes
133b3cccb5 Merge pull request #21108 from tianon/detect-daemon-osarch
Adjust "hack/make/.detect-daemon-osarch" to be the source of truth for "platform detection"
2016-03-15 17:00:55 -07:00
Stefan Scherer
53ba08c874 Improve checking dummy kernel module
Signed-off-by: Stefan Scherer <scherer_stefan@icloud.com>
2016-03-14 18:25:24 +01:00
Tianon Gravi
a667cd88c3 Adjust "hack/make/.detect-daemon-osarch" to be the source of truth for "platform detection"
Instead of being split between three files, let's let `hack/make/.detect-daemon-osarch` be our single source of truth for multiarch detection/vars.  Not only does it make it slightly easier to make sure we change everything properly when these bits have to change, but it also makes it so that all bits of `hack/make.sh` (especially `hack/make/.ensure-frozen-images`) work properly outside the context of the `Makefile` on all platforms.

Signed-off-by: Andrew "Tianon" Page <admwiggin@gmail.com>
2016-03-10 20:07:21 -08:00
msabansal
e8026d8a98 Windows libnetwork integration
Signed-off-by: msabansal <sabansal@microsoft.com>
2016-03-09 20:33:21 -08:00
Brian Goff
0036e0f8f2 Use anonymous volume for bundles dir
This allows the test suite to be able to run without worrying about
the underlying fs used by the container running the daemon (e.g.
aufs-on-aufs), so long as the host running the container is running a
supported fs.
The volume will be cleaned up when the container is removed due to
`--rm`.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2016-03-01 12:29:33 -05:00
Arnaud Porterie
9511856e16 Merge pull request #20202 from anusha-ragunathan/arm-dummy-interface
Add "dummy" network module for arm images.
2016-02-11 19:02:25 -08:00
Anusha Ragunathan
f3b2233d12 Add "dummy" network module for arm images.
A few libnetwork integration tests require that the kernel be configured
with the "dummy" network interface and has the module loaded. However,
the dummy module is not available by default on arm images. This ensures
that it is built and loaded.

Signed-off-by: Anusha Ragunathan <anusha@docker.com>
2016-02-11 10:53:51 -08:00
Jessica Frazelle
9bc771af9d
add validation for generating default secccomp profile
Signed-off-by: Jessica Frazelle <acidburn@docker.com>
2016-02-08 13:04:52 -08:00
Ross Boucher
d23778168d Pass KEEPBUNDLE in Docker build environment.
This is an alternate solution to the problem described in #19969.

Signed-off-by: Ross Boucher <rboucher@gmail.com>
2016-02-04 09:42:41 -05:00
Brian Goff
9672afa339 Add DOCKER_BUILD_GOGC to tweak GOGC for compile
Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2016-01-27 13:35:26 -05:00
Jess Frazelle
b5420be597 Merge pull request #19013 from hqhq/add_support_docker_aarch64
Add support for build and test docker on arm64
2016-01-26 10:33:48 -08:00
Jess Frazelle
5537a92e45 Merge pull request #19377 from jfrazelle/cleanup-build-rpm-deb
Cleanup build rpm deb
2016-01-20 23:58:33 -08:00
Jessica Frazelle
0bff2515f7
add a way to only build requested pkgs
Signed-off-by: Jessica Frazelle <acidburn@docker.com>
2016-01-19 17:47:27 -08:00
Christopher Jones
06f48a26f8 Add gccgo target to Makefile
Adds a gccgo target to the Makefile

Signed-off-by: Christopher Jones <tophj@linux.vnet.ibm.com>
2016-01-18 10:40:45 -05:00
Jess Frazelle
4e9ee2a239 Merge pull request #19373 from Microsoft/jjh/makefile
Windows: Update makefile
2016-01-15 15:42:47 -08:00
John Howard
08fe0a18f8 Windows: Update makefile
Signed-off-by: John Howard <jhoward@microsoft.com>
2016-01-15 11:45:13 -08:00
Qiang Huang
66d24c2b44 Add support for build and test docker on arm64
Signed-off-by: Qiang Huang <h.huangqiang@huawei.com>
2016-01-15 14:25:03 +00:00
Qiang Huang
d104ddb564 Add DOCKER_BUILD_ARGS support for make build
We always need proxy for build, so we always use "docker build"
command instead of "make build", but now for some reasons, we need
macro defined in Makefile, so it would be helpful if we can use
"make build" without touching Dockerfile.

Signed-off-by: Qiang Huang <h.huangqiang@huawei.com>
2016-01-12 15:15:17 +08:00
Tibor Vass
2d5ca742eb Merge pull request #19076 from tianon/multiarch
Refactor multi-arch support (especially for new mostly-official multi-arch official images)
2016-01-11 13:25:55 -05:00
Vincent Demeester
4c22c566e2 Add a validate-vendor script
Makes sure that if ./hack/vendor.sh has been updated, it has been used
to update the vendor folder.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
2016-01-07 19:57:50 +01:00
Tianon Gravi
91201678c6 Refactor multi-arch support (especially for new mostly-official multi-arch official images)
See 99433d2ca2/README.md (architectures-other-than-amd64) for some context of where these images come from.

Signed-off-by: Andrew "Tianon" Page <admwiggin@gmail.com>
2016-01-06 14:34:29 -08:00
Tianon Gravi
dc38061bee Rename Dockerfile.arm to Dockerfile.armhf to more clearly reflect the specific subversion of ARM it targets
Also, fix up some minor whitespace consistency issues, remove a little cruft, and update GOARM for armhf to 7 so that we're explicit.

Signed-off-by: Andrew "Tianon" Page <admwiggin@gmail.com>
2015-12-30 01:30:56 -08:00
Stefan Scherer
94fb7458ea Move DOCKER_ENGINE_ envs to integration-daemon-setup to allow build w/o Makefile
Signed-off-by: Stefan Scherer <scherer_stefan@icloud.com>
2015-12-17 18:55:45 +01:00
Dieter Reuter
2bc57578c6 Sort make targets and DOCKER_ENV vars in alphabetical order
Signed-off-by: Dieter Reuter <dieter.reuter@me.com>
2015-11-21 17:50:37 +01:00
Jess Frazelle
1c8d8b3012 Merge pull request #17803 from hypriot/17802-add-initial-support-for-docker-on-arm
Add initial support for Docker on ARM
2015-11-17 16:52:54 +01:00
Govinda Fichtner
b74fd0628a Add initial support for Docker on ARM
Signed-off-by: Govinda Fichtner <govinda.fichtner@googlemail.com>
2015-11-15 13:15:31 +01:00
Dan Walsh
0d47b74a7f Since default is dynbinary we should test with dynbinary
Signed-off-by: Dan Walsh <dwalsh@redhat.com>
2015-11-14 06:01:55 -05:00
Lei Jitang
3c4dab51d3 Remove DOCKER_EXECDRIVER env
Since --exec-driver flag has been removed, we don't need environment
DOCKER_EXECDRIVER in integration-cli and Makefile any more.

Signed-off-by: Lei Jitang <leijiang@huawei.com>
2015-11-09 09:17:32 +08:00
Jonathan Lebon
4d41fe0b80 Makefile: don't allocate pseudo-tty if not interactive
In cases where we are running non-interactively (e.g. on Jenkins), we
shouldn't try to allocate a TTY, which would fail. This patch makes the
flag `-t` be dependent on whether the shell session is interactive or
not.

When it is interactive, it's important to have `-t` so that the user can
pass signals through to the process.

We also remove the DOCKER_RUN_DOCS and the GITCOMMIT variables, which
are no longer in use in this Makefile (seems like the related targets
that used it were migrated to docs/Makefile).

Signed-off-by: Jonathan Lebon <jlebon@redhat.com>
2015-10-21 15:10:55 -04:00