Commit Graph

308 Commits

Author SHA1 Message Date
Aanand Prasad c66c2d6fa5 Fix linting error
This seems to have been ignored by older versions of flake8, and fixed
in version 3.1.0 or 3.1.1.

Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2016-11-14 18:20:13 +00:00
Tomas Tomecek 9a485b30ee ssl,test: OpenSSL may not support ssl2
Fixes #1265

Signed-off-by: Tomas Tomecek <ttomecek@redhat.com>
2016-11-14 09:05:26 +01:00
Ben Firshman 3c7c231983
Fix broken unit test
Introduced by https://github.com/docker/docker-py/pull/1230

Signed-off-by: Ben Firshman <ben@firshman.co.uk>
2016-11-07 12:20:20 -08:00
Joffrey F f745c8e7c5 Merge pull request #1230 from LabattFoodService/updateNode
enable setting of node labels #1225
2016-11-07 10:47:55 -08:00
Walker Lee a3981f891d
Add docker network IPAM options parameter
Signed-off-by: Walker Lee <walkerlee.tw@gmail.com>
2016-10-27 00:17:05 +08:00
Joffrey F cec3fe7c31 Update tests to avoid failures on Windows platforms
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-10-14 16:02:28 -07:00
Joffrey F 14634fb50a Merge pull request #1256 from docker/format_env_unicode_bug
Do not break when calling format_environment with unicode values
2016-10-13 12:39:47 -07:00
Joffrey F 059f61bf5a Do not break when calling format_environment with unicode values
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-10-12 17:52:43 -07:00
Joffrey F 05f1060824 Remove trailing slashes in result of utils.parse_host
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-10-12 16:06:43 -07:00
Ben Firshman 69e992ec48
Move requires_api_version to helpers
Because it's a helper, not a base thing. In preparation for
moving/deleting the unit test base classes.

Signed-off-by: Ben Firshman <ben@firshman.co.uk>
2016-10-03 11:58:08 +01:00
Joffrey F 49997d040b Add support for isolation param in host config
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-09-29 16:34:36 -07:00
Nathan Shirlberg 6ef14932d0 enable setting of node labels #1225
Added update_node function to enable setting labels on nodes.  This
exposes the Update a Node function from the Docker API and should
enable promoting/demoting manager nodes inside a swarm.

Signed-off-by: Nathan Shirlberg <nshirlberg@labattfood.com>
2016-09-27 11:26:26 -05:00
Joffrey F 1e939be5fb Merge pull request #1210 from docker/identity-token-support
Add support for identity tokens in config file
2016-09-16 11:47:48 -07:00
Joffrey F d731a4315c Add support for identity tokens in config file.
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-09-15 14:28:09 -07:00
Ben Firshman 6220636536
Fix a few pep8 issues
autopep8 --in-place --recursive --experimental -aaa --ignore E309 .

Signed-off-by: Ben Firshman <ben@firshman.co.uk>
2016-09-14 16:54:54 +01:00
Ben Firshman 0cdf737625
Fix unit test which doesn't do anything
It also overrode the fake API inspect endpoint with a broken
response.

Signed-off-by: Ben Firshman <ben@firshman.co.uk>
2016-09-07 11:40:19 +02:00
Ben Firshman 3769c089e8
Fix licenses
* Complete main LICENSE
* Remove unnecessary licenses from individual files

Signed-off-by: Ben Firshman <ben@firshman.co.uk>
2016-09-05 17:48:09 +02:00
Joffrey F 6552076856 Add support for force disconnect
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-08-31 18:44:36 -07:00
Joffrey F 24bfb99e05 Merge pull request #1167 from docker/1075-from-env-version
Support version parameter in `Client.from_env`
2016-08-25 14:59:46 -07:00
Joffrey F 764d7b38c4 Support version parameter in `Client.from_env`
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-08-25 14:44:13 -07:00
Joffrey F 2ef02df2f0 Merge pull request #1168 from docker/aiden0z-master
Support pids_limit in HostConfig
2016-08-25 14:38:22 -07:00
fermayo 5bedd32a69 Fix creating containers with env vars with unicode characters
Signed-off-by: Fernando Mayo <fernando@docker.com>
2016-08-25 13:36:02 +02:00
Joffrey F 902c7a76cc Docs and tests for pids_limit.
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-08-23 17:05:08 -07:00
Joffrey F fb41965272 Merge pull request #1082 from masci/fix_stream_helper
Invoke self._result passing `json=True` when `decode=True`
2016-08-23 15:34:35 -07:00
Kay Yan fc72ac66e9 support MemoryReservation and KernelMemory
Signed-off-by: Kay Yan <kay.yan@daocloud.io>
2016-08-23 15:32:06 -07:00
Joffrey F 797f1edc20 Merge branch 'master' of https://github.com/srikalyan/docker-py into srikalyan-master 2016-08-23 15:16:15 -07:00
Joffrey F 0e4314a872 Merge branch 'jp-cpushares' of https://github.com/joshpurvis/docker-py into joshpurvis-jp-cpushares 2016-08-23 15:12:30 -07:00
Joffrey F 0acdd19665 Merge pull request #1131 from Knetic/dnsopts
Implemented dns_opt support (from api 1.21)
2016-08-23 15:04:25 -07:00
Josh Purvis 7d147c8ca1 Move cpu_shares and cpuset_cpu to HostConfig when API >= 1.18
Signed-off-by: Josh Purvis <joshua.purvis@gmail.com>
2016-08-15 16:33:58 -04:00
Tomas Tomecek 08b284ab39 docker client consistency: don't quote ':/'
E.g.

docker client

`/v1.21/images/localhost:5000/busybox/push?tag=`

docker-py

`/v1.21/images/localhost%3A5000%2Fbusybox/push`

Signed-off-by: Tomas Tomecek <ttomecek@redhat.com>
2016-08-10 09:30:19 +02:00
George Lester 93b4b4134e Implemented dns_opt support (from api 1.21)
Signed-off-by: George Lester <glester491@gmail.com>
2016-08-07 14:23:22 -07:00
Joffrey F ae7cb4b99f Avoid crashing in update_headers decorator when headers kwarg is None
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-08-02 17:25:50 -07:00
Jari Takkala dec29e1c10 Add support for sysctl when creating container
Closes #1144

Signed-off-by: Jari Takkala <jtakkala@gmail.com>
2016-08-01 23:43:52 +01:00
Joffrey F 723d144db5 Add support for IPv6 docker host connections.
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-07-27 18:42:14 -07:00
Aanand Prasad 0e68b0a429 Default to npipe address on Windows
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2016-07-26 11:39:09 +01:00
Keerthan Reddy Mala 1294d3c410
Add unit tests
Signed-off-by: Keerthan Reddy Mala <kmala@deis.com>
2016-07-22 10:04:32 -06:00
Ben Firshman bd73225e14
Set custom user agent on client
Signed-off-by: Ben Firshman <ben@firshman.co.uk>
2016-07-20 15:04:54 -07:00
Joffrey F e64ba8f2b9 Mock read_from_socket method
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-07-13 17:08:17 -04:00
David Gageot 5464cf2bea Add hijack hints for non-detached exec api calls
Signed-off-by: David Gageot <david@gageot.net>
2016-07-13 17:08:17 -04:00
Tomas Tomecek 8f8a3d0ed2 volumes,create: support adding labels
Fixes #1102

Signed-off-by: Tomas Tomecek <ttomecek@redhat.com>
2016-07-13 08:41:45 +02:00
Justin Michalicek e8ea79dfdb Change double underscore in test case names for _set_auth_headers
* Change test__set_auth_headers_* methods to test_set_auth_headers_*

Signed-off-by: Justin Michalicek <jmichalicek@gmail.com>
2016-07-12 10:06:34 -04:00
Justin Michalicek f7807bdb52 Update build unit tests
* Test that the request from build when the client has
  auth configs contains the correct X-Registry-Config header
* Test that BuildApiMixin._set_auth_headers() updates the passed
  in headers dict with auth data from the client
* Test that BuildApiMixin._set_auth_headers() leaves headers dict intact
  when there is no _auth_config on the client.

Signed-off-by: Justin Michalicek <jmichalicek@gmail.com>
2016-07-12 10:06:34 -04:00
Srikalyan Swayampakula b5d3556bce Added support for user namespace.
Signed-off-by: Srikalyan Swayampakula <srikalyansswayam@gmail.com>
2016-06-30 15:25:17 -07:00
Joffrey F 538a1db9dd Merge pull request #1066 from yunzhu-li/blkio-control
Add support for Block IO constraints in HostConfig
2016-06-15 14:26:49 -07:00
Massimiliano Pippi 86d1b8fb83 invoke self._result with json=True if decode=True
Signed-off-by: Massimiliano Pippi <massi@datadoghq.com>
2016-06-07 10:32:02 -04:00
yunzhu-li 896d36ea1d
Add support for Block IO constraints in HostConfig
This adds support for Block IO constraint options:
    - blkio-weight
    - blkio-weight-device
    - device-read-bps
    - device-write-bps
    - device-read-iops
    - device-write-iops

Signed-off-by: yunzhu-li <contact@yunzhu.li>
2016-06-05 23:30:44 -04:00
Joffrey F 0176fa171f Update parse_host and tests
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-06-02 18:21:29 -07:00
Thomas Grainger e0b9cb2a8c
support Python 3.5
Signed-off-by: Thomas Grainger <tom.grainger@procensus.com>
2016-05-19 17:59:34 +01:00
Aanand Prasad 5ebf4b8ec7 Resolve path traversal in .dockerignore patterns
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2016-05-16 15:55:06 +01:00
Kevin Frommelt 2826dd51e7 Don't set socket timeout if it's already disabled when streaming
Signed-off-by: Kevin Frommelt <kevin.frommelt@gmail.com>
2016-05-10 10:23:14 -05:00
Joffrey F 3c02fc4cc7 Merge pull request #1004 from klj613/allow-equals-character-in-env-file
makes it possible to have '=' in the env file
2016-04-27 16:27:28 -07:00
Felix Yan 9da5493135 Use backports.ssl_match_hostname
The py2-ipaddress module unfortunately conflicts with the pypi:ipaddress module, which is in the dependency tree of widely used pyOpenSSL. I think it would be a good idea to use a well maintained backport of the Python 3.5 implementation of match_hostname() instead of duplicating the effort and maintain another.

All tests are passing here.

Signed-off-by: Felix Yan <felixonmars@archlinux.org>
2016-04-08 00:36:46 +08:00
Joffrey F 541edd7ffb Don't raise InvalidConfigError when auth dict doesn't have an 'auth' key
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-04-05 14:05:33 -07:00
Joffrey F c5a92e0822 Tests for match_hostname backport
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-03-29 17:09:26 -07:00
Joffrey F 9505b3e8b5 Merge branch 'master' of https://github.com/dimaspivak/docker-py into dimaspivak-master 2016-03-23 12:04:09 -07:00
Joffrey F c3f76e6e8f Merge branch 'from_env' of https://github.com/bfirsh/docker-py into bfirsh-from_env 2016-03-22 17:09:24 -07:00
Aditya Marella 7a0e19766b Support OomScoreAdj in host configuration
Signed-off-by: Aditya Marella <aditya.marella@gmail.com>
2016-03-22 10:54:59 -07:00
Kristian Lewis Jones 6eaf8ce721 makes it possible to have '=' in the env file
note that the docker command line flag --env-file also allows '=' in the env file

Signed-off-by: Kristian Lewis Jones <klj613@kristianlewisjones.com>
2016-03-22 10:00:47 +00:00
Joffrey F 3fe08cbfe5 Support passing an alternate environment dict to kwargs_from_env
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-03-21 18:17:27 -07:00
Dima Spivak 99b6ec1180 Add support for changes param to ContainerApiMixin.commit
docker commit --changes was added to Docker in 1.6.0.

Signed-off-by: Dima Spivak <dima@spivak.ch>
2016-03-21 11:37:14 -07:00
Joffrey F 3168149cbf If tcp host is provided while TLS is enabled, convert to https
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-03-17 16:18:37 -07:00
Aanand Prasad 7417bc2cce Don't support tmpfs in API version < 1.22
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2016-03-16 17:37:54 +00:00
Jan Losinski 72446b47c0 Add unittest for the Tmpfs Hostconfig option
Signed-off-by: Jan Losinski <losinski@wh2.tu-dresden.de>
2016-03-16 14:47:40 +00:00
Ben Firshman 8991ba7cce Add docker.from_env() shortcut
A much neater way of getting started with docker-py.

Signed-off-by: Ben Firshman <ben@firshman.co.uk>
2016-03-15 11:24:25 -07:00
Joffrey F ad480ff0b1 Fix enable_tls issue #984
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-03-11 12:27:24 -08:00
Joffrey F 81d8caaf36 Merge pull request #916 from docker/container_update_feature
Support for container limits update
2016-02-24 18:00:06 -08:00
Joffrey F cdf6dc8c3c Merge pull request #942 from seguins/934-separate-stream-follow-logs
Separate params stream and follow for logs.
2016-02-24 16:04:42 -08:00
Joffrey F a710fbf60a Unit test for Client.update_container method
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-02-23 16:18:36 -08:00
Aanand Prasad 9ba0ddf267 Fix TLS regressions
- Set `verify` to the CA cert path if one has been specified, rather
  than `True`

- Don't set `assert_fingerprint`

Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2016-02-23 14:29:52 -08:00
Stéphane Seguin 71fafd3209 Separate params stream and follow for logs.
Closes #934

Signed-off-by: Stéphane Seguin <stephseguin93@gmail.com>
2016-02-16 18:51:55 +01:00
Joffrey F c3a66cc599 Merge pull request #928 from docker/926-ignored_dockerfiles
Never exclude Dockerfile from the build context.
2016-02-09 12:52:04 -08:00
Joffrey F 90760cfe1d Never exclude Dockerfile from the build context.
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-02-09 12:11:30 -08:00
Joffrey F dc198be26c Don't break when parsing unknown config keys
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-02-09 12:08:34 -08:00
Joffrey F 8bdaffc2e7 Merge pull request #920 from docker/ssl_version_simpler
Remove obsolete SSL version computation
2016-02-05 12:41:02 -08:00
Mike Dougherty 387db11009 Re-write kwargs_from_env to handle TLS options better
This more closely matches the way the docker client interprets the
relevant environment variables. Among other things, it's now possible to
set DOCKER_TLS_VERIFY=false.

Signed-off-by: Mike Dougherty <mike.dougherty@docker.com>
2016-02-04 17:13:09 -08:00
Spencer Rinehart fca622cad7 Add support for shm_size.
--shm-size was added to Docker in 1.10 via docker/docker#16168.  See
docker/compose#2823 for more details.

Signed-off-by: Spencer Rinehart <anubis@overthemonkey.com>
2016-02-04 12:33:05 -06:00
Joffrey F b808cc45b4 Remove obsolete SSL version computation
Recent versions of urllib3 (including the one packaged by requests)
will automatically reject SSLv2/3.
Additional test to check urllib3's behavior (mostly for release/packaging)

Signed-off-by: Joffrey F <joffrey@docker.com>
2016-02-03 17:50:52 -08:00
Joffrey F bb94fe7a8c Support unspecified protocol in base_url when using TLS
(assume HTTPS)

Signed-off-by: Joffrey F <joffrey@docker.com>
2016-01-28 16:25:23 -08:00
Aanand Prasad 01a754a7f7 Support links when creating containers or connecting to networks
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2016-01-20 17:47:45 +00:00
Joffrey F eb1f24a1fc Merge pull request #880 from docker/813-parse-float-bytes
Handle 64-bit integer values in parse_bytes
2016-01-18 14:37:34 -08:00
Pavel Kravchenko 84a72f49e9 Add HttpHeaders support in load_config
Signed-off-by: Pavel Kravchenko <kpavel@il.ibm.com>
2016-01-18 14:29:31 -08:00
Joffrey F cd66f6c6cd parse_bytes: Add ability to handle 64-bit integers in py2
Signed-off-by: Joffrey F <joffrey@docker.com>
2016-01-18 13:53:52 -08:00
Joffrey F f9b04c1026 Improve host devices support
Add unit tests for utils.parse_devices
Rewrite documentation
Support dict and string format for device declaration

Signed-off-by: Joffrey F <joffrey@docker.com>
2016-01-18 11:38:32 -08:00
Aanand Prasad 21a5a0a049 Normalise/fix networking API JSON keys
- Use CamelCase
- `auxaddresses` -> `AuxiliaryAddresses`

Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2016-01-18 18:41:18 +00:00
Aanand Prasad d00a5bb086 Implement support for network-scoped aliases
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2016-01-14 18:19:35 +00:00
Ryan Belgrave 67a29441c4 allow custom ipam options when creating networks
Signed-off-by: Ryan Belgrave <rmb1993@gmail.com>
2016-01-04 18:57:11 -05:00
Aanand Prasad 9deffc45a1 Merge pull request #863 from thomasboyt/fast-exclude-paths
Don't descend into ignored directories when building context
2015-12-16 16:59:12 +00:00
Aanand Prasad 25b188440a Treat 'index.docker.io' repo names as 'docker.io'
Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-12-10 12:42:54 +00:00
Aanand Prasad 9b890c4540 Refactor resolve_authconfig tests
The structure of the fake config dictionary was not reflective of what
actual parsed config looks like.

Signed-off-by: Aanand Prasad <aanand.prasad@gmail.com>
2015-12-10 12:42:54 +00:00
Sumit Sahrawat 2981d013a5 Fix remove_volume return value
Signed-off-by: Sumit Sahrawat <sumit.sahrawat.apm13@iitbhu.ac.in>
2015-12-10 10:29:11 +05:30
Sumit Sahrawat bd948be7d9 Allow providing options when creating networks
Following the spec:

    http://docs.docker.com/engine/reference/api/docker_remote_api_v1.21/#create-a-network

I have added an Options argument to create_network.

This opens up the possibility of creating isolated containers with no
internet access programmatically. We require such facilities in
https://github.com/jupyter/tmpnb/issues/187.

Signed-off-by: Sumit Sahrawat <sumit.sahrawat.apm13@iitbhu.ac.in>
2015-12-10 10:29:11 +05:30
Joffrey F 0f091747ec Merge pull request #868 from jstewmon/config-stop-signal
added stop_signal to create container config
2015-12-08 12:47:31 -08:00
Thomas Boyt a49166abf2 Improve get_paths performance by not descending into ignored directories
Signed-off-by: Thomas Boyt <thomas@ledgerx.com>
2015-12-08 11:26:25 -05:00
Dustin Falgout e0c6ec0343 incorporate feedback
Signed-off-by: Dustin Falgout <dustin@falgout.us>
2015-12-04 01:27:44 -06:00
Jonathan Stewmon 31b1b53f7f added stop_signal to create container config
Signed-off-by: Jonathan Stewmon <jstewmon@rmn.com>
2015-12-03 14:31:51 -06:00
Nicolas Delaby 05fd8dfb41 fix typo filter param for `volumes`
https://docs.docker.com/engine/reference/api/docker_remote_api_v1.21/#list-volumes

Signed-off-by: Nicolas Delaby <nicolas.delaby@lock8.me>
2015-12-01 15:06:01 +01:00
Joffrey F 00c0baf40f Add tests for new cases covered by parse_repository_tag
Signed-off-by: Joffrey F <joffrey@docker.com>
2015-11-24 12:16:00 -08:00
Joffrey F 6d0e2d69d5 Update auth.resolve_repository_name
More relaxed version that matches the constraints imposed by the
current version of the docker daemon.
Few unit tests to verify the new cases.
Client.pull was trying to set the tag value when it wasn't supposed
to, fixed now.
utils.parse_repository_tag is simpler and supports @sha... notation

Signed-off-by: Joffrey F <joffrey@docker.com>
2015-11-23 18:43:02 -08:00
Joffrey F dfcc1d87bf Merge branch 'oom-kill-disable-pr' of https://github.com/schu/docker-py into schu-oom-kill-disable-pr 2015-11-18 14:35:54 -08:00
Joffrey F 9ed721957a Merge pull request #832 from aebm/master
Fix #627
2015-11-18 14:29:00 -08:00
Michael Schubert 8924319631 create_host_config: allow setting oom_kill_disable
Signed-off-by: Michael Schubert <schu@schu.io>
2015-11-10 11:08:24 +01:00
Viacheslav Boiko 3330569772
Merge upstream branch 'master' into feature/logs_since
Signed-off-by: Viacheslav Boiko <v.e.boyko@gmail.com>
2015-11-05 11:56:06 +01:00
Alejandro Brito Monedero a695f0ca5a Fix #627
Docker-py couldn't pull private images if the account have non ascii chars
in either user or password. It that case an exception ending with no auth
credentials.
Instead docker client (golang) don't suffer this issue.

Also add a test to check the login or password even with non ascii char have
a valid auth dictionary

Signed-off-by: Alejandro Brito Monedero <abrito@alea-soluciones.com>
2015-10-29 16:12:30 +01:00
Joffrey F a610a1be0e Fix py3.2 test failure and unicode behavior
Signed-off-by: Joffrey F <joffrey@docker.com>
2015-10-27 18:01:19 +01:00
Joffrey F 311ae711d4 Merge pull request #825 from aebm/master
Fix auth.load_config bug calling parse_auth
2015-10-27 15:57:00 +01:00
Alejandro Brito Monedero 22da6ace7a Fix auth.load_config bug calling parse_auth
When load_config found and auths section it didn't call parse_auth only with
the auths section. Instead it called parse_auth with all the configuration.

There is also a test to check this case

Signed-off-by: Alejandro Brito Monedero <alejandro.monedero@gmail.com>
2015-10-27 09:03:28 +01:00
Daniel Nephin 417c80057b Support unicode commands.
Signed-off-by: Daniel Nephin <dnephin@gmail.com>
2015-10-26 17:22:14 -04:00
Joffrey F 93a296fb04 Reorganize test directories
More clearly separate unit and integration tests
Allow splitting into multiple files
Cleaner

Signed-off-by: Joffrey F <joffrey@docker.com>
2015-10-21 16:02:09 -07:00