Commit Graph

25 Commits

Author SHA1 Message Date
38854e0b6a Remove pkg/testutil/assert in favor of testify
I noticed that we're using a homegrown package for assertions. The
functions are extremely similar to testify, but with enough slight
differences to be confusing (for example, Equal takes its arguments in a
different order). We already vendor testify, and it's used in a few
places by tests.

I also found some problems with pkg/testutil/assert. For example, the
NotNil function seems to be broken. It checks the argument against
"nil", which only works for an interface. If you pass in a nil map or
slice, the equality check will fail.

In the interest of avoiding NIH, I'm proposing replacing
pkg/testutil/assert with testify. The test code looks almost the same,
but we avoid the confusion of having two similar but slightly different
assertion packages, and having to maintain our own package instead of
using a commonly-used one.

In the process, I found a few places where the tests should halt if an
assertion fails, so I've made those cases (that I noticed) use "require"
instead of "assert", and I've vendored the "require" package from
testify alongside the already-present "assert" package.

Signed-off-by: Aaron Lehmann <aaron.lehmann@docker.com>
Upstream-commit: 7059a96e2e
Component: cli
2017-04-14 12:03:21 -07:00
00c772cac8 Add support for volume consistency in compose format.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
Upstream-commit: 545ec64de7
Component: cli
2017-04-07 13:23:33 -04:00
e8b7dd6280 Support rw as a volume option in compose file.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
Upstream-commit: 95b81eb684
Component: cli
2017-04-06 10:32:35 -04:00
9828b12c06 Fix endpoint mode in Compose format.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
Upstream-commit: 64c6b9a938
Component: cli
2017-04-03 17:51:31 -04:00
25b1b9c3c2 Replace fmt.Errorf() with errors.Errorf() in the cli
Signed-off-by: Daniel Nephin <dnephin@docker.com>
Upstream-commit: e9d6193dfd
Component: cli
2017-03-24 16:58:07 -04:00
7827d424b6 Fix external volume error to pass validation.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
Upstream-commit: c1b2fad9aa
Component: cli
2017-03-24 16:55:04 -04:00
0c575acb31 Remove compose types.Dict alias
It is just an alias type and make the code a little bit more complex
and hard to use from outside `compose` package.

Signed-off-by: Vincent Demeester <vincent@sbr.pm>
Upstream-commit: a1e1ab78d0
Component: cli
2017-03-22 16:16:20 +01:00
589b564e68 Fixing a small typo in compose loader package
Signed-off-by: Vincent Demeester <vincent@sbr.pm>
Upstream-commit: 4826a5c3af
Component: cli
2017-03-20 15:39:57 +01:00
63bca6acc7 Fix environment resolving.
Load from env should only happen if the value is unset.
Extract a buildEnvironment function and revert some changes to tests.

Signed-off-by: Daniel Nephin <dnephin@docker.com>
Upstream-commit: 146d3eb304
Component: cli
2017-03-14 16:00:43 -04:00
85cd81c04a compose: fix environment interpolation from the client
For an environment variable defined in the yaml without value,
the value needs to be propagated from the client, as in Docker Compose.

Signed-off-by: Akihiro Suda <suda.akihiro@lab.ntt.co.jp>
Upstream-commit: b7ffa960bf
Component: cli
2017-03-14 15:59:40 -04:00
72f1866047 Merge pull request #31795 from dnephin/compose-file-v3.2
Compose file v3.2
Upstream-commit: d1fc5acc2e
Component: cli
2017-03-14 14:10:24 -04:00
fb5e1898c8 Merge pull request #30597 from dnephin/add-expanded-mount-format-to-stack-deploy
Add expanded mount format to stack deploy
Upstream-commit: b8c49df008
Component: cli
2017-03-14 17:53:28 +00:00
6f96d531a0 Add compose file version 3.2
Signed-off-by: Daniel Nephin <dnephin@docker.com>
Upstream-commit: 2e9b15143a
Component: cli
2017-03-13 16:20:42 -04:00
c9cfbb4d45 Merge pull request #31176 from adshmh/29662-stack-deploy-error-if-external-combined-with-other-volume-options
stack deploy exits with error if both 'external' and other options are specified for a volume
Upstream-commit: 4c4af071c7
Component: cli
2017-03-11 01:59:43 +01:00
ea19043c45 stack deploy exits with error if both 'external' and any other options are specified for volumes
Signed-off-by: Arash Deshmeh <adeshmeh@ca.ibm.com>
Upstream-commit: 789652c41a
Component: cli
2017-03-07 14:21:45 -05:00
22f2b40227 exported cli compose loader parsing methods
Signed-off-by: James Nesbitt <james.nesbitt@wunderkraut.com>
Upstream-commit: b6f45eb18e
Component: cli
2017-03-07 17:36:35 +02:00
53c21bb298 Support expanded mounts in Compose loader
Add a test for loading expanded mount format.

Signed-off-by: Daniel Nephin <dnephin@docker.com>
Upstream-commit: 29f39ea244
Component: cli
2017-03-06 11:45:01 -05:00
48d10d2797 Parse a volume spec on the client, with support for windows drives
Signed-off-by: Daniel Nephin <dnephin@docker.com>
Upstream-commit: a442213b92
Component: cli
2017-03-06 11:45:01 -05:00
7cfd3076e4 Support expanded ports in Compose loader
This commit adds support for expanded ports in Compose loader,
and add several unit tests for loading expanded port format.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
Upstream-commit: c53471254b
Component: cli
2017-02-07 09:14:56 -08:00
857a9c8722 Add compose support of attachable in networks
This fix tries to address the issue raised in 29975 where
it was not possible to specify `attachable` flag for networks
in compose format.

NOTE: Compose format aleady supports `labels` in networks.

This fix adds the support of `attachable` for compose v3.1 format.

Additiona unit tests have been updated and added.

This fix fixes 29975.

Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
Upstream-commit: 1a677699ae
Component: cli
2017-02-04 14:16:06 -08:00
d1dc107dc1 Remove the old loading system from compose config loading
The original Compose config loading used the `compose` tag, which
was replaced by mapstructure. Some fields were left on the old tag. This
commit removes the old tag and uses types and mapstructure.

Signed-off-by: Daniel Nephin <dnephin@docker.com>
Upstream-commit: 1eefdba226
Component: cli
2017-01-27 17:03:41 -05:00
c63bb4b9c1 Test and fix external secrets in stack deploy.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
Upstream-commit: 682d75fa3f
Component: cli
2017-01-26 11:33:15 -05:00
5805451da4 Implement secret types for compose file.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
Upstream-commit: 0382f4f365
Component: cli
2017-01-26 11:33:15 -05:00
fb3da331a1 Add v3.1 schema and support validating multiple version.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
Upstream-commit: 7215ebffa8
Component: cli
2017-01-26 11:33:15 -05:00
6a9af71e6e Replace vendor of aanand/compose-file with a local copy.
Add go-bindata for including the schema.

Signed-off-by: Daniel Nephin <dnephin@docker.com>
Upstream-commit: 52c0157036
Component: cli
2016-12-27 16:17:24 -05:00