Commit Graph

303 Commits

Author SHA1 Message Date
265055473c Support downloading remote tarball contexts in builder jobs.
Signed-off-by: Moysés Borges <moysesb@gmail.com>
Upstream-commit: d48bface59ef28aedc692c1f7c51a7ddde94a7fe
Component: engine
2015-06-19 16:35:00 -03:00
e778cd68a0 [builder] Make build cache ignore mtime
Build cache uses pgk/tarsum to get a digest of content which is
ADD'd or COPY'd during a build. The builder has always used v0 of
the tarsum algorithm which includes mtimes however since the whole
file is hashed anyway, the mtime doesn't really provide any extra
information about whether the file has changed and many version
control tools like Git strip mtime from files when they are cloned.

This patch updates the build subsystem to use v1 of Tarsum which
explicitly ignores mtime when calculating a digest. Now ADD and
COPY will result in a cache hit if only the mtime and not the file
contents have changed.

NOTE: Tarsum is NOT a meant to be a cryptographically secure hash
function. It is a best-effort approach to determining if two sets of
filesystem content are different.

Docker-DCO-1.1-Signed-off-by: Josh Hawn <josh.hawn@docker.com> (github: jlhawn)
Upstream-commit: 0e10507a1c5985e6fda0ff48e9313ba7a4de761b
Component: engine
2015-06-08 13:54:47 -07:00
25eb4c5026 Merge pull request #13611 from duglin/Issue13417a
Allow .dockerignore to ignore everything
Upstream-commit: aa8d8fdc0cfe07ce4e4976dc41a3fdb86ebcfc66
Component: engine
2015-06-01 15:59:57 -07:00
1d47fe7076 Allow .dockerignore to ignore everything
Change CLI error msg because it was too specific and didn't make sense
when there were errors not related to inaccessible files.

Removed some log.Error() calls since they're not really errors we should
log. Returning the error will be enough.

Closes: #13417

Signed-off-by: Doug Davis <dug@us.ibm.com>
Upstream-commit: 82ea6ed2bc33ac1ec2ad2bd8d4a098031dd77095
Component: engine
2015-05-30 04:16:00 -07:00
6226136075 Remove PortSpecs from Config
Signed-off-by: Antonio Murdaca <me@runcom.ninja>
Upstream-commit: 15134a3320fbacee36e86a0342e7ffb49285f297
Component: engine
2015-05-29 22:38:09 +02:00
9a7a5b0edf Do not require cgroups capabilities on windows to run the integration tests.
Signed-off-by: David Calavera <david.calavera@gmail.com>
Upstream-commit: a9141012966db62b36b7d3d1df7af877bbd2d172
Component: engine
2015-05-29 11:42:40 -07:00
781e46f9bc Skip test if not have Cpu quota or Cpu period
Closes: #13522

Signed-off-by: Qiang Huang <h.huangqiang@huawei.com>
Upstream-commit: 34e5b6af19b916ec0debcc8bcb76313302b77a27
Component: engine
2015-05-28 14:59:58 +08:00
733d4876c2 Cleanup: change test func name
Signed-off-by: Zhang Wei <zhangwei555@huawei.com>
Upstream-commit: ab121345ee2b5db35c13706a2bb8dff3de8d5300
Component: engine
2015-05-25 14:51:10 +08:00
2e83148ffd Use stderr instead of logrus for CLI error messages
Signed-off-by: Doug Davis <dug@us.ibm.com>
Upstream-commit: 0024935f641ab596732f9162d3eab795bbc2ae06
Component: engine
2015-05-12 17:22:41 -07:00
52da2e9683 Fix RUN err msg (again)
Previous fix used %q which incorrectly go-escaped things. For example:

```
RUN echoo A \& B	C
```
would result in the user seeing:
```
INFO[0000] The command '/bin/sh -c echoo A \\& B\tC' returned a non-zero code: 127
```
Note the double-\ and the \t instead of a tab character

The testcase had to double escape things due to logrus getting in the way
but I'm going to fix that in another PR because its a change to the UX.

Signed-off-by: Doug Davis <dug@us.ibm.com>
Upstream-commit: 006c066b6ce0b8b16f7d68b0ef997717bfb35662
Component: engine
2015-05-09 09:22:30 -07:00
f08d29d6d6 Merge pull request #12278 from duglin/12267-Wildcards
Fix for Daemon crashing when wildcards are used for COPY/ADD
Upstream-commit: d0bc0153c637f0e61207fa90b0346174cd5e92e3
Component: engine
2015-05-07 17:01:16 -07:00
309bf49758 Fix RUN's error msg when it fails
When RUN returns with a non-zero return code it prints the command
that was executed as a Go []string:
```
INFO[0000] The command &{[/bin/sh -c noop a1 a2]} returned a non-zero code: 127
```

instead it should look like this:
```
INFO[0000] The command "/bin/sh -c noop a1 a2" returned a non-zero code: 127
```

Signed-off-by: Doug Davis <dug@us.ibm.com>
Upstream-commit: 54662eae10923a0aca03ffddc1a30b7d25431c79
Component: engine
2015-05-05 16:08:41 -07:00
ba0c92d010 Fix issue where build steps are duplicated in the output
This fixes an issue where the build output for the "Steps" would look like:
```
Step 1: RUN echo hi echo hi
```
instead of
```
Step 1: RUN echo hi
```

Also, I noticed that there were no checks to make sure invalid Dockerfile
cmd flags were caught on cmds that didn't use cmd flags at all. They would
have been caught on the cmds that had flags, but cmds that didn't bother
to add a new code for flags would have just ignored them.  So, I added
checks to each cmd to flag it.

Added testcases for issues.

Signed-off-by: Doug Davis <dug@us.ibm.com>
Upstream-commit: 08b7f30fcd050244026098673b19700485308b5a
Component: engine
2015-05-05 15:28:42 -07:00
f6876820fd Merge pull request #11844 from jbarbier/cgroup-parent-42
Adding cgroup-parent option for docker build
Upstream-commit: e960e4bb129de15b3beb7da37421e32af8dccf2f
Component: engine
2015-05-05 14:46:47 -07:00
f81d4d4161 Merge pull request #12769 from calavera/git_build_fragment
Use git url fragment to specify build reference and dir context.
Upstream-commit: 0a2ccb1cb54834d3b97982f93c42671be5861082
Component: engine
2015-05-04 12:48:24 -07:00
a0ae4df58b Use git url fragment to specify reference and dir context.
Signed-off-by: David Calavera <david.calavera@gmail.com>
Upstream-commit: 49fd83a25e2e6604014de41d4f4099a7bc07a09b
Component: engine
2015-05-04 09:28:06 -07:00
6982f607b4 c.Fatal won't fail and exit test inside a goroutine, errors should be handled outside with a channel
Signed-off-by: Antonio Murdaca <me@runcom.ninja>
Upstream-commit: 4203230cbbf46238e38099c9073bdcad5f69a63f
Component: engine
2015-04-29 17:02:22 +02:00
bc3d7f1531 add support for exclusion rules in dockerignore
Signed-off-by: Dave Goodchild <buddhamagnet@gmail.com>
Upstream-commit: 6fd8e485c85c4f8ca62578d0840bdeddc4cba151
Component: engine
2015-04-28 18:56:45 +01:00
741aa30caf Fix for Daemon crashing when wildcards are used for COPY/ADD
in the filename and the command itself

Closes #12267

Signed-off-by: Doug Davis <dug@us.ibm.com>
Upstream-commit: 82daa43844556953101b201bc5983aed4fbe6233
Component: engine
2015-04-27 19:09:57 -07:00
ae74d9f34f trivial: typo cleanup
Signed-off-by: David Mackey <tdmackey@booleanhaiku.com>
Upstream-commit: 3941623fbc3fa724d61f53121513ffd87d03b61c
Component: engine
2015-04-27 13:35:08 -07:00
04f8bd2003 Migrate integration test to new method
Signed-off-by: Nathan LeClaire <nathan.leclaire@gmail.com>
Upstream-commit: 9dbe12b792a46538c01862930c85ace18dbe14f3
Component: engine
2015-04-25 17:12:01 -04:00
0a0035ed72 Add dep to test
Signed-off-by: Nathan LeClaire <nathan.leclaire@gmail.com>
Upstream-commit: 65aba0c9d6a72fc89f87c328e9ca21e20bf3cf7a
Component: engine
2015-04-25 15:25:52 -04:00
2f02e8950c Fix gofmt
Mischevious comma is mischevious

Signed-off-by: Nathan LeClaire <nathan.leclaire@gmail.com>
Upstream-commit: f039c699a40397b71f05838e9a9c67100ae474c6
Component: engine
2015-04-25 15:25:52 -04:00
43c42369ac Add test for cgroup parent flag for build
Signed-off-by: Marianna <mtesselh@gmail.com>
Upstream-commit: f40dd69c97a5a3797f07d52fe5f76e296ef629dc
Component: engine
2015-04-25 15:25:52 -04:00
c48fdf0abd Implement teardown removeAllImages
Signed-off-by: Alexander Morozov <lk4d4@docker.com>
Upstream-commit: a9688cdca5577d6db65d76f38bcbe4c1e6f5994f
Component: engine
2015-04-24 10:37:21 -07:00
734115a06e Add cpu cfs quota to build
Signed-off-by: Lei Jitang <leijitang@huawei.com>
Upstream-commit: 5f4fb8be006c0ffeff2671e5752111e543e07d9f
Component: engine
2015-04-24 08:54:08 +08:00
1c64e12359 Merge pull request #11839 from brahmaroutu/template_11641
Allow go template to work properly with inspect …
Upstream-commit: 799cf056e7f672f987b0b44adf0868ce56caab8b
Component: engine
2015-04-23 13:07:40 -07:00
12be8c3158 Allow go template to work properly with inspect
Closes #11641

Signed-off-by: Srini Brahmaroutu <srbrahma@us.ibm.com>
Upstream-commit: 231d362db73310a5243a72dcdb6df2df57c74488
Component: engine
2015-04-23 18:25:18 +00:00
dd4b0467ca Remove deleteAllContainers call in test
Signed-off-by: Antonio Murdaca <me@runcom.ninja>
Upstream-commit: ee7a7b07e752c56bbe1b941feb1e4313275d68c2
Component: engine
2015-04-23 16:32:50 +02:00
1c1b244ecd fix inspect format result
Currently `docker inspect -f` use json.Unmarshal() unmarshal
to interface, it will store all JSON numbers in float64, so
we use `docker inspect 4f0d73b75a0d | grep Memory` and
`docker inspect -f {{.HostConfig.Memory}} 4f0d73b75a0d` will
get different values.

Signed-off-by: Qiang Huang <h.huangqiang@huawei.com>
Upstream-commit: b0ef3194aaa8c22b674ed5301c59e8e557a7e85e
Component: engine
2015-04-23 09:28:07 +08:00
628a79ad40 Cleanup daemon/volumes
- Mount struct now called volumeMount
- Merged volume creation for each volume type (volumes-from, binds, normal
  volumes) so this only happens in once place
- Simplified container copy of volumes (for when `docker cp` is a
  volume)

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
Upstream-commit: f3680e74946d3a773edb118ea3f508b8237e44a8
Component: engine
2015-04-22 19:32:10 -04:00
1884ef3b9b Use suite for integration-cli
It prints test name and duration for each test.
Also performs deleteAllContainers after each test.

Signed-off-by: Alexander Morozov <lk4d4@docker.com>
Upstream-commit: dc944ea7e48d11a2906e751d3e61daf08faee054
Component: engine
2015-04-21 10:28:52 -07:00
5e15f55a29 Removed unnecessary error output from dockerCmd
Changed method declaration. Fixed all calls to dockerCmd
method to reflect the change.

resolves #12355

Signed-off-by: bobby abbott <ttobbaybbob@gmail.com>
Upstream-commit: 621b601b3c602aab5ef0f07903fdf413881bb261
Component: engine
2015-04-17 09:11:14 -07:00
9f222f171d Add cpuset-mems support for docker build
Signed-off-by: Qiang Huang <h.huangqiang@huawei.com>
Upstream-commit: f8dc7e8754355c504562021da244c52055ab9204
Component: engine
2015-04-15 09:34:12 +08:00
4ee5160b6e fix build test by adding --no-cache
Testcase TestBuildResourceConstraintsAreUsed run build without
--no-cache, so if you run this test twice, it will fail the
second time.
TESTFLAGS='-v -run ^TestBuildResourceConstraintsAreUsed$' ./hack/make.sh binary test-integration-cli
[PASSED]
TESTFLAGS='-v -run ^TestBuildResourceConstraintsAreUsed$' ./hack/make.sh binary test-integration-cli
[FAIL]
Because we'll use cID to inspect field and will get empty cID
if we have cache.

Signed-off-by: Qiang Huang <h.huangqiang@huawei.com>
Upstream-commit: c49cc1f2fbd3d0256455750c885eadcaa3d17937
Component: engine
2015-04-13 16:24:49 +08:00
e7731ac431 Fix TestBuildCancelationKillsSleep to not fail on Windows
Signed-off-by: Antonio Murdaca <me@runcom.ninja>
Upstream-commit: d38c90140b8330bd355c40a0c8d1e9bd2b3664ec
Component: engine
2015-04-09 21:03:19 +02:00
adca7cca6d fix up Image-name related issues in docker ps and CI
This patch include the following fixs:
 - fix image name error when docker ps
 - fix docker events test failure: use the exact image name for filter
 - fix docker build CI test failure due to "docker events" change

Because of change of daemon log behavior. Now we record
the exact Image name as you typed. So docker run -d busybux sh
and docker run -d busybox:latest are not the same in the log.
So it will affect the docker events. So change the related CI

Signed-off-by: Liu Hua <sdu.liu@huawei.com>
Upstream-commit: 645c020f5ab7119cd06d7c6a790e9d99fe1cd309
Component: engine
2015-04-09 23:03:23 +08:00
a714c4cf33 Merge pull request #12107 from cpuguy83/remove_striptrailingchars
Remove `stripTrailingCharacters` from tests
Upstream-commit: b9d2ede4d4dc67b97abd0254a9e431aa9c89b932
Component: engine
2015-04-06 08:46:08 -07:00
ab9a366f0e Remove stripTrailingCharacters from tests
This was just an alias to `strings.TrimSpace`

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
Upstream-commit: 475c65319b4663d630711519e18d0b134c42c7f1
Component: engine
2015-04-06 09:21:18 -04:00
3e035d76a2 Add support for more advanced ${xxx:...} syntax
Just ${xxx:+...} and ${xxx:-...} for now

Signed-off-by: Doug Davis <dug@us.ibm.com>
Upstream-commit: 39908fc6d9a13f0d44196475ba938b6cc352fdbe
Component: engine
2015-04-01 08:11:15 -07:00
5897cb3c81 Clean up integration-cli tests
My AR couldn't take it any more:
- one logDone per test
- PASSED lines don't wrap

Signed-off-by: Doug Davis <dug@us.ibm.com>
Upstream-commit: 9a9d23dbc40c9b650bd1f9f98a421b7ff2312f36
Component: engine
2015-03-26 17:25:50 -07:00
d4e188856d Fix TestBuildResourceConstraintsAreUsed Cpuset test
Set cpuset to "0" so that it works on single core machines.
W/o this (and set to "1") we'll see something like this error
when running:
System error: write /cgroup/cpuset/docker/66689499bbd08cd8dccc9b7bfd1d6b34e85d73ce8c84d3c69b5e91944322da60/docker/79d7c548b58c85c4cfad6cd01eb7c3b30db254d1014c496137edd93ddc528a6f/cpuset.cpus: invalid argument"

Signed-off-by: Doug Davis <dug@us.ibm.com>
Upstream-commit: 389d0ae45327926a9d20b2a3e6c15499f3c9c570
Component: engine
2015-03-26 07:31:39 -07:00
abd71318ca Revert "Dealing with trailing whitespaces"
The validation script from #10681 is too pedantic, and does not handle
well situations like:

```
cat <<EOF   # or <<-EOF
	Whether the leading whitespace is stripped out or not by bash
	it should still be considered as valid.
EOF
```

This reverts commit 4e65c1c319afffc325853b88c9aef0c42ec83482.

Signed-off-by: Tibor Vass <tibor@docker.com>
Upstream-commit: 0252ad0adc37a34b88fa908ae74a13b940febdcb
Component: engine
2015-03-25 10:04:56 -06:00
8e0111a19d Merge pull request #11737 from duglin/FixTestOutput
TestBuildCancelationKillsSleep sends exec cmd to stdout
Upstream-commit: f08e9f44a9d27dfd3780e8c3d89b0236f7672688
Component: engine
2015-03-25 08:45:09 -07:00
944966da9a fix 2 integration tests on lxc
Docker-DCO-1.1-Signed-off-by: Jessica Frazelle <jess@docker.com> (github: jfrazelle)
Upstream-commit: c959d26d2f413fa93b60174c4e19111eff0a845d
Component: engine
2015-03-24 21:12:16 -07:00
5e050af7a5 TestBuildCancelationKillsSleep send exec cmd to stdout
and makes the testing output ugly.

This hides the output since it not used.

Signed-off-by: Doug Davis <dug@us.ibm.com>
Upstream-commit: fbd47969a86793c4e87e2da1abea1f806ba0a526
Component: engine
2015-03-24 20:56:26 -07:00
1e47557825 Refactor pkg/common, Fixes #11599
Signed-off-by: Antonio Murdaca <me@runcom.ninja>
Upstream-commit: b80fae735684406d848b16a0f148a746e17ed25f
Component: engine
2015-03-24 18:19:59 +01:00
b27a399633 Cleanup "hello-world" image in build tests
Signed-off-by: Arnaud Porterie <arnaud.porterie@docker.com>
Upstream-commit: bfc748221b15a0f6e42a6ab520ed6e31fa9e90c8
Component: engine
2015-03-23 15:16:13 -07:00
9b9105b3b2 Remove hardcoded error
Signed-off-by: Antonio Murdaca <me@runcom.ninja>
Upstream-commit: 8b02d85e1728b48729b2fb8553b2ec4b56a30d37
Component: engine
2015-03-23 20:58:16 +01:00
69bd180001 Merge pull request #10431 from duglin/Issue10391
Clarify ENV non-recursivenes w.r.t. env var substitution + fix escaping
Upstream-commit: 61966d281bb715a2359b27bcd30d0d59c98d2812
Component: engine
2015-03-23 13:30:11 -05:00