Commit Graph

1016 Commits

Author SHA1 Message Date
Joffrey F 7b2fd8cf5e Merge pull request #562 from smothiki/mems
make memory units compatible with native docker cli
2015-05-20 15:37:22 -07:00
Joffrey F fe12dad21b Separate check_resource inspect tests 2015-05-20 14:46:51 -07:00
Matt Bogosian de2f58d818 Fix #602. Raise ValueError on empty argument to inspect_{container,image}() methods. 2015-05-17 17:39:25 -07:00
Joffrey F 329662c53e Merge pull request #593 from docker/deprecate_start_hostconfig
Deprecate start hostconfig
2015-05-08 14:32:42 -07:00
Joffrey F 2fd2eebcb0 Added deprecation warning for host config in start 2015-05-08 14:00:58 -07:00
Joffrey F 1f74262ab3 unit test 2015-05-08 11:36:14 -07:00
smothiki ef452ed4c1 make memory units compatible with native docker cli
Signed-off-by: sivaram mothiki <smothiki@engineyard.com>
2015-05-07 20:05:32 -06:00
Joffrey F 070cbece0a Fixes for #586 2015-05-06 17:53:53 -07:00
Xiaojian Huang b9909c68f9 exec_resize is incorrectly passing param as json 2015-04-28 19:50:15 -07:00
Joffrey F f6b816c264 Fix #573 2015-04-28 10:48:09 -07:00
Joffrey F 7958110fda Added unit tests for container limits in build 2015-04-27 16:36:15 -07:00
Joffrey F ae329cb3ac * Separate file to store constants
* Added container_limits param to Client.build
2015-04-27 16:24:42 -07:00
Joffrey F e337a2317e Updated exec API documentation 2015-04-27 14:11:43 -07:00
Joffrey F e2ad91bdf7 Exec API tests 2015-04-27 13:57:15 -07:00
Joffrey F c2d48652ce Added check_resource decorator to interrupt command if container or image argument is None 2015-04-24 15:56:35 -07:00
Joffrey F c7948436e5 Added tests for log_config param 2015-04-24 15:10:51 -07:00
Joffrey F 6228929a88 Handle ID truncate on client side in containers list (and changed default from True to False) 2015-04-22 18:00:53 -07:00
Joffrey F c328be7deb revert 2015-04-22 17:45:56 -07:00
Joffrey F d0a49ec3b8 Added integration test 2015-04-22 17:43:36 -07:00
Joffrey F d71bfb1b3d Improved ulimit tests 2015-04-22 15:45:49 -07:00
Joffrey F 803b37bc2e assertRaises 2.6 compat 2015-04-22 15:19:01 -07:00
Joffrey F 84fdd2925d Add tests for ulimits 2015-04-22 15:13:38 -07:00
Joffrey F c7511481a6 BaseTestCase shims assertIn 2015-04-22 15:11:55 -07:00
Joffrey F a5519022d9 Merge branch 'sam/import-improvements' of https://github.com/ssssam/docker-py into ssssam-sam/import-improvements
Conflicts:
	docker/client.py
	docker/unixconn/unixconn.py
	tests/integration_test.py
2015-04-22 11:50:45 -07:00
Yuval Kohavi 605fc7e04f line length
Signed-off-by: Yuval Kohavi <yuval.kohavi@gmail.com>
2015-04-11 07:20:43 -05:00
Yuval Kohavi b33052b393 python 2.6 compatible
Signed-off-by: Yuval Kohavi <yuval.kohavi@gmail.com>
2015-04-11 07:17:28 -05:00
Yuval Kohavi 278e801b89 Adding port utils to split port ranges
Signed-off-by: Yuval Kohavi <yuval.kohavi@gmail.com>
2015-04-03 17:23:50 +03:00
Joffrey F 2f6579bf59 Use assertRaises in a backward compatible fashion 2015-03-25 16:07:16 -07:00
Joffrey F 6e0b5a8d70 Added assertIn shim for py2.6 2015-03-25 16:02:46 -07:00
Joffrey F b097d19f2f docs and unit test for security_opt 2015-03-25 15:40:14 -07:00
Aanand Prasad bd72bd13c7 Finish labels implementation, add tests and docs
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-03-20 15:42:10 -07:00
Aanand Prasad 014dba2841 Update default API version to 1.18
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-03-20 14:49:42 -07:00
Joffrey F 7d5c1efbbe Fix unit tests 2015-03-05 12:16:53 -08:00
Joffrey F acfa99dd10 Auto-detect integration tests 2015-03-05 12:08:41 -08:00
Tomas Tomecek 3e0496cc16 detect server version when version="auto"
heavily inspired by PR#281

Signed-off-by: Tomas Tomecek <ttomecek@redhat.com>
2015-03-05 08:53:29 +01:00
Roman Mohr a86bfffd89 Properly close files and sockets in unit tests 2015-02-28 21:03:15 +01:00
Joffrey F 39ee5981b4 Merge pull request #502 from cpuguy83/498_dockerignore_special_names
Add special cases for .dockerignore
2015-02-27 11:56:19 -08:00
Joffrey F 91985b2397 Merge pull request #509 from docker/lxc_driver_test_compat
Lxc driver test compat
2015-02-27 11:48:36 -08:00
Joffrey F 0fae821350 Merge pull request #508 from docker/de-i11003
Rename test fix to take into account docker/docker#11003
2015-02-27 11:47:57 -08:00
Aanand Prasad b1a858a14d Update resolve_authconfig to bring it in line with Docker client
Instead of expanding the registry name we're looking for to a full URL,
strip entries in the authconfig down to just the hostname.

Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-02-27 13:10:20 +00:00
Joffrey F 8d2b71fa7e I suck at python 2015-02-26 17:54:19 -08:00
Joffrey F e255c10f57 Ensure integration tests work with LXC exec driver 2015-02-26 17:39:44 -08:00
Joffrey F 21cc9916fd Rename test fix to take into account docker/docker#11003 2015-02-26 17:16:36 -08:00
Brian Goff ce40730b42 Add special cases for .dockerignore
Fixes #498
Allowing `Dockerfile` and `.dockerignore` in the exclusion filter
completely breaks the build on docker < 1.5

In Docker 1.5 these entries are treated as special cases when included
in the .dockerignore and are still sent as part of the context. The
daemon ends up excluding them from any `ADD`, `COPY`, and cache
validation.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
2015-02-24 15:48:51 -05:00
Daniel Nephin 0713488fac Resolves #497 - add support for dockerfile
Signed-off-by: Daniel Nephin <dnephin@gmail.com>
2015-02-20 21:20:21 -05:00
Tianon Gravi 7f49cf1279 Fix several DOCKER_HOST assumptions in integration_test.py 2015-02-16 16:42:34 -07:00
Joffrey F 7084802da2 Fix pep8 error 2015-02-16 10:56:08 -08:00
Joffrey F c02f0ab723 Formatting 2015-02-12 15:54:16 -08:00
Joffrey F 1a7e3a2d6d Merge branch 'add-stats-api-support' of https://github.com/nir0s/docker-py into nir0s-add-stats-api-support 2015-02-12 13:15:59 -08:00
nir0s c50795a08a minor 2015-02-12 10:01:42 +02:00
nir0s 52702f7da0 removed aggregation for now and added a unit test. also using stream_helper now 2015-02-12 09:48:33 +02:00
Joffrey F cab37b604a pid_mode integration tests 2015-02-11 12:16:36 -08:00
nir0s f402af551d added initial support for stats retrieval 2015-02-11 22:04:32 +02:00
Joffrey F 22dd8d78ea Merge pull request #480 from ggtools/events
Add missing options to the events command
2015-02-11 11:13:52 -08:00
Christophe Labouisse 53b1bb41ac Fix datetime issue with Python 2.6
Signed-off-by: Christophe Labouisse <christophe@labouisse.org>
2015-02-11 07:25:59 +01:00
Christophe Labouisse a07bd28077 Add missing options to the events command
- Add since, until and filters parameters to `Client.events`
- Add missing `events`command in the documentation

Signed-off-by: Christophe Labouisse <christophe@labouisse.org>
2015-02-11 07:25:59 +01:00
Joffrey F e379e8ae24 read_only parameter 2015-02-10 16:13:09 -08:00
Joffrey F d0512028be Merge pull request #482 from docker/rename_container
New Client.rename() method
2015-02-10 13:56:29 -08:00
Joffrey F a7f7fbb0fd rename() tests and docs 2015-02-10 12:55:44 -08:00
Vincent Giersch f3717f5815 Fix crash when building from remote sources
Avoid crashing when the Docker python client is able to load
registry credentials when building using a remote source

Signed-off-by: Vincent Giersch <vincent.giersch@ovh.net>
2015-02-04 16:26:55 +00:00
Joffrey F 40770878ad Additional tests and small improvement to auth.resolve_authconfig 2015-02-01 15:36:56 -08:00
James Harris 301515ed56 Add Support for Mac Address
The new docker api allows specifing mac address for containers. This change is to allow docker py the same functionality.

Signed-off-by: James Harris <james@rancher.com>
2015-01-21 16:08:16 -07:00
Joffrey F aa19d7b660 Fixed TestRestartingContainer 2015-01-13 10:32:28 -08:00
Joffrey F 1f8cde8560 Integration tests fixes 2015-01-09 14:22:55 -08:00
Joffrey F 43c334656b Added RO volumes tests 2015-01-08 18:02:03 -08:00
Joffrey F 4d3e7eb1cb Merge branch 'master' of https://github.com/rmohr/docker-py into rmohr-master 2015-01-08 16:23:21 -08:00
Joffrey F 09ea71971c Fix for issue #443 2015-01-08 15:57:44 -08:00
Sam Thursfield b1d4a5d8d1 Add integration tests for Client.import_image() function
Currently TestImportFromStream fails, because something is going wrong
with the HTTP chunked transfer-encoding. This didn't work before,
either (for a different reason).
2015-01-05 12:33:36 +00:00
Sam Thursfield 2f3b87a470 Rewrite Client.import_image() and add less-magical versions
Rather than have one function that can do 5 things and attempts to guess
what the user wanted, it's good to have a function for each possible
method of importing an image. Error cases are handled a lot better this
way.

The unit test test_import_image_from_file() was changed to be
test_import_image_from_bytes(), because if we try to import a temporary
file in the test, the 'data' parameter of the 'fake_request' object is
an instance of a funny internal type like <_io.BufferedReader
name='/tmp/tmpc9chux'> and it's very hard to match such a thing with
`mock.assert_called_with()`.
2015-01-05 12:32:56 +00:00
Sam Thursfield 42b91885a2 Rework Unix connection code so that 'chunked' transfers work
This allows streaming a system to the 'import' command, rather than
having to read the whole thing into memory before sending it.

Previously both the UnixAdapter and the docker.Client objects would
track the 'base URL' of the Docker daemon (socket path in the case of
local Unix-domain socket connections). The Client object would construct
URLs which contained the path to the socket with the path of the Docker
API call appended. The UnixHTTPConnection instance would then remove the
known socket path from the URL.

This relied on all calls going through the HTTPConnection.request()
function, where the URL could be rewritten. In the case of 'chunked'
HTTP POST requests this doesn't happen, so such calls would request
a path still including the socket path and would receive a 404 error.

The client now constructs URLs containing just the path of the desired API
endpoint, and expects the Unix socket transport to know the path to the
Docker daemon's socket.
2015-01-05 12:05:39 +00:00
Roman Mohr 2d34c38c4d Keep unix socket alive with python3 2014-12-21 11:42:41 +01:00
Joffrey F 2218dbaa67 Use create_host_config in start (unifying parameter processing) 2014-12-18 18:03:27 -08:00
Joffrey F 53d61a77b6 Improved integration tests to run on python3 and close sessions after in tearDown phase 2014-12-18 17:46:41 -08:00
Joffrey F 53beba75f4 Merge pull request #427 from abanna/adding_multiple_dockercfg_support
adding the ability to login with different dockercfg files.
2014-12-18 10:39:59 -08:00
Joffrey F 96f66f7558 Merge pull request #435 from dims/fix-flake8-issues
flake8 fails with F821 for unicode under python 3.4.2
2014-12-18 10:33:40 -08:00
abanna d3cf874938 missed a lint error 2014-12-18 10:21:02 -08:00
Alex Banna 4cbf4e312c adding the ability to login with different dockercfg files. 2014-12-18 10:19:40 -08:00
Davanum Srinivas d9fa43a9b7 flake8 fails with F821 for unicode under python 3.4.2 2014-12-18 11:08:37 -05:00
Marcus Cobden 17c1869304 Tidy up stream test harness & fix race conditions 2014-12-18 09:23:21 +00:00
Joffrey F 8aded4842b Retry on connection error 2014-12-17 12:55:49 -08:00
Joffrey F f75afc92a2 Use unicode() typecast instead of u'' literal (3.2 compat). Fixes #408 2014-12-17 12:07:35 -08:00
Joffrey F b1e0ca0bd6 Merge branch 'master' of https://github.com/leth/docker-py into leth-master
Conflicts:
	tests/test.py
2014-12-17 11:56:58 -08:00
Joffrey F 2b5516afab Re-added integration tests with hostconfig in start 2014-12-17 11:44:52 -08:00
Joffrey F 12aad176b9 Re-added start with hostconfig tests 2014-12-17 11:44:52 -08:00
Joffrey F c29a6a2841 Fixed start_container tests 2014-12-17 11:44:52 -08:00
Joffrey F e992a8127d assertEquals -> assertEqual 2014-12-17 11:44:51 -08:00
Joffrey F 66112561f4 Updated integration tests to use new host_config param 2014-12-17 11:44:51 -08:00
Joffrey F 19b1379f17 Updated unit tests
* Warnings will now raise exceptions in unit tests
* Updated several tests to use host_config
2014-12-17 11:44:51 -08:00
Joffrey F b214406b38 Updated mock API version 2014-12-17 11:44:31 -08:00
Joffrey F f2ba7f9b9d Merge pull request #429 from dims/master
Devices should be separated by colon separated string
2014-12-17 11:32:58 -08:00
Davanum Srinivas 3a51d3fe0b Devices should be separated by colon separated string
Totally bad test :( (written by me). The documentation and
code should match now. Many thanks to pranavs18 for spotting
the error and proposing the fix.
2014-12-17 07:35:07 -05:00
Marcus Cobden 578dda64c9 Consume from chunked streams without data loss
Data already in local python buffers was lost when stream socket
fileobject was re-created. We now use http.client to handle the chunk
transfer encoding, and we read only the data from each chunk.

This adds a test harness for stream responses which tries to trigger the
lost-buffer behaviour by responding to the HTTP request in full, as
early as possible.

NB: Python's http.client will close the socket fileobj early if there is
no content length or chunked transfer encoding header. If this happens,
requests/urllib3 will reopen it, but we lose some data which was stored
in buffers.
2014-12-16 20:36:08 +00:00
Joffrey F 73b15be0c1 Merge pull request #423 from docker/0.6.0-integration
Fixed integration tests
2014-12-15 15:01:20 -08:00
Joffrey F bf9e1c84ba Don't use old test image (deprecated ID scheme) 2014-12-15 14:52:51 -08:00
Joffrey F a4aa1a88f1 Better pull confirmation 2014-12-15 13:53:49 -08:00
Joffrey F 4b91a71313 Longer timeout when contacting hub 2014-12-15 12:11:54 -08:00
Derek Hammer d8e8400419 Allow for pull as an option to docker build
Signed-off-by: Derek Hammer <derek.r.hammer@gmail.com>
2014-12-13 10:31:47 -08:00
Joffrey F a9bc84cece Enforce passing string as version param in ctor 2014-11-26 23:14:19 +01:00
Joffrey F 1a3f3c1304 Fixed integration test 2014-11-03 23:52:03 +01:00
Joffrey F ba7fab1709 Changed assertIn to assertTrue(... in ...) (2.6 support) 2014-11-03 20:49:44 +01:00
Joffrey F c4bb57286a Merge branch 'filters' of github.com:irachex/docker-py into irachex-filters
Conflicts:
	docker/utils/__init__.py
	docker/utils/utils.py
	tests/utils_test.py
2014-11-03 20:07:04 +01:00
Joffrey F 213ca7d71d Merge branch 'feature_logs-tail' of github.com:totem/docker-py into totem-feature_logs-tail
Conflicts:
	docker/client.py
	tests/fake_api.py
2014-10-30 15:07:58 +01:00
Joffrey F 92d1c8e77c Merge pull request #379 from tutumcloud/logs_tail
Added tail behaviour to logs command, same as CLI v1.3 (latest)
2014-10-30 14:57:12 +01:00
Joffrey F 9b63cc548a Merge pull request #324 from infoxchange/clear-unixconn-pool
Clear UNIX connections pool to avoid ResourceWarnings
2014-10-30 13:49:40 +01:00
Joffrey F 1f4597e64f Merge pull request #360 from proppy/kwargs-from-env
utils: add kwargs_from_env
2014-10-29 19:37:50 +01:00
Joffrey F 37c8072f60 Merge branch 'pause-unpause' of github.com:phensley/docker-py into phensley-pause-unpause
Conflicts:
	README.md
	tests/integration_test.py
	tests/test.py
2014-10-29 19:35:05 +01:00
Johan Euphrosine 74e7a67898 utils: add kwargs_from_env 2014-10-29 10:05:49 -07:00
Joffrey F 75d8ff16e4 Merge branch 'support-devices' of github.com:dims/docker-py into dims-support-devices
Conflicts:
	README.md
2014-10-29 17:23:42 +01:00
Joffrey F e0d6b267ee Merge branch 'exec' of github.com:phensley/docker-py into phensley-exec
Conflicts:
	README.md
2014-10-29 17:19:27 +01:00
Joffrey F ca6fc27740 Merge pull request #306 from groundeffect/master
Add support for 'cpuset'
2014-10-29 17:01:01 +01:00
Alberto 5c06bc7f49 Added tail behaviour to logs command, same as CLI v1.3 (latest) 2014-10-27 18:31:47 +01:00
Davanum Srinivas 7a917cc7a0 Ability to specify Host Devices during container start
The command line and daemon started supporting --device
parameter during docker start a while ago in the following commit:
docker/docker@e855c4b

Since the command line looks like this,
--device=[] Add a host device to the container (e.g. --device=/dev/sdc:/dev/xvdc)
This patch allows a list of strings to be passed into the start() method
and we parse out the 3 components just like in the above mentioned commit
2014-10-24 11:43:30 -04:00
Patrick Hensley b365796439 Use shlex for exec string cmd, added integration testcase. 2014-10-22 13:44:41 -04:00
Søren Gjesse 71b26b7167 Remove accidental changes to integration_test.py 2014-10-21 14:17:39 +02:00
Søren Gjesse 60edfe84b8 Add directories to the Docker context
This change adds both files and directories to the tra-file for the
Docker context. Previously only files where added.

The context will now also contain empty directoryes and symlinks
to directories.
2014-10-21 14:01:57 +02:00
Patrick Hensley e70f985b31 Fix typo in exec url. 2014-10-18 11:35:16 -04:00
Patrick Hensley f95c8c4dfc Unit and integration tests for exec. 2014-10-17 16:06:14 -04:00
Huayi Zhang 589e7006d5 Add support for filtering images and containers
[`filters` is a json encoded value of the filters (a map[string][string]) to process on the images list. ][1]
The tricky thing is that we must convert boolean value to string and any filter value to list to make a `map[string][string]` json format

[1]: https://docs.docker.com/reference/api/docker_remote_api_v1.14/#list-images
2014-10-05 23:18:48 +08:00
Patrick Hensley 288e53b28b Unit and integration tests for pause/unpause. 2014-10-04 23:46:33 -04:00
Alexey Kotlyarov aff1fbc506 Test resource warnings when using the client 2014-09-22 16:24:23 +10:00
Joffrey F ff8c9bb5fd Fixed integration tests 2014-09-08 17:22:32 +02:00
Christian Hammerl 9523950829 add support to add or drop capabilities 2014-09-04 23:15:47 +02:00
davy 4388157fef Added support for 'cpuset' 2014-08-27 13:38:27 +02:00
Shreyas Karnik c6046ac137 first cut of restart policy 2014-08-26 21:35:04 -05:00
sukrit007 c27a459e61 Add support for tailing logs (introduced in API : v1.13)
Updated default version to v1.13
2014-08-22 16:32:48 -07:00
Joffrey F 9999cb0663 pep8 fix 2014-08-22 17:08:57 +02:00
Cameron Maske 5800c4ab06 Allow pushing a single tag.
Closes #282
2014-08-22 10:14:51 -04:00
Joffrey F dba1c45454 Merge pull request #291 from yograterol/master
Volumes parameter on create_container should be validated as string
2014-08-22 13:12:41 +02:00
Maxime Petazzoni 97366f6b60 Stop timeout should be added to the request timeout
Using the max of the stop timeout and request timeout did not entirely
make sure that a stop timeout greater than a request timeout wouldn't
fail prematurely with a HTTPTimeout exception. The correct behavior is
to add the timeouts together, as the stop timeout is understood to be
part of the "request processing time". Any transport-level timeout thus
comes in addition to that.

Signed-off-by: Maxime Petazzoni <max@signalfuse.com>
2014-08-19 10:37:54 -07:00
Yohan Graterol 28e27eb81a Create test for volume as string 2014-08-17 02:42:35 -05:00
Leonid Mirsky 98a4aa994c Adding tests for mem_limit string conversion + adding default unit 2014-08-05 22:02:02 +03:00
Joffrey F e2ac293c1e Merge pull request #280 from emonty/remove_auth_from_tests
Protect push tests from environment
2014-07-23 20:26:02 +02:00
Joffrey F 8e45264907 Merge pull request #268 from brutasse/265-dockerignore
Add support for .dockerignore
2014-07-23 20:25:07 +02:00
Bruno Renié 87b4d327d1 Add support for .dockerignore
Fixes #265.

Implementation is a bit more elaborate than docker's implementation and
matches with the one proposed in dotcloud/docker#6869 to handle permission
issues more nicely.
2014-07-23 15:05:53 +02:00
Monty Taylor 5f2c3de6bb Protect push tests from environment
If the tests are run somewhere that somebody has push auth
configured, the auth headers bleed into the tests. Add a mock
to prevent that from happening.
2014-07-22 10:26:46 -07:00
Joffrey F ed2b4581d7 Merge pull request #259 from dotcloud/166-complete-parse-host
Support same URL schemes as Docker
2014-07-09 17:34:25 +02:00
Michael Merickel e15b3bb689 allow docker client to connect to a remote host
to run the tests on a host without using the default unix socket, it's
now possible to specify:

    DOCKER_HOST=tcp://localdocker:4243 env/bin/python setup.py test
2014-07-07 10:03:42 -05:00
Michael Merickel 272c1f8634 support specifying location of temp folders
TestWithBinds was failing when shared folders are used because /tmp was
not shared from OS X to my VM. This fix allows the location of the temp
folders to be changed via:

    TMPDIR=$(pwd) env/bin/python setup.py test

This also properly cleans up temp folders which were sticking around
before.
2014-07-05 14:44:14 -05:00
Michael Merickel b5e75c4019 fix ListContainers which was failing with "executable true; not found" 2014-07-05 14:20:11 -05:00
Joffrey F d33ba883f1 Fixed base_url related tests 2014-07-03 04:16:08 +02:00
Joffrey F cf050d28a0 Implemented complete parse_host method to handle all accepted values of Client's base_url. Unit tests 2014-07-03 04:11:34 +02:00
Ali Vakilzade ea728c1bd5 get size from Client.containers 2014-06-22 21:10:28 +04:30
d11wtq 1ec551cbe7 Add resize() method to Client 2014-06-21 12:21:44 +00:00
Joffrey F 8a63e70bca Updated/fixed integration tests. Moved 'pull busybox' out of setUp(). Commented out logs streaming test 2014-06-20 20:57:29 +02:00
Joffrey F be0afebc98 Update unit tests to use API v1.12 2014-06-20 20:55:49 +02:00
Joffrey F de066a1ae6 Python, not Go 2014-06-17 03:21:42 +02:00
Joffrey F fb11abc8c6 Merge pull request #236 from rail44/feature-support-get-and-load-image
Support get and load image
2014-06-17 02:24:30 +02:00
Satoshi Amemiya 9461035d49 Support get and load image 2014-06-02 16:41:52 +09:00
Sam Riley d34b78aac5 Fix joining of unicode and byte strings in python3.
Check logs response in unit tests, and fix log integration tests for
py3.
2014-06-01 09:01:42 +01:00
Joffrey F c2b259009a Updated unit tests 2014-05-28 02:03:10 +02:00
Maxime Petazzoni 55b93d676b Merge pull request #210 from aanand/universally-compatible-chunking
Universally-compatible reading of chunked streams
2014-05-21 11:06:23 -07:00
Joffrey F 97c9de0203 Merge pull request #221 from tutumcloud/memoryswap
memory swap limit support
2014-05-13 21:30:41 +02:00
Bernardo 7497daf34a memory swap limit support 2014-05-11 17:45:15 -04:00
Joffrey F 9bb292bcbd Merge pull request #209 from tarnfeld/feature/build-context
Added ability to specify the full build context
2014-04-28 20:51:46 +02:00
Aanand Prasad 073fdaf671 Universally-compatible reading of chunked streams
Docker introduced newlines in stream output in version 0.9
(https://github.com/dotcloud/docker/pull/4276), but not to all
endpoints - POST /images/create, for example, does not include them.

This reverts to the old, less pleasant implementation of
_stream_helper(), with a manual check for newlines to fix the problem
described in #176 and fixed in #184, without the accompanying
regression. It should work against Docker 0.8, 0.9 and 0.10, both when
building and when pulling.
2014-04-28 17:22:14 +01:00
Aanand Prasad fdd39a85cc Fix integration test regression
The test for starting a container with volume binds hadn't been updated
to use the new dictionary structure for the `binds` argument.
2014-04-28 17:18:39 +01:00
Joffrey F 6c1f7f3e97 Merge pull request #198 from fcoelho/fix-volumes-from
Sanitize create_container input for volumes_from
2014-04-23 19:47:07 +02:00
Tom Arnfeld 8acff57f6a Added test for gzip compressed tar 2014-04-23 13:42:05 +01:00
Tom Arnfeld 45ef4ab931 Fix for pep8 failures 2014-04-23 13:36:36 +01:00
Tom Arnfeld 8983fa561c Added ability to specify the full build context 2014-04-23 13:18:50 +01:00
Ryan Wallner 77fec67c60 fixes #175, fix flake8 erros 2014-04-16 14:40:08 -04:00
Felipe Bessa Coelho 3fa6f231fa Missed empty line for flake8 2014-04-09 13:24:57 -03:00
Felipe Bessa Coelho 16ad8198a9 Add test to check for the absence of volumes_from 2014-04-09 13:10:08 -03:00
Evgeniy L 18d4db09ec Moved APIError exception to docker.errors module. 2014-04-07 13:31:13 +04:00
shin- 8eedbc895e Fixed integration tests 2014-04-04 18:16:47 +02:00
shin- a37d0eea16 Added unit test for create_container with volumes_from 2014-04-04 17:11:00 +02:00
shin- ad75b37a46 Merge branch 'volumes-from-as-list' of github.com:blackrobot/docker-py into blackrobot-volumes-from-as-list 2014-04-04 16:59:57 +02:00
shin- 54c904f806 Updated unit tests API version, flake8 fixes 2014-04-04 16:55:01 +02:00
Joseph Schorr 156d14efd1 Revert unneeded change 2014-04-04 16:47:23 +02:00
Joseph Schorr 9ae3bcd2f3 Make sure the build command in the client sends the auth credentials along. Required for "FROM " lines that pull from private registries 2014-04-04 16:47:23 +02:00
Damon Jablons cdd52a172f Added test for container with volumes_from 2014-04-01 16:08:25 -04:00
Evgeniy L 2a1484f655 Fixes for flake8
Next rules were broken
* E265 block comment should start with '# '
* E713 test for membership should be 'not in'
2014-03-28 23:08:22 +04:00
Luka Stojanovic 74499e21e4 make flake happy 2014-03-24 16:10:31 +01:00
Luka Stojanovic 030516eb29 parse_repository_tag function and accompanying test 2014-03-24 16:10:31 +01:00
shin- 82f4c271ea Updated integration tests 2014-02-18 19:58:50 +01:00
Maxime Petazzoni 64f4ba90ff Support remote API v1.8 (and make it the default)
Signed-off-by: Maxime Petazzoni <max@signalfuse.com>
2014-02-05 15:25:49 -08:00
Darren Shepherd 8448d0217b Fix unit tests broken by PR #151
Updates newer unit tests to use the http+unix scheme.
2014-01-27 11:25:32 -07:00
Joffrey F 38f3d08114 Merge pull request #151 from ibuildthecloud/http-unix-scheme
Support requests >=2.1.0
2014-01-27 09:49:20 -08:00
Joffrey F 38a5967bfd Merge pull request #145 from aanand/set-stdinonce
If attaching to stdin, set StdinOnce, as per the docker CLI.
2014-01-27 09:43:28 -08:00
Ben Firshman 22f147569b Allow links to specified as (name, alias) tuples 2014-01-27 15:21:44 +00:00
Darren Shepherd cf946ff27b flake8 fixes
Additionally this change should make moving to /v1.8 slightly less painful
2014-01-26 16:52:14 -07:00
Darren Shepherd 89922efbac Support requests >=2.1.0
Starting with requests 2.1.0 non-HTTP scheme URLs are not parsed anymore.
The net effect of this is that when using the unix socket in docker-py no
query string params are passed in the URL.  This change makes docker-py
internally use the scheme http+unix to indicate to requests that this is
still a HTTP URL and should be parsed.

Users of docker-py can still specify 'unix:' as the base_url.  The
following forms of base_url are accepted.

  http+unix://var/run/docker.sock
  unix://var/run/docker.sock
  unix:///var/run/docker.sock
  http://hostname
  tcp://hostname
2014-01-26 16:28:47 -07:00
Aanand Prasad f2285cb899 If attaching to stdin, set StdinOnce, as per the docker CLI. 2014-01-20 18:00:40 +00:00
Ben Firshman 4bc5d27e51 Add working_dir option to create_container 2014-01-19 16:41:40 +00:00
Ben Firshman ab2f7a5e38 Add cpu_shares option to create_container 2014-01-19 16:41:25 +00:00
Ben Firshman 8e8b355acd Add entrypoint option to create_container 2014-01-19 16:41:08 +00:00
shin- 477831334c Merge branch 'master' of git://github.com/dotcloud/docker-py 2014-01-16 20:26:06 +01:00
shin- 8a5cd6ae65 Merge branch 'feature/image-import' of github.com:tarnfeld/docker-py into tarnfeld-feature/image-import 2014-01-16 20:22:33 +01:00
Joffrey F 4bf75ded43 Merge pull request #119 from ureyes84/master
Updated port function
2014-01-16 11:19:34 -08:00
Maxime Petazzoni dad95ba679 Default to /tcp for port definitions in create_container()
Fixes #141.

Signed-off-by: Maxime Petazzoni <max@signalfuse.com>
2014-01-16 10:23:02 -08:00
Maxime Petazzoni 32ad01e110 Rework auth config loading and use of auth data for login/pull/push
Signed-off-by: Maxime Petazzoni <max@signalfuse.com>
2014-01-07 15:30:50 -08:00
Nada Amin d1427d38be Option to disable network when creating container. 2014-01-03 16:20:45 +00:00
Maxime Petazzoni ef009e114a Style fixes for flake8
Signed-off-by: Maxime Petazzoni <max@signalfuse.com>
2013-12-24 10:07:25 -08:00
Fedor Korotkiy 09f95768f3 Fix infinite loop in Client.logs(stream=True) caused by connection close. 2013-12-24 12:01:16 +00:00
Ulises Reyes d8e0f5a66f Improves code style 2013-12-15 20:42:58 -05:00
Ulises Reyes 844e41088e Refactored test. It now makes 2 calls to port 2013-12-15 02:11:02 -05:00
Ulises Reyes daa3a1e2ef Shortened lines 2013-12-14 22:28:45 -05:00
Ulises Reyes a7c1449757 Improved assertions in the port test 2013-12-14 22:24:19 -05:00
Ulises Reyes f5924c3863 Updated the port function in order to parse the new NetworkSettings Port dict (fixes #88) 2013-12-14 22:00:08 -05:00
shin- 5c928dcab5 Fixed start_container_with_port_binds test 2013-12-13 15:47:24 +01:00
shin- 64781888e0 Merge branch 'privilege' of github.com:yukw777/docker-py into yukw777-privilege
Conflicts:
	README.md
	tests/test.py
2013-12-13 15:46:54 +01:00
Maxime Petazzoni 4bc4ee3cf0 Log streaming and correct decoding of multiplexed log streams
Implement log streaming with the stream parameter on logs(), returning a
generator of log lines based on the selected streams (stdout/stderr).
Also correctly decode the multiplexed log streams (current version was
buggy).

Signed-off-by: Maxime Petazzoni <max@signalfuse.com>
2013-12-12 22:26:17 -08:00
shin- 89f2c58918 Improved port binding conversion rules, fixed bugs, added unit tests 2013-12-09 17:45:12 +01:00
Tom Arnfeld 50337f8628 Added failing test for importing an image via name instead of src 2013-12-06 23:00:28 +00:00
Maxime Petazzoni 4c4bd95429 Ensure sorted order on links to make unit test deterministic
Signed-off-by: Maxime Petazzoni <max@signalfuse.com>
2013-12-06 15:31:15 +00:00
Maxime Petazzoni 8c4c7c3d49 Ensure sorted order on links to make unit test deterministic
Signed-off-by: Maxime Petazzoni <max@signalfuse.com>
2013-11-19 13:37:03 -08:00
Peter Yu e361f4c1cd Privileged option is part of host config, not config 2013-11-18 21:47:33 +00:00
shin- 35d3a3c977 Merge branch 'timeout-support' of github.com:mpetazzoni/docker-py into mpetazzoni-timeout-support
Conflicts:
	docker/client.py
	tests/integration_test.py
	tests/test.py
2013-11-15 21:44:18 +01:00
shin- e694d5af3e Merge branch 'v65-2' of github.com:yukw777/docker-py into yukw777-v65-2
Fixed some tests

Conflicts:
	docker/client.py
	tests/fake_api.py
	tests/integration_test.py
	tests/test.py
2013-11-15 19:53:10 +01:00
shin- c0f84ceac0 Fix privileged test 2013-11-15 19:06:19 +01:00
shin- 34df4e5343 Fixed auth stuff for Python 3 2013-11-15 18:38:09 +01:00
shin- 2828833607 Merge branch 'master' of github.com:dotcloud/docker-py into yukw777-link
Fixed test_pull and test_pull_stream (don't assume headers content is empty)

Conflicts:
	tests/test.py
2013-11-15 18:21:49 +01:00
Daniel Graña 8561544e30 Add signal argument to kill command 2013-11-14 10:43:57 -02:00
Peter Yu 90d13d5fd2 links implemented. use v1.6 by default now 2013-11-12 16:09:29 +00:00
Maxime Petazzoni cc3c455629 Refactor timeout passing and standardize with keyword parameters
Standardize all HTTP request calls to use keyword parameters for all but
the URL. This makes the refactoring of including the timeout in these
requests' parameters easier and more uniform-looking. Tweaks to the
tests to comply with this new parameter passing scheme, in particular to
the API calls assertions.

Signed-off-by: Maxime Petazzoni <max@signalfuse.com>
2013-11-11 14:02:49 -08:00
shin- 14946ed56b Small test fix 2013-11-11 20:46:50 +01:00
shin- 5b766fc33d Merge branch 'master' of github.com:dotcloud/docker-py 2013-11-11 20:25:41 +01:00
shin- 4f6f475fd5 Merge branch 'stream-pull-request' of github.com:yukw777/docker-py into yukw777-stream-pull-request 2013-11-11 19:48:52 +01:00
Peter Yu 6c2820835e many tests have been implemented 2013-11-10 02:14:53 +00:00
Peter Yu 97771b1b2b links implemented. use v1.6 by default now 2013-11-10 00:27:10 +00:00
Jessica Gadling 70a5c9b0ca Support the new PublishAllPorts flag. 2013-11-08 21:07:18 -08:00
Maxime Petazzoni a451119e4a Allow for configurable timeout on all client requests
Signed-off-by: Maxime Petazzoni <max@signalfuse.com>
2013-11-08 15:19:51 -08:00
yukw777 fdd48cff81 pull, push, build are streamable 2013-11-08 21:08:46 +00:00
shin- 2e66ca8a6c assertIn not supported in py26 2013-11-08 20:43:09 +01:00
shin- 1d1395464c Merge branch 'auth-load-config-fix' of github.com:mpetazzoni/docker-py into mpetazzoni-auth-load-config-fix 2013-11-08 20:38:01 +01:00
yukw777 e0df0c7ad2 pull, push, build are streamable 2013-11-08 19:22:23 +00:00
shin- 8309ae7896 Added unit test for named containers 2013-11-08 19:34:30 +01:00
shin- 78667c19a8 Merge branch 'named-container-create' of github.com:mpetazzoni/docker-py into mpetazzoni-named-container-create 2013-11-08 19:28:35 +01:00
shin- f6159b5593 Fixed lxc_conf param in Client.start to accept dict configurations. Fixes #84 2013-11-08 18:58:10 +01:00
Maxime Petazzoni 9871f8d9ac Don't fail loading the configuration when .dockercfg doesn't exist
Signed-off-by: Maxime Petazzoni <max@signalfuse.com>
2013-11-07 15:38:53 -08:00
Maxime Petazzoni afb349d257 Add integration test for named container creation
Signed-off-by: Maxime Petazzoni <max@signalfuse.com>
2013-11-07 15:37:41 -08:00
shin- acd2607407 Flake8 compliance + flake8 tests in tox.ini 2013-10-15 21:15:01 +02:00
shin- 0808905636 Refactoring, Python 3 compatibility, Tests working with python 3, cleaned up imports. 2013-10-15 19:19:20 +02:00
Deni Bertovic 128cdb9112 fixed test list_containers to account for upstream changes 2013-10-03 11:56:44 +02:00
Deni Bertovic afbfc703ca integration test fix
make the mount point for shared.txt reside in the /tmp/ folder
because if it resides in the lib folder docker sets the owner of the
folder as root inside the container so then when the container exists
the test fails to cleanup and remove the shared.txt file, and breaks git as well.
2013-10-03 11:55:02 +02:00
Deni Bertovic 1ce8dc962c python3 fixes
Fixed imports to be compatible with python3 on various places in the client lib
and in the tests themselves.
2013-10-03 11:55:02 +02:00
Deni Bertovic 7fbc41ea7f removed unused FAKE_INSPECT_DATA 2013-10-03 11:51:12 +02:00
Deni Bertovic 7c80127eb7 refactored tests
Using the mock library. Checking that every Client method gets
tested for not raising an Exception and for construting the request
params correctly.
2013-10-03 11:51:12 +02:00
Deni Bertovic 80e11964f1 initial import of unit test and mocks for the docker api 2013-10-03 11:51:12 +02:00
Deni Bertovic 8047fb4cb4 reamed test.py to integration_test.py 2013-10-03 11:51:12 +02:00
shin- e2e5b9e0fd Merge branch 'master' into 0.2.0-dev 2013-09-12 00:00:06 +02:00
shin- c8e5a6dab1 Methods that previously supported multi-args are now single-argument. Doc and tests updated accordingly. 2013-09-11 23:44:58 +02:00
shin- c132d2b70d Fixed tests 2013-09-11 21:20:42 +02:00
shin- 9a92d68cf1 Merge branch 'better-error-reporting' of git://github.com/aanand/docker-py into 0.2.0-dev
Conflicts:
	docker/__init__.py
	docker/client.py
2013-09-11 21:14:42 +02:00
shin- 208fb0366f Use pseudo-constant for index URL 2013-09-10 20:38:14 +02:00
shin- 26933543fe Added license header to .py files 2013-09-10 20:34:03 +02:00
shin- 99c9eadc82 Cleanup, externalized into modules, fixed auth 2013-09-10 20:31:03 +02:00
Deni Bertovic f032ecfe47 Fixed #33 - make client commands more consistent 2013-09-04 15:53:37 +02:00
Evan Hazlett ea087b7b15 added privileged container support 2013-08-30 09:35:09 -04:00
shin- c0d8b2ef09 Fixed tests 2013-08-28 18:39:26 +02:00
shin- 17a6994e43 Docker client now tries to load the auth config. This is necessary to use the push command if API version is >1.0 2013-08-06 19:57:20 +02:00
shin- 4f7872da87 Fixed tests 2013-07-25 20:18:38 +02:00
shin- 7e415dd234 Fixing failed merge 2013-07-15 19:04:24 +02:00
shin- 4488be3678 Fixed tests 2013-07-15 19:02:48 +02:00
Mike Neilsen b981f9a6de Create tests module for setuptools test support
Run test suite via

  python setup.py test

Signed-off-by: Mike Neilsen <mneilsen@acm.org>
2013-07-13 01:07:04 -05:00
Enrico cf47df1b3e Removed duplicated import. 2013-07-11 18:05:19 -03:00
Enrico a863acce87 Added ability to create binds when starting a container. 2013-07-11 17:54:36 -03:00
Enrico 2551105320 Merge branch 'upstream-master' into bind-mounts
Conflicts:
	tests/test.py
2013-07-05 16:23:37 -03:00
Enrico c2a145c2d8 Added ability to create binds when starting a container. 2013-07-05 15:25:52 -03:00
Joffrey F d03d4fb5ca Merge pull request #15 from elbaschid/add_python3_support
Make docker-py compatible with python 3
2013-07-05 10:31:24 -07:00
shin- 2c186304a8 Added test for Client.build 2013-07-05 19:04:38 +02:00
Sebastian Vetter 48ed4a1d2e Add python 3 support 2013-07-06 00:32:28 +10:00
shin- b7e1ac7069 Fixed logs command 2013-07-03 22:19:41 +02:00
shin- e62bc3bd92 Small test fixes 2013-07-03 21:49:31 +02:00
shin- 66d22c9bba Tests for execution control, run commands as strings, commit/pull (still WIP) 2013-06-24 21:31:59 +02:00
shin- 3305949257 (WIP) Added unit tests 2013-06-21 19:59:36 +02:00