Commit graph

482 commits

Author SHA1 Message Date
Aaron Lehmann
6fed46aeb9 Pass authentication credentials through to build
In Docker 1.10 and earlier, "docker build" can do a build FROM a private
repository that hasn't yet been pulled. This doesn't work on master. I
bisected this to https://github.com/docker/docker/pull/19414.
AuthConfigs is deserialized from the HTTP request, but not included in
the builder options.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2016-02-12 10:50:16 -08:00
David Calavera
9be87be582 Merge pull request #20170 from Microsoft/10662-TestBuildCI5
Fifth set of TestBuild CI enables for Windows
2016-02-10 16:02:26 -08:00
Darren Stahl
0adcce10a1 Fifth set of TestBuild CI enables for Windows
Signed-off-by: Darren Stahl <darst@microsoft.com>
2016-02-10 12:37:58 -08:00
Darren Stahl
4603a7259e Third set of TestBuild* CI enabling for Windows
Signed-off-by: Darren Stahl <darst@microsoft.com>
2016-02-09 15:19:38 -08:00
David Calavera
d6870238e3 Merge pull request #19985 from Microsoft/CombineSetupWorkingDir
Combine SetupWorkingDirectory for Linux and Windows
2016-02-09 15:18:49 -08:00
Darren Stahl
eed648ac5a Fourth set of enabling Builder CI tests for Windows
Signed-off-by: Darren Stahl <darst@microsoft.com>
2016-02-05 17:46:06 -08:00
Darren Stahl
6791230320 Combine SetupWorkingDirectory for Linux and Windows
Signed-off-by: Darren Stahl <darst@microsoft.com>
2016-02-05 10:27:10 -08:00
Darren Stahl
96c5221626 Move base image selection to a utility function
Signed-off-by: Darren Stahl <darst@microsoft.com>
2016-02-04 15:06:34 -08:00
Sebastiaan van Stijn
c2d6831fc4 Merge pull request #19695 from Microsoft/10662-TestBuildCI2
Second set of enabling TestBuild CI for Windows
2016-02-01 16:29:52 +01:00
David Calavera
35ef3efe9a Merge pull request #19805 from WeiZhang555/test-inspect
Make test code consistent
2016-01-29 12:43:58 -08:00
Zhang Wei
62a856e912 Assert error in body of function inspectField*
1. Replace raw `docker inspect -f xxx` with `inspectField`, to make code
cleaner and more consistent
2. assert the error in function `inspectField*` so we don't need to
assert the return value of it every time, this will make inspect easier.

Signed-off-by: Zhang Wei <zhangwei555@huawei.com>
2016-01-29 23:39:07 +08:00
Darren Stahl
2b95f012db Second set of enabling TestBuild CI for Windows
Signed-off-by: Darren Stahl <darst@microsoft.com>
2016-01-28 13:43:22 -08:00
Darren Stahl
563a4d1b9f First batch of Windows-Windows TestBuild CI enabling
Signed-off-by: Darren Stahl <darst@microsoft.com>
2016-01-26 12:15:13 -08:00
Aaron Lehmann
74fafa5dd2 Slight TestBuildEnvUsage2 speedup
TestBuildEnvUsage2 was flagged in https://github.com/docker/docker/issues/19425
as one of the slowest integration tests. It's slow because it has some
comprehensive builder test cases that end up creating a lot of layers.
Even with a busybox base image, this can be expensive. It's not possible
to build "FROM scratch" because the test cases need the shell to ensure
environment variables are set correctly.

Some of the ENV and RUN statements can be combined. This causes fewer
layers to get created. Doing this produces a marginal improvement in the
runtime.

Before:

    PASS: docker_cli_build_test.go:3956: DockerSuite.TestBuildEnvUsage2 43.619s

After:

    PASS: docker_cli_build_test.go:3956: DockerSuite.TestBuildEnvUsage2 31.286s

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
2016-01-22 17:13:50 -08:00
Antonio Murdaca
167cc42986 api: client: build: do not fall through if git isn't installed
Signed-off-by: Antonio Murdaca <runcom@redhat.com>
2016-01-19 16:50:14 +01:00
John Howard
d3392a3bde Windows: Fix test regression from 19155
Signed-off-by: John Howard <jhoward@microsoft.com>
2016-01-14 12:00:27 -08:00
David Calavera
a225e39667 Merge pull request #19155 from coolljt0725/create_cwd_on_create
Create the working directory on container creation
2016-01-14 09:13:44 -08:00
Alexander Morozov
807d575b5e Merge pull request #19135 from Microsoft/jjh/securitywarning
Windows: Fix security warning regression
2016-01-08 13:55:41 -08:00
Riyaz Faizullabhoy
1c32a66877 update tests and error messages, revendor notary with tag
Signed-off-by: Riyaz Faizullabhoy <riyaz.faizullabhoy@docker.com>
2016-01-08 09:11:33 -08:00
Lei Jitang
cde0ed67a1 Create the working directory on container creation
if create a container with -w to specify the working directory and
the directory does not exist in the container rootfs, the directory
will be created until the container start. It make docker export of
a created container and a running container inconsistent.

Signed-off-by: Lei Jitang <leijitang@huawei.com>
2016-01-08 12:11:21 +08:00
Riyaz Faizullabhoy
1c125f50cf Notary delegation integration into docker
Signed-off-by: Riyaz Faizullabhoy <riyaz.faizullabhoy@docker.com>
2016-01-07 19:35:45 -08:00
John Howard
ebf4c91717 Windows: Fix security warning regression
Signed-off-by: John Howard <jhoward@microsoft.com>
2016-01-06 15:54:43 -08:00
Doug Davis
d3ea7e80e8 Add default PATH to 'scratch' images
Closes #19012

Signed-off-by: Doug Davis <dug@us.ibm.com>
2016-01-06 09:50:35 -08:00
David Calavera
851fe00c64 Add filter by event type and documentation.
Signed-off-by: David Calavera <david.calavera@gmail.com>
2016-01-04 14:58:04 -05:00
David Calavera
72f1881df1 Add event types.
- Stop serializing JSONMessage in favor of events.Message.
- Keep backwards compatibility with JSONMessage for container events.

Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-30 17:39:33 -05:00
David Calavera
9aad7d209f Move test out of the windows build.
Because it can still run on windows server and fail because it doesn't
have `chown`.

Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-30 16:36:48 -05:00
David Calavera
56f8b051eb Merge pull request #18158 from mauri/add_owner
ADD files to a folder doesn't set correct UID and GID
2015-12-30 11:19:15 -08:00
Mauricio Garavaglia
b638bc6f17 Fix files ownership when ADD is used
Signed-off-by: Mauricio Garavaglia <mauriciogaravaglia@gmail.com>
2015-12-30 11:35:19 -03:00
David Calavera
af51df20bd Extract event processing to a common function for testing.
We keep only one logic to test event related behavior that will help us
diagnose flacky event errors.

Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-22 17:10:06 -05:00
Boaz Shuster
60b4db7eb1 Change the quiet flag behavior in the build command
Right now, the quiet (-q, --quiet) flag ignores the output
generated from within the container.

However, it ought to be quiet in a way that all kind
of diagnostic output should be ignored, unless the build
process fails.

This patch makes the quiet flag behave in the following way:
 1. If the build process succeeds, stdout contains the image ID
    and stderr is empty.
 2. If the build process fails, stdout is empty and stderr
    has the error message and the diagnostic output of that process.

If the quiet flag is not set, then everything goes to stdout
and error messages, if there are any, go to stderr.

Signed-off-by: Boaz Shuster <ripcurld.github@gmail.com>
2015-12-21 16:38:50 +02:00
Tonis Tiigi
15d84a3a48 Improve reference parse errors
Fixes #18093

Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2015-12-16 11:58:53 -08:00
Justas Brazauskas
927b334ebf Fix typos found across repository
Signed-off-by: Justas Brazauskas <brazauskasjustas@gmail.com>
2015-12-13 18:04:12 +02:00
David Calavera
a3056f9f72 Log events stream when TestEventStreaming fails.
Let the tag event some more time to be emitted.

Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-11 17:20:40 -05:00
Tibor Vass
1f8efc687c Merge pull request #18123 from aidanhs/aphs-fail-on-broken-tar
Ensure adding a broken tar doesn't silently fail
2015-12-07 14:38:21 +01:00
David Calavera
434d2e8745 Add PubSub topics.
A TopicFunc is an interface to let the pubisher decide whether it needs
to send a message to a subscriber or not. It returns true if the
publisher must send the message and false otherwise.

Users of the pubsub package can create a subscriber with a topic
function by calling `pubsub.SubscribeTopic`.

Message delivery has also been modified to use concurrent channels per
subscriber. That way, topic verification and message delivery is not
o(N+M) anymore, based on the number of subscribers and topic verification
complexity.

Using pubsub topics, the API stops controlling the message delivery,
delegating that function to a topic generated with the filtering
provided by the user. The publisher sends every message to the
subscriber if there is no filter, but the api doesn't have to select
messages to return anymore.

Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-12-02 16:43:49 -05:00
Tonis Tiigi
4352da7803 Update daemon and docker core to use new content addressable storage
Add distribution package for managing pulls and pushes. This is based on
the old code in the graph package, with major changes to work with the
new image/layer model.

Add v1 migration code.

Update registry, api/*, and daemon packages to use the reference
package's types where applicable.

Update daemon package to use image/layer/tag stores instead of the graph
package

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2015-11-24 09:40:25 -08:00
Aidan Hobson Sayers
3243e504d0 Ensure adding a broken tar doesn't silently fail
Signed-off-by: Aidan Hobson Sayers <aidanhs@cantab.net>
2015-11-23 14:18:58 +00:00
Stefan Scherer
88c1bc10c4 Increase timeouts to fix test on ARM
Signed-off-by: Stefan Scherer <scherer_stefan@icloud.com>
2015-11-20 23:12:12 +01:00
Alexander Morozov
f5e318a17b Merge pull request #17090 from duglin/dockerignoreWildcards
Support multi-dir wildcards in .dockerignore
2015-11-13 14:29:34 -08:00
Doug Davis
eddb14a44e Support multi-dir wildcards in .dockerignore
Closes #13113

Signed-off-by: Doug Davis <dug@us.ibm.com>
2015-11-13 13:44:07 -08:00
Tonis Tiigi
86faf1e165 Add test for builder cache with root source path
Fixes #17827

Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2015-11-10 10:15:09 -08:00
David Calavera
014bab03ef Merge pull request #17789 from duglin/Issue17781
Allow for env vars to have spaces in some cases
2015-11-10 08:55:11 -08:00
Doug Davis
6990f8c616 Allow for env vars to have spaces in some cases
Closes #17781

This allows for env vars in EXPOSE to be parsed for spaces so that each
"word" is then treated independently instead of as a single word/arg.

Signed-off-by: Doug Davis <dug@us.ibm.com>
2015-11-09 12:42:56 -08:00
Brian Goff
bf5a6d2a83 Merge pull request #17710 from tonistiigi/fix-builder-symlinks
Fix symlink handling in builder ADD/COPY commands
2015-11-07 16:32:07 -05:00
Tonis Tiigi
47da59f7ec Fix symlink handling in builder ADD/COPY commands
Fixes #17290

Fixes following issues:

- Cache checksums turning off while walking a broken symlink.

- Cache checksums were taken from symlinks while targets were actually copied.

- Copying a symlink pointing to a file to a directory used the basename of the target as a destination basename, instead of basename of the symlink.


Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2015-11-06 10:58:12 -08:00
David Calavera
157b66ad39 Remove exec-driver global daemon option.
Each platform has only a driver now.

Signed-off-by: David Calavera <david.calavera@gmail.com>
2015-11-05 17:09:58 -05:00
Sebastiaan van Stijn
448398c2a8 Merge pull request #15780 from mountkin/build-multi-tags
Add ability to add multiple tags with docker build
2015-10-23 13:50:35 -07:00
Shijiang Wei
c2eb37f9ae Add ability to add multiple tags with docker build
Signed-off-by: Shijiang Wei <mountkin@gmail.com>
2015-10-24 00:59:56 +08:00
Antonio Murdaca
04ef69a1e9 integration-cli: docker_cli_build_test: check error before defer
Signed-off-by: Antonio Murdaca <runcom@redhat.com>
2015-10-21 17:13:45 +02:00
Shijiang Wei
2968fa44eb emit a "tag" event when building image with "-t" parameter
This is useful for cluster systems such as swarm to sync the image
state when new images are successfully built.

Signed-off-by: Shijiang Wei <mountkin@gmail.com>
2015-10-19 20:09:14 +08:00