Commit Graph

360 Commits

Author SHA1 Message Date
Joffrey F 4845dae0c0 put/get archive implementation
Signed-off-by: Joffrey F <joffrey@docker.com>
2015-10-08 13:59:39 -07:00
Joffrey F eb869c0bd3 Fix tests
Skips were masking some errors / compatibility issues

Signed-off-by: Joffrey F <joffrey@docker.com>
2015-10-08 12:09:59 -07:00
Joffrey F c5e68e6fc6 Merge branch 'networking' of https://github.com/aanand/docker-py into aanand-networking 2015-10-08 07:56:50 -07:00
Joffrey F 73e45ef359 Merge pull request #787 from docker/782-unicode-volume-paths
Don't break when volume binds contain unicode characters
2015-10-05 14:26:07 -07:00
Aanand Prasad 1df3226c9b Implement methods for managing networks
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-10-05 16:46:25 +01:00
Paul Bellamy 19291ee20d Fix race condition in integration regression tests
`docker port` and inspect do not return ports for containers which are
not running. Because the container command is `true`, sometimes that
exits before the inspect is called.

Signed-off-by: Paul Bellamy <paul.a.bellamy@gmail.com>
2015-10-01 14:05:50 +01:00
Joffrey F 7884ab9fe2 Merge pull request #789 from PierreF/top_ps_args
Allow to specify ps_args when listing processes
2015-09-28 14:36:08 -07:00
Joffrey F d0ccc2e261 Support explicit protocol in Client.port
User can now specify a protocol in Client.port using the port/proto
syntax. Default port is now TCP instead of UDP (to match the
behavior of `docker port`) when no proto is specified.
Regression test

Signed-off-by: Joffrey F <joffrey@docker.com>
2015-09-28 12:06:10 -07:00
Pierre Fersing c1577606be Added test for "top" function
Signed-off-by: Pierre Fersing <pierre.fersing@bleemeo.com>
2015-09-28 11:59:25 +02:00
Joffrey F 29219a278b Don't break when volume binds contain unicode characters
Also includes a few unit tests for utils.convert_volume_binds

Signed-off-by: Joffrey F <joffrey@docker.com>
2015-09-25 14:36:39 -07:00
Aanand Prasad 29b12cf007 _url can take arbitrarily many arguments
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-09-25 14:25:00 -07:00
Joffrey F d89b2a01f0 cpu_quota and cpu_period unit tests
Signed-off-by: Joffrey F <joffrey@docker.com>
2015-09-24 10:08:02 -07:00
Joffrey F 48d72f6703 Bump default API version
Signed-off-by: Joffrey F <joffrey@docker.com>
2015-09-23 11:35:57 -07:00
Joffrey F da2b797323 Improve volume bindings integration test
Signed-off-by: Joffrey F <joffrey@docker.com>
2015-09-22 14:30:03 -07:00
Joffrey F d6a86e1d69 Fix volumes tests for API version >= 1.20
Signed-off-by: Joffrey F <joffrey@docker.com>
2015-09-22 14:17:19 -07:00
Aanand Prasad eec0465832 Make volume binds tests work on any host
Instead of creating the test directory directly on the host, create it
by starting a container with the directory bind-mounted, so that it
doesn't matter whether the daemon is local, in a VM or remote.

This removes the need to make /tmp a volume in the test container, and
to share it with the dind container.

Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-09-22 11:34:49 -07:00
Aanand Prasad 3d6c91b469 Only pull busybox in integration tests if we don't already have it
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-09-22 14:25:28 +02:00
Joffrey F ef0c373f14 Pin busybox version to use in integration tests
Removed obsolete non-streaming build test

Signed-off-by: Joffrey F <joffrey@docker.com>
2015-09-21 15:34:10 -07:00
Joffrey F 8d32631635 Improve volume cleanup logic
Signed-off-by: Joffrey F <joffrey@docker.com>
2015-09-16 12:55:49 -07:00
Joffrey F acd5e634ff Generic skip decorator for low API version accessible to all tests
Add simpler version comparison functions
Add decorator to enforce minimum version in API methods
Fix utils imports
Add minimum_version decorators on API methods that needed it
GroupAdd test requires API version >= 1.20

Signed-off-by: Joffrey F <joffrey@docker.com>
2015-09-16 12:55:13 -07:00
Joffrey F 05267f63d3 Modify unit tests suite to allow mock routes to optionally be method-aware
Added mock API routes for volumes API
Add unit tests and integration tests for volume API

Signed-off-by: Joffrey F <joffrey@docker.com>
2015-09-16 12:54:26 -07:00
Joffrey F 1b798a2901 GroupAdd tests
Signed-off-by: Joffrey F <joffrey@docker.com>
2015-09-15 01:58:06 +02:00
Maxime Petazzoni e5fbc42dcb Merge pull request #763 from docker/api_splitup
API splitup
2015-09-13 08:47:07 -07:00
Joffrey F c735cc69a0 Split different APIs into several mixins for clarity / easier maintenance
Signed-off-by: Joffrey F <joffrey@docker.com>
2015-09-11 16:19:29 -07:00
Joffrey F 7e3cdfb3b1 Fixed regression test in py3 environments
Signed-off-by: Joffrey F <joffrey@docker.com>
2015-09-10 11:37:51 -07:00
Joffrey F de5aab87b4 Merge pull request #753 from docker/715-user-int-uid
Always send a string for the user param in create_container
2015-09-10 10:37:05 -07:00
Joffrey F b1c2475698 Add hello-world to temp images in pull tests
Signed-off-by: Joffrey F <joffrey@docker.com>
2015-09-09 17:10:04 -07:00
Joffrey F 1fb2db4951 Make integration tests more CI-friendly.
Signed-off-by: Joffrey F <joffrey@docker.com>
2015-09-09 17:06:34 -07:00
Joffrey F fa3082b6cd Update integration-dind task 2015-09-09 14:49:58 -07:00
Joffrey F abaf346b49 Make running integration tests with dind possible 2015-09-09 14:49:36 -07:00
Joffrey F 7dce129180 Merge pull request #754 from aanand/default-to-tcp-url-on-windows
Default to 127.0.0.1:2375 on Windows
2015-09-01 16:36:32 -07:00
Aanand Prasad 1362938f03 Default to 127.0.0.1:2375 on Windows
Following the logic of the Docker client.

Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-09-01 16:28:05 -07:00
Joffrey F 1e916a1e83 Test UID validity 2015-08-31 18:35:32 -07:00
Joffrey F 09defa66ba Always send a string for the user param in create_container 2015-08-31 16:06:52 -07:00
Joffrey F 3d884f9a3c Test URL construction 2015-08-31 15:01:40 -07:00
Joffrey F 33acb9d2e0 Test has been fixed, remove skip decorator 2015-08-31 13:13:46 -07:00
Joffrey F ad608baaaf Merge pull request #747 from aanand/integration-test-fixes
Integration test improvements
2015-08-31 13:07:02 -07:00
Aanand Prasad 6c0f7187a8 Integration test improvements
- Fix the setup step (the process has changed now that we're using
  pytest)

- Skip tests that are unstable

- Make better use of build caching

Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-08-31 12:06:41 -07:00
Joffrey F 9b37120167 Merge pull request #742 from aanand/fix-dockerignore-integration-test
Fix .dockerignore integration test
2015-08-27 11:01:47 -07:00
Joffrey F 63df0b9ab3 Merge branch 'master' of github.com:docker/docker-py 2015-08-26 17:02:55 -07:00
Joffrey F c56c9faacd Merge branch 'default-cert-path' of https://github.com/aanand/docker-py into aanand-default-cert-path
Conflicts:
	tests/utils_test.py
2015-08-26 17:00:33 -07:00
Joffrey F db1a93fd27 Merge pull request #662 from stevenewey/exec_create_user
Exec create user
2015-08-26 15:36:47 -07:00
Joffrey F ddf879cc4c Merge pull request #721 from aanand/pathspec
Better support for .dockerignore
2015-08-26 14:25:09 -07:00
Joffrey F e7a9ae097c Don't remove LogConfig.types shortcut 2015-08-26 11:51:08 -07:00
Aanand Prasad 20e142fe78 Better support for .dockerignore
- Support all basic pattern forms: file, directory, *, ?, !

- Fix handling of wildcard patterns and subdirectories - `*/a.py` should
  match `foo/a.py`, but not `foo/bar/a.py`

- Fix handling of directory patterns with a trailing slash - make sure
  they're handled equivalently to those without one

- Fix handling of custom Dockerfiles - make sure they go in the tarball

Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-08-26 19:14:09 +01:00
Mazz Mosley 9937a31a88 Test valid no args for log config
Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-08-26 16:10:28 +01:00
Aanand Prasad ced9b0094f Fix .dockerignore integration test
- There was a typo (".dockerginore"), which meant that the exclusion of
  the .dockerignore file itself wasn't being tested.

- Some of the file names were non-descriptive.

- The test was inspecting the output of the build process, rather than
  running 'ls' in a new container, which meant it was full of extra
  output, and would fail when there was a cache hit.

Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-08-26 16:03:21 +01:00
Mazz Mosley 35b30e69df Remove validation of supported log drivers
By having this hardcoded list of log drivers, it is a bottleneck
to us supporting more log drivers.

The daemon already validates if a log driver is valid or not, so rather
than duplicating that validation, let's pass the log_driver along.

This allows support for new/more log drivers as they become supported
in docker without having to wait for both docker-py and docker-compose
to support them.

Keeping the current list of log driver types for backwards compatibility.

Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-08-26 16:02:03 +01:00
Mazz Mosley 90538cf0a3 Fix log driver integration test
By using `json-file` as the use case we can run this without needing
to be on a machine with syslog installed.

Even if syslog was installed, this test was still failing as the
`log_opt` of 'key1' is an invalid option.

This test is slightly different style to the others, it hopefully
includes an example of how to space out tests for increased readability,
we construct our tests in 3 phases(generally) and include a space imbetween
them:

- setup

- perform action

- assertions

Expanded variable names is important for readability/clarity. Also
reduced the number of assertions to focus on the logic we're testing.

Signed-off-by: Mazz Mosley <mazz@houseofmnowster.com>
2015-08-26 15:58:57 +01:00
Joffrey F b5f1e64e8f Ensure Makefile still run tests properly / tests are run in container as expected 2015-08-25 16:58:01 -07:00