Commit Graph

725 Commits

Author SHA1 Message Date
Daniel Nephin 417c80057b Support unicode commands.
Signed-off-by: Daniel Nephin <dnephin@gmail.com>
2015-10-26 17:22:14 -04:00
Antonis Kalipetis a11c11430a Add suport for non-stream stats of containers
Adds one more flag to the `stats` method for streaming responses.
Keeps default as streamed response for backwards compatibility.

Signed-off-by: Antonis Kalipetis <akalipetis@gmail.com>
2015-10-22 10:23:53 +00:00
Joffrey F 0258c6e622 Update `Client.create_volume` to use new endpoint
New API endpoint is POST /volumes/create (previously just /volumes)
Since the feature is yet unreleased (RC), no fallback strategy is
implemented.

Signed-off-by: Joffrey F <joffrey@docker.com>
2015-10-21 13:51:09 -07:00
Joffrey F 326049c8bb Fix Unix adapter bug with newer versions of requests
The select_proxy utility in requests errors out when the provided URL
doesn't have a hostname, like is the case when using a UNIX socket.
Since proxies are an irrelevant notion in the case of UNIX sockets
anyway, we simply return the path URL directly.

Signed-off-by: Joffrey F <joffrey@docker.com>
2015-10-19 16:55:49 -07:00
Joffrey F fad509b3bd Back to dev version
Signed-off-by: Joffrey F <joffrey@docker.com>
2015-10-19 16:55:24 -07:00
Stephen Moore 7f3692ceed Fix attach method over SSL connections
Signed-off-by: Stephen Moore <stephen@delfick.com>
2015-10-14 17:29:31 -07:00
Joffrey F b1f25317de Use DOCKER_CONFIG environment variable to look up auth config
When provided, default paths are ignored.

Signed-off-by: Joffrey F <joffrey@docker.com>
2015-10-14 17:26:50 -07:00
Joffrey F 9697923bca Update changelog and bump version to 1.5.0
Signed-off-by: Joffrey F <joffrey@docker.com>
2015-10-14 17:26:50 -07:00
Joffrey F a3a345e2f6 Use url-safe base64 when encoding auth header
+ regression test

Signed-off-by: Joffrey F <joffrey@docker.com>
2015-10-14 17:26:50 -07:00
Joffrey F 147df4d21f put/get archive implementation
Signed-off-by: Joffrey F <joffrey@docker.com>
2015-10-14 17:26:50 -07:00
Joffrey F d141976303 Add minimum_version decorators on NetworkApi methods
Signed-off-by: Joffrey F <joffrey@docker.com>
2015-10-14 17:26:50 -07:00
Aanand Prasad 53589e5f0a Implement methods for managing networks
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-10-14 17:26:50 -07:00
Joffrey F a1393ee8ac 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-10-14 17:26:50 -07:00
Viacheslav Boiko 4a2db828b4 Support the 'since' option in the 'containers/<id>/logs' endpoint
Signed-off-by: Viacheslav Boiko <v.e.boyko@gmail.com>
2015-10-02 06:19:06 +00: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
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
Pierre Fersing 2d4a71df2e Allow to specify ps_args when listing processes
Signed-off-by: Pierre Fersing <pierre.fersing@bleemeo.com>
2015-09-25 16:58:27 +02:00
Joffrey F 3c5185c199 Check API version when using cpu_period and cpu_quota
Signed-off-by: Joffrey F <joffrey@docker.com>
2015-09-24 10:08:02 -07:00
Joffrey F 3ee30ed5e4 Add support for cpu_quota and cpu_period in host_config
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 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 46eb23b4f3 Basic volume API implementation.
Signed-off-by: Joffrey F <joffrey@docker.com>
2015-09-15 20:01:55 +02:00
Joffrey F 1b798a2901 GroupAdd tests
Signed-off-by: Joffrey F <joffrey@docker.com>
2015-09-15 01:58:06 +02:00
Joffrey F 0610efbce0 Support group_add param in host config
Signed-off-by: Joffrey F <joffrey@docker.com>
2015-09-15 01:11:11 +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 7a6980d479 Move client internals back to Client class. Remove obsolete ClientBase class
Signed-off-by: Joffrey F <joffrey@docker.com>
2015-09-11 16:19:29 -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 a2daf35cf6 Back to dev version 2015-09-10 15:58:52 -07:00
Joffrey F 9372ef27f8 Updated changelog
Bumped version to 1.4.0

Signed-off-by: Joffrey F <joffrey@docker.com>
2015-09-10 11:07:35 -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 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 add9786955 Use six.text_type 2015-08-31 18:30:13 -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 0f3d7673f3 url-quote user-provided param before inserting in URL. 2015-08-31 14:47:13 -07:00
Joffrey F 63df0b9ab3 Merge branch 'master' of github.com:docker/docker-py 2015-08-26 17:02:55 -07:00
Joffrey F e8af8b376d Use cross-platform home directory path 2015-08-26 17:02:24 -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 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
Aanand Prasad 113901c8e3 Prevent users from attempting to override 'version'
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-08-25 14:34:42 +01:00
Aanand Prasad d9a149f327 Merge pull request #732 from docker/version-dependent-hostconfig
Version dependent hostconfig
2015-08-25 14:03:51 +01:00
Colin Huang edebf3756a Split the entrypoint string to shell-like syntax. 2015-08-25 09:44:47 +08:00
Joffrey F 4bd3c48ea1 Add version param to utils.create_host_config
Add create_host_config and create_container_config to Client for version
awareness
Trigger warning when create_host_config is used without version
2015-08-24 16:22:59 -07:00
Mohit Soni 3caaa0050b Added support for cgroup parent
Clean up cgroup_parent usage
2015-08-24 14:43:05 -07:00
Joffrey F 4008cbce71 Merge pull request #711 from ClusterHQ/exec_inspect_version
Change minimum API version for exec_inspect
2015-08-24 14:19:20 -07:00
Joffrey F cfb20f8d50 Merge pull request #728 from aanand/debug-auth
Add logging for auth loading/resolution
2015-08-24 14:03:14 -07:00
Aanand Prasad b5368ad8b9 Add logging for auth loading/resolution
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-08-20 16:57:40 +01:00
Mark Adams b7aa1d76eb Fixed #726 issue where split_port was checking `len(None)`
- Fixed #726 by adding a check for None in split_port
- Also switched to using a _raise_invalid_port() function to replace
  multiple slightly differing ValueErrors for invalid port
2015-08-19 22:01:44 -05:00
Brian Edwards c135266233 add gelf and fluentd logging drivers to types.py 2015-08-18 14:26:32 -05:00
Joffrey F 570693c810 Allow docker host (base_url) to contain a path 2015-08-17 14:36:19 -07:00
Bridget McErlean 7ba83323b6 Update error message to state that exec_inspect is not supported 2015-08-12 23:24:52 +01:00
Stephen Newey 1c1d7eee5a Merge branch 'master' into exec_create_user 2015-08-12 18:12:56 +01:00
Stephen Newey 2febf104a0 Change unnecessary user=None in args to empty string and remove check. 2015-08-12 18:08:12 +01:00
Bridget McErlean eb29b424b0 Change minimum API version for exec_inspect 2015-08-12 11:53:34 +01:00
Joffrey F 139850f3f3 Merge pull request #698 from docker/jhowardmsft-14530-netmode
`network_mode` now necessary in `host_config`
2015-08-10 10:53:57 -07:00
Joffrey F 1eaf221391 Explicited start config tricks 2015-08-10 10:45:26 -07:00
Aanand Prasad eff21658b3 Merge pull request #703 from erikced/journald-log-driver
Add journald log driver support
2015-08-05 10:25:35 +01:00
Joffrey F 20a7e860b4 unpack key-value pair 2015-08-04 11:31:18 -07:00
Joffrey F 69027f040c dev version 2015-08-04 11:27:36 -07:00
Erik Cederberg 85bdc9c2bd Add journald log driver support
Signed-off-by: Erik Cederberg <erikced@gmail.com>
2015-08-03 19:04:55 +02:00
Viktor Petersson d400717ff8 Squashed commit of the following:
commit 4f053a06c1e9e3f63fd5afde60322f676acbdf45
Merge: 9177380 07a99ea
Author: Viktor Petersson <vpetersson@wireload.net>
Date:   Thu Jul 30 14:37:16 2015 +0100

    Merge branch 'master' into fixes

commit 9177380ae9abf4ca01cf7a2a8b7de6640ed5f5d5
Author: Viktor Petersson <vpetersson@wireload.net>
Date:   Thu Jul 30 14:00:51 2015 +0100

    Tweaks exception message.

commit 6a5832e2f6655835a6b87897d7ec82d6ef5faa50
Author: Viktor Petersson <vpetersson@wireload.net>
Date:   Thu Jul 30 13:17:32 2015 +0100

    Simplifies logic as per feedback.

commit f750eddc34e5356dcfb53c16a7f98a99e817fa53
Author: Viktor Petersson <vpetersson@wireload.net>
Date:   Thu Jul 30 11:09:14 2015 +0100

    Move return from list to dict. Adds exception handling.

commit 8e50f57cceb6370b7f7b41624f50d5a6835301a0
Author: Viktor Petersson <vpetersson@wireload.net>
Date:   Thu Jul 30 10:15:58 2015 +0100

    Reverts change to .gitignore.

commit 5ba2c1b29706ddb74bef9c24c2a6e64bb369db22
Author: Viktor Petersson <vpetersson@wireload.net>
Date:   Wed Jul 29 21:15:21 2015 +0100

    Fixes feedback. Adds three unittests.

commit e1c719e61993fdaec0f22ba0de706af80587dc16
Author: Viktor Petersson <vpetersson@wireload.net>
Date:   Wed Jul 29 17:00:16 2015 +0100

    WIP Adds test for parse_env_file

commit 4448ae72e55d889d9d194a2c0303d182cb157d4c
Author: Viktor Petersson <vpetersson@wireload.net>
Date:   Wed Jul 29 16:42:49 2015 +0100

    Excludes coverage files.

commit 19a5d01615dd9b7ee939f54f256e5bae89a94ee1
Author: Viktor Petersson <vpetersson@wireload.net>
Date:   Wed Jul 29 16:42:42 2015 +0100

    Switch fixes logic.

commit a8094c63a9f4351ae71393ea5603aa11c5c5bc94
Author: Viktor Petersson <vpetersson@wireload.net>
Date:   Wed Jul 29 11:45:56 2015 +0100

    Implements logic for envfile parsing from Docker-cli

    Ref: https://github.com/docker/docker/blob/master/opts/envfile.go#L19-L51

commit ea9bfd95dfafe4023c58ab37f990158f73eb2e0d
Author: Viktor Petersson <vpetersson@wireload.net>
Date:   Wed Jul 29 11:41:23 2015 +0100

    Replaces CSV module with manual splitting.

commit a001d28ff48309d2b2338aaf27253fdfaa0f6c4b
Author: Viktor Petersson <vpetersson@wireload.net>
Date:   Wed Jul 29 11:35:37 2015 +0100

    Removes isinstance on filename.

commit 419d5961f6103df9166be3a9baa549276c12223d
Author: Viktor Petersson <vpetersson@wireload.net>
Date:   Tue Jul 28 22:39:33 2015 +0100

    Reflects @aanand's feedback.

commit e81e3c8ed797ff939843d2485bf15525e85e890d
Author: Viktor Petersson <vpetersson@wireload.net>
Date:   Tue Jul 28 15:43:32 2015 +0100

    Typo fix.

commit 2898389cada2bfca64bdfa71359aebeb3b5b6d1b
Author: Viktor Petersson <vpetersson@wireload.net>
Date:   Tue Jul 28 15:41:08 2015 +0100

    Refs #565. Adds minimal implementation of env_file client-side support.
2015-07-30 14:39:37 +01:00
Joffrey F e32726e83d Moved network_mode default to create_host_config ; small fix to preserve blank host_config in start if no option is provided 2015-07-29 12:45:15 -07:00
Joffrey F 80a97cf2ea development version suffix 2015-07-29 12:40:54 -07:00
Joffrey F be4ea03809 Merge branch '14530-netmode' of https://github.com/jhowardmsft/docker-py into jhowardmsft-14530-netmode 2015-07-29 12:30:53 -07:00
John Howard 8f1a82faeb Add netmode (required by docker)
Signed-off-by: John Howard <jhoward@microsoft.com>
2015-07-28 15:18:12 -07:00
Joffrey F 89c048dc17 Bumped version 2015-07-22 11:23:39 -07:00
Joffrey F f8ad2dabf2 Merge pull request #682 from docker/moutten-fix-build-auth
Switch to send full AuthConfig object for build action
2015-07-22 11:11:21 -07:00
Joffrey F 42b712d100 Merge pull request #680 from aanand/fix-timestamp-conversion
Enforce UTC datetimes in arguments to `events()`
2015-07-21 10:45:29 -07:00
Aanand Prasad 75cc50f0ad Default to ~/.docker if DOCKER_CERT_PATH is empty
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-07-21 16:50:44 +01:00
Aanand Prasad 657420a4d3 Enforce UTC datetimes in arguments to `events()`
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-07-21 10:49:27 +01:00
Joffrey F b712e97d4a Added check_resource decorator to exec_create 2015-07-20 14:17:06 -07:00
Joffrey F 4be228653d Make build auth work with API versions < 1.19 too 2015-07-20 14:06:33 -07:00
Joffrey F 7430eb8e65 Merge branch 'fix-build-auth' of https://github.com/moutten/docker-py into moutten-fix-build-auth 2015-07-20 13:56:29 -07:00
Joffrey F 933ee526ba Merge branch 'master' of github.com:docker/docker-py 2015-07-20 13:52:15 -07:00
Joffrey F 915be6ad67 Use constant for deprecation message in auth.py 2015-07-20 13:50:49 -07:00
Aanand Prasad 33e1a58b60 Stop pinging registries from the client
The daemon already pings the registry, so doing it on our end is
redundant and error-prone.

The `insecure_registry` argument to `push()`, `pull()` and `login()` has
been deprecated - in the latter case, it wasn't being used anyway.

The `insecure` argument to `docker.auth.resolve_repository_name()` has
also been deprecated.

`docker.utils.ping_registry()` has been deprecated.

`docker.auth.expand_registry_url()` has been removed.

Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-07-20 19:50:18 +01:00
Matt Outten ebcfab0a4c Switch to send full AuthConfig object for build action
In order to support the docker API for version 1.7+, this command
changes the way the `X-Registry-Config` header is sent when attempting
to build an image.
2015-07-17 15:48:52 -04:00
Lars Kellogg-Stedman 2e546f7e26 return NotFound on 404 errors
This changes raises docker.errors.NotFound on 404 errors.  This gives
client code the ability to differentiate between "an image does not
exist" and "you are using the api incorrectly".

This inherits from docker.errors.APIError so it will not affect any
existing code.
2015-07-17 08:31:54 -04:00
Joffrey F 96a5b29a4a Merge branch 'fix-premature-eof' of https://github.com/a-ba/docker-py into a-ba-fix-premature-eof
Conflicts:
	docker/client.py
2015-07-09 11:12:01 -07:00
Joffrey F c846d7e1b5 Back to dev version 2015-07-09 11:09:48 -07:00
Joffrey F 7d85f68460 Bumped version to 1.3.0 2015-07-08 15:08:35 -07:00
Joffrey F 826c9e676a Removed execute() method 2015-07-08 15:08:13 -07:00
Dan O'Reilly 70b921f8a3 Fix handling output from tty-enabled containers.
Treat output from TTY-enabled containers as raw streams, rather than
as multiplexed streams. The docker API docs specify that tty-enabled
containers don't multiplex. Also update tests to pass with these
changes, and changed the code used to read raw streams to not
read line-by-line, and to not skip empty lines.

Addresses issue #630

Signed-off-by: Dan O'Reilly <oreilldf@gmail.com>
2015-07-06 18:20:41 -04:00
Joffrey F 4f89ca73da ClientBase class to extract utility methods and constructor and sanitize Client class 2015-07-01 00:27:49 +02:00
Joffrey F 2d7f1cfa1e Merge pull request #651 from docker/fix_647
Fix adapter bug + regression test
2015-06-30 15:19:14 -07:00
Joffrey F ac90a874be Merge pull request #644 from docker/memory-memswap-hostconfig
memory / memswap in hostconfig
2015-06-30 15:06:32 -07:00
Joffrey F 9e87884ba8 Fix Unix socket adapter bug with double slash in path + regression test 2015-06-30 23:59:03 +02:00
Maxime Petazzoni c8c957c983 Merge pull request #661 from docker/fix_640
Added git@ as a valid prefix for remote build paths
2015-06-30 14:40:11 -07:00
Stephen Newey a12818a8a8 Add user argument to exec_create documentation. 2015-06-30 13:41:22 +01:00
Stephen Newey 6a5a256509 Add support for user on exec_create. 2015-06-30 13:23:42 +01:00
Joffrey F b959487117 Added git@ as a valid prefix for remote build paths 2015-06-30 03:00:10 +02:00
Joffrey F d300f5f323 Merge pull request #654 from Melraidin/master
Prefer new Docker config location and format.
2015-06-29 17:54:02 -07:00
Joffrey F 5375433058 Fix small decorator issue 2015-06-30 02:50:34 +02:00
Joffrey F c2d98c204b Cleanup 2015-06-30 01:49:20 +02:00