72 Commits

Author SHA1 Message Date
Ulysses Souza
318741ca5e Add metrics
Signed-off-by: Ulysses Souza <ulyssessouza@gmail.com>
2021-01-26 20:15:14 +01:00
aiordache
7322dee672 Cleanup v*_only test decorators
Signed-off-by: aiordache <anca.iordache@docker.com>
2020-08-10 10:30:41 +02:00
aiordache
cb56036a6e rename schema to compose_spec
Signed-off-by: aiordache <anca.iordache@docker.com>
2020-07-09 15:52:46 +02:00
aiordache
b78c1ec193 Merge 2.x and 3.x schemas
Signed-off-by: aiordache <anca.iordache@docker.com>
2020-07-08 12:31:39 +02:00
Bastian Venthur
e8424d5ae0 Removed Python2 support
Closes: #6890

Signed-off-by: Bastian Venthur <bastian.venthur@flixbus.com>
2020-06-03 17:37:47 +02:00
Ulysses Souza
cd098e0cad Pin test images on a non rolling tag
Mainly busybox:latest to the current latest which is 1.31.0-uclibc

Signed-off-by: Ulysses Souza <ulysses.souza@docker.com>
2019-07-18 11:10:37 +02:00
Joffrey F
c956785cdc Add progress messages to parallel pull
Signed-off-by: Joffrey F <joffrey@docker.com>
2018-07-25 14:39:18 -07:00
Joffrey F
74f616f208 Fix if_runtime_available decorator
Signed-off-by: Joffrey F <joffrey@docker.com>
2018-01-04 12:45:31 -08:00
Joffrey F
f22a1b6a2e Merge branch '5360-add-runtime-support' of https://github.com/cuckoohello/compose into cuckoohello-5360-add-runtime-support
Signed-off-by: Joffrey F <joffrey@docker.com>
2018-01-04 12:33:39 -08:00
Joffrey F
79b20eb53f Add support for mount syntax
Signed-off-by: Joffrey F <joffrey@docker.com>
2017-12-05 16:21:49 -08:00
Yafeng Shan
e4e92dd3d8 add support for runtime option in service definitions
close #5360

Signed-off-by: Yafeng Shan <cuckoo@kokonur.me>
2017-12-04 12:13:28 +08:00
Joffrey F
dc6bb7020d UCP 2.2.0 test fixes
Signed-off-by: Joffrey F <joffrey@docker.com>
2017-08-10 11:08:20 -07:00
Joffrey F
d668fd1c67 Bump 1.15.0-rc1
Signed-off-by: Joffrey F <joffrey@docker.com>
2017-07-26 18:20:09 -07:00
Yong Wen Chua
4a65008199 Add Compose v2.3
Signed-off-by: Yong Wen Chua <me@yongwen.xyz>
2017-07-20 17:06:59 -07:00
Joffrey F
6a4adb64f9 Some more test adjustments for Swarm support
Signed-off-by: Joffrey F <joffrey@docker.com>
2017-07-20 16:39:03 -07:00
Joffrey F
8f0ef26a73 Improved version comparisons throughout the codebase
Signed-off-by: Joffrey F <joffrey@docker.com>
2017-07-11 17:40:53 -07:00
Joffrey F
7a4c328c41 Rewriting tests to be UCP/Swarm compatible
- Event may contain more information in some cases.
  Don't assume order or format
- Don't assume ports are always exposed on 0.0.0.0 by default
- Absence of HostConfig in a create payload sometimes causes an error at the
  engine level
- In Swarm, volume names are prefixed by "<node_name>/"
- When testing against Swarm, the default network driver is overlay
- Ensure custom test networks are always attachable
- Handle Swarm network names
- Some params moved to host config in recent (1.21+) version
- Conditional test skips for Swarm environments

Signed-off-by: Joffrey F <joffrey@docker.com>
2017-06-14 16:17:15 -07:00
Alexey Rokhin
3e39aa0709 Fix testcases.py formatting
Signed-off-by: Alexey Rokhin <arokhin@mail.ru>
2017-05-17 15:21:35 +03:00
Alexey Rokhin
0043dc4fab Add cpu_count, cpu_percent, cpus parameters.
Signed-off-by: Alexey Rokhin <arokhin@mail.ru>
2017-05-17 14:50:29 +03:00
Joffrey F
cc966a7e19 Add support for init and init_path
Signed-off-by: Joffrey F <joffrey@docker.com>
2017-04-10 12:16:57 -07:00
Daniel Nephin
2acf286ed6 Support V3.2
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-03-15 11:40:31 -04:00
Daniel Nephin
4053adc7d3 Add an integration test for secrets using bind mounts.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2017-01-31 09:53:16 -05:00
Joffrey F
5c2165eaaf Fix volume definition in v3 schema
Signed-off-by: Joffrey F <joffrey@docker.com>
2017-01-19 15:41:31 -08:00
Daniel Nephin
e04a12b5ca Increase minimum version for v3.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-12-07 11:16:40 -05:00
Joffrey F
fd254caa68 Add support for link-local IPs in service.networks definition
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-09-15 14:55:14 -07:00
Ian Campbell
0483bcb472 delete DockerClientTestCase.client class attribute on tearDownClass
This is a docker.client.Client and therefore contains a connection pool, so
each subclass of DockerClientTestCase can end up holding on to up to 10 Unix
socket file descriptors after the tests contained in the sub-class are
complete.

Before this by the end of a test run I was seeing ~100 open file descriptors,
~80 of which were Unix domain sockets. By cleaning these up only 15 Unix
sockets remain at the end (out of ~25 fds, the rest of which are the Python
interpretter, opened libraries etc).

Signed-off-by: Ian Campbell <ian.campbell@docker.com>
2016-07-20 15:51:22 +01:00
Joffrey F
12ad3ff301 Injecting os.environ in Environment instance happens outside of init method
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-03-24 10:57:28 -07:00
Joffrey F
b99037b4a6 Add support for DOCKER_* variables in .env file
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-03-24 10:57:28 -07:00
Joffrey F
1801f83bb8 Environment class cleanup
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-03-24 10:57:01 -07:00
Joffrey F
5831b869e8 Update tests for new environment handling
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-03-24 10:57:01 -07:00
Aanand Prasad
aeef61fcd8 Make 'version' a string
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2016-02-02 13:58:34 +00:00
Aanand Prasad
406b6b28f4 Tag v2-only tests
- Don't run them against Engine < 1.10
- Set the API version appropriately for the Engine version, so all tests
  use API version 1.22 against Engine 1.10

Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2016-01-15 02:08:20 +00:00
Aanand Prasad
a027a0079c Use networking for version 2 Compose files
- Remove --x-networking and --x-network-driver
- There's now no way to set a network driver - this will be added back
  with the 'networks' key

Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2016-01-12 21:29:40 +00:00
Joffrey F
ec5111f1c2 Volumes are now prefixed with the project name
When created through the compose file, volumes are prefixed
with the name of the project they belong to + underscore,
similarly to how containers are currently handled.

Signed-off-by: Joffrey F <joffrey@docker.com>
2016-01-05 15:21:53 -08:00
Joffrey F
b4be7b870f Add support for declaring named volumes in compose files
* Bump default API version to 1.21 (required for named volume management)
* Introduce new, versioned compose file format while maintaining support
  for current (legacy) format
* Test updates to reflect changes made to the internal API

Signed-off-by: Joffrey F <joffrey@docker.com>
2016-01-05 15:09:39 -08:00
Daniel Nephin
4bf2f8c4f9 Fix lookup of linked containers for API version 1.20
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-01-05 15:09:39 -08:00
Daniel Nephin
c64b7cbb10 Ignore errors from API about not being able to kill a container.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2016-01-05 15:09:39 -08:00
Daniel Nephin
e67bc2569c Properly resolve environment from all sources.
Split env resolving into two phases. The first phase is to expand the paths
of env_files, which is done before merging extends. Once all files are merged
together, the final phase is to read the env_files and use them as the base
for environment variables.

Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-11-25 11:02:20 -05:00
Aanand Prasad
cfb1b37da2 Merge pull request #2405 from dnephin/move_all_validation_to_config
Move all validation to config
2015-11-25 15:16:21 +00:00
Aanand Prasad
88e9c1ccd9 Merge pull request #2438 from dnephin/fix_flaky_pull_test
Fix `build --pull` test flakes
2015-11-24 16:44:53 +00:00
Daniel Nephin
533f33271a Move service sorting to config package.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-11-23 13:33:00 -05:00
Daniel Nephin
dac75b07dc Move volume parsing to config.types module
This removes the last of the old service.ConfigError

Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-11-23 13:33:00 -05:00
Daniel Nephin
2351e11cc8 Make sure we always have the latest busybox image, so that build --pull tests don't flake.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-11-20 17:51:36 -05:00
Daniel Nephin
1e8f76767f Fix env_file and environment when used with extends.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-11-18 16:07:11 -05:00
Daniel Nephin
1f7faadc77 Remove name from config schema.
Refactors config validation of a service to use a ServiceConfig data object.
Instead of passing around a bunch of related scalars, we can use the
ServiceConfig object as a parameter to most of the service validation functions.

This allows for a fix to the config schema, where the name is a field in the
schema, but not actually in the configuration. My passing the name around as
part of the ServiceConfig object, we don't need to add it to the config options.
Fixes #2299

validate_against_service_schema() is moved from a conditional branch in
ServiceExtendsResolver() to happen as one of the last steps after all
configuration is merged. This schema only contains constraints which only need
to be true at the very end of merging.

Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-11-11 11:00:11 -05:00
Daniel Nephin
a92d86308f Rename ServiceLoader to ServiceExtendsResolver
ServiceLoader has evolved to be not really all that related to "loading" a
service. It's responsibility is more to do with handling the `extends`
field, which is only part of loading.  The class and its primary method
(make_service_dict()) were renamed to better reflect their responsibility.

As part of that change process_container_options() was removed from
make_service_dict() and renamed to process_service().  It contains logic for
handling the non-extends options.

This change allows us to remove the hacks from testcase.py and only call
the functions we need to format a service dict correctly for integration tests.

Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-11-11 10:58:07 -05:00
Daniel Nephin
3474bb6cf5 Cleanup workaround in testcase.py
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-11-10 12:43:55 -05:00
Daniel Nephin
f7100b2ef3 Change version check from engine version to api version.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-10-21 15:40:50 -04:00
Aanand Prasad
d5f5eb1924 Enable use of Docker networking with the --x-networking flag
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-10-14 11:19:43 -04:00
Daniel Nephin
c37a0c38a2 Fix a test case that assumes busybox image id.
Signed-off-by: Daniel Nephin <dnephin@docker.com>
2015-09-22 12:28:59 -04:00