Kaydet (Commit) b180b877 authored tarafından Joffrey F's avatar Joffrey F

Remove parameters and methods marked as deprecated

Signed-off-by: 's avatarJoffrey F <joffrey@docker.com>
üst 42b2548e
import six import six
import warnings
from datetime import datetime from datetime import datetime
from .. import errors from .. import errors
...@@ -204,40 +203,6 @@ class ContainerApiMixin(object): ...@@ -204,40 +203,6 @@ class ContainerApiMixin(object):
x['Id'] = x['Id'][:12] x['Id'] = x['Id'][:12]
return res return res
@utils.check_resource('container')
def copy(self, container, resource):
"""
Identical to the ``docker cp`` command. Get files/folders from the
container.
**Deprecated for API version >= 1.20.** Use
:py:meth:`~ContainerApiMixin.get_archive` instead.
Args:
container (str): The container to copy from
resource (str): The path within the container
Returns:
The contents of the file as a string
Raises:
:py:class:`docker.errors.APIError`
If the server returns an error.
"""
if utils.version_gte(self._version, '1.20'):
warnings.warn(
'APIClient.copy() is deprecated for API version >= 1.20, '
'please use get_archive() instead',
DeprecationWarning
)
res = self._post_json(
self._url("/containers/{0}/copy", container),
data={"Resource": resource},
stream=True
)
self._raise_for_status(res)
return res.raw
def create_container(self, image, command=None, hostname=None, user=None, def create_container(self, image, command=None, hostname=None, user=None,
detach=False, stdin_open=False, tty=False, detach=False, stdin_open=False, tty=False,
mem_limit=None, ports=None, environment=None, mem_limit=None, ports=None, environment=None,
......
import os import os
import warnings
from datetime import datetime from datetime import datetime
from .. import auth, utils from .. import auth, utils
from ..constants import INSECURE_REGISTRY_DEPRECATION_WARNING
class DaemonApiMixin(object): class DaemonApiMixin(object):
...@@ -90,7 +88,7 @@ class DaemonApiMixin(object): ...@@ -90,7 +88,7 @@ class DaemonApiMixin(object):
return self._result(self._get(self._url("/info")), True) return self._result(self._get(self._url("/info")), True)
def login(self, username, password=None, email=None, registry=None, def login(self, username, password=None, email=None, registry=None,
reauth=False, insecure_registry=False, dockercfg_path=None): reauth=False, dockercfg_path=None):
""" """
Authenticate with a registry. Similar to the ``docker login`` command. Authenticate with a registry. Similar to the ``docker login`` command.
...@@ -113,11 +111,6 @@ class DaemonApiMixin(object): ...@@ -113,11 +111,6 @@ class DaemonApiMixin(object):
:py:class:`docker.errors.APIError` :py:class:`docker.errors.APIError`
If the server returns an error. If the server returns an error.
""" """
if insecure_registry:
warnings.warn(
INSECURE_REGISTRY_DEPRECATION_WARNING.format('login()'),
DeprecationWarning
)
# If we don't have any auth data so far, try reloading the config file # If we don't have any auth data so far, try reloading the config file
# one more time in case anything showed up in there. # one more time in case anything showed up in there.
......
import logging import logging
import os import os
import warnings
import six import six
from .. import auth, errors, utils from .. import auth, errors, utils
from ..constants import INSECURE_REGISTRY_DEPRECATION_WARNING
log = logging.getLogger(__name__) log = logging.getLogger(__name__)
...@@ -321,9 +319,8 @@ class ImageApiMixin(object): ...@@ -321,9 +319,8 @@ class ImageApiMixin(object):
params['filters'] = utils.convert_filters(filters) params['filters'] = utils.convert_filters(filters)
return self._result(self._post(url, params=params), True) return self._result(self._post(url, params=params), True)
def pull(self, repository, tag=None, stream=False, def pull(self, repository, tag=None, stream=False, auth_config=None,
insecure_registry=False, auth_config=None, decode=False, decode=False, platform=None):
platform=None):
""" """
Pulls an image. Similar to the ``docker pull`` command. Pulls an image. Similar to the ``docker pull`` command.
...@@ -331,11 +328,12 @@ class ImageApiMixin(object): ...@@ -331,11 +328,12 @@ class ImageApiMixin(object):
repository (str): The repository to pull repository (str): The repository to pull
tag (str): The tag to pull tag (str): The tag to pull
stream (bool): Stream the output as a generator stream (bool): Stream the output as a generator
insecure_registry (bool): Use an insecure registry
auth_config (dict): Override the credentials that auth_config (dict): Override the credentials that
:py:meth:`~docker.api.daemon.DaemonApiMixin.login` has set for :py:meth:`~docker.api.daemon.DaemonApiMixin.login` has set for
this request. ``auth_config`` should contain the ``username`` this request. ``auth_config`` should contain the ``username``
and ``password`` keys to be valid. and ``password`` keys to be valid.
decode (bool): Decode the JSON data from the server into dicts.
Only applies with ``stream=True``
platform (str): Platform in the format ``os[/arch[/variant]]`` platform (str): Platform in the format ``os[/arch[/variant]]``
Returns: Returns:
...@@ -361,12 +359,6 @@ class ImageApiMixin(object): ...@@ -361,12 +359,6 @@ class ImageApiMixin(object):
} }
""" """
if insecure_registry:
warnings.warn(
INSECURE_REGISTRY_DEPRECATION_WARNING.format('pull()'),
DeprecationWarning
)
if not tag: if not tag:
repository, tag = utils.parse_repository_tag(repository) repository, tag = utils.parse_repository_tag(repository)
registry, repo_name = auth.resolve_repository_name(repository) registry, repo_name = auth.resolve_repository_name(repository)
...@@ -405,8 +397,8 @@ class ImageApiMixin(object): ...@@ -405,8 +397,8 @@ class ImageApiMixin(object):
return self._result(response) return self._result(response)
def push(self, repository, tag=None, stream=False, def push(self, repository, tag=None, stream=False, auth_config=None,
insecure_registry=False, auth_config=None, decode=False): decode=False):
""" """
Push an image or a repository to the registry. Similar to the ``docker Push an image or a repository to the registry. Similar to the ``docker
push`` command. push`` command.
...@@ -415,12 +407,12 @@ class ImageApiMixin(object): ...@@ -415,12 +407,12 @@ class ImageApiMixin(object):
repository (str): The repository to push to repository (str): The repository to push to
tag (str): An optional tag to push tag (str): An optional tag to push
stream (bool): Stream the output as a blocking generator stream (bool): Stream the output as a blocking generator
insecure_registry (bool): Use ``http://`` to connect to the
registry
auth_config (dict): Override the credentials that auth_config (dict): Override the credentials that
:py:meth:`~docker.api.daemon.DaemonApiMixin.login` has set for :py:meth:`~docker.api.daemon.DaemonApiMixin.login` has set for
this request. ``auth_config`` should contain the ``username`` this request. ``auth_config`` should contain the ``username``
and ``password`` keys to be valid. and ``password`` keys to be valid.
decode (bool): Decode the JSON data from the server into dicts.
Only applies with ``stream=True``
Returns: Returns:
(generator or str): The output from the server. (generator or str): The output from the server.
...@@ -439,12 +431,6 @@ class ImageApiMixin(object): ...@@ -439,12 +431,6 @@ class ImageApiMixin(object):
... ...
""" """
if insecure_registry:
warnings.warn(
INSECURE_REGISTRY_DEPRECATION_WARNING.format('push()'),
DeprecationWarning
)
if not tag: if not tag:
repository, tag = utils.parse_repository_tag(repository) repository, tag = utils.parse_repository_tag(repository)
registry, repo_name = auth.resolve_repository_name(repository) registry, repo_name = auth.resolve_repository_name(repository)
......
import warnings
from .. import auth, errors, utils from .. import auth, errors, utils
from ..types import ServiceMode from ..types import ServiceMode
...@@ -123,12 +122,6 @@ class ServiceApiMixin(object): ...@@ -123,12 +122,6 @@ class ServiceApiMixin(object):
:py:class:`docker.errors.APIError` :py:class:`docker.errors.APIError`
If the server returns an error. If the server returns an error.
""" """
if endpoint_config is not None:
warnings.warn(
'endpoint_config has been renamed to endpoint_spec.',
DeprecationWarning
)
endpoint_spec = endpoint_config
_check_api_features( _check_api_features(
self._version, task_template, update_config, endpoint_spec self._version, task_template, update_config, endpoint_spec
...@@ -370,12 +363,6 @@ class ServiceApiMixin(object): ...@@ -370,12 +363,6 @@ class ServiceApiMixin(object):
:py:class:`docker.errors.APIError` :py:class:`docker.errors.APIError`
If the server returns an error. If the server returns an error.
""" """
if endpoint_config is not None:
warnings.warn(
'endpoint_config has been renamed to endpoint_spec.',
DeprecationWarning
)
endpoint_spec = endpoint_config
_check_api_features( _check_api_features(
self._version, task_template, update_config, endpoint_spec self._version, task_template, update_config, endpoint_spec
......
import six import six
import warnings
from .. import errors from .. import errors
from ..utils.utils import ( from ..utils.utils import (
...@@ -542,13 +541,6 @@ class ContainerConfig(dict): ...@@ -542,13 +541,6 @@ class ContainerConfig(dict):
raise errors.InvalidVersion( raise errors.InvalidVersion(
'labels were only introduced in API version 1.18' 'labels were only introduced in API version 1.18'
) )
else:
if cpuset is not None or cpu_shares is not None:
warnings.warn(
'The cpuset_cpus and cpu_shares options have been moved to'
' host_config in API version 1.18, and will be removed',
DeprecationWarning
)
if version_lt(version, '1.19'): if version_lt(version, '1.19'):
if volume_driver is not None: if volume_driver is not None:
...@@ -575,13 +567,6 @@ class ContainerConfig(dict): ...@@ -575,13 +567,6 @@ class ContainerConfig(dict):
raise errors.InvalidVersion( raise errors.InvalidVersion(
'stop_signal was only introduced in API version 1.21' 'stop_signal was only introduced in API version 1.21'
) )
else:
if volume_driver is not None:
warnings.warn(
'The volume_driver option has been moved to'
' host_config in API version 1.21, and will be removed',
DeprecationWarning
)
if stop_timeout is not None and version_lt(version, '1.25'): if stop_timeout is not None and version_lt(version, '1.25'):
raise errors.InvalidVersion( raise errors.InvalidVersion(
......
...@@ -5,7 +5,7 @@ from .utils import ( ...@@ -5,7 +5,7 @@ from .utils import (
compare_version, convert_port_bindings, convert_volume_binds, compare_version, convert_port_bindings, convert_volume_binds,
mkbuildcontext, parse_repository_tag, parse_host, mkbuildcontext, parse_repository_tag, parse_host,
kwargs_from_env, convert_filters, datetime_to_timestamp, kwargs_from_env, convert_filters, datetime_to_timestamp,
create_host_config, parse_bytes, ping_registry, parse_env_file, version_lt, create_host_config, parse_bytes, parse_env_file, version_lt,
version_gte, decode_json_header, split_command, create_ipam_config, version_gte, decode_json_header, split_command, create_ipam_config,
create_ipam_pool, parse_devices, normalize_links, convert_service_networks, create_ipam_pool, parse_devices, normalize_links, convert_service_networks,
format_environment, create_archive, format_extra_hosts format_environment, create_archive, format_extra_hosts
......
...@@ -6,11 +6,9 @@ import json ...@@ -6,11 +6,9 @@ import json
import shlex import shlex
import tarfile import tarfile
import tempfile import tempfile
import warnings
from distutils.version import StrictVersion from distutils.version import StrictVersion
from datetime import datetime from datetime import datetime
import requests
import six import six
from .. import constants from .. import constants
...@@ -158,29 +156,6 @@ def version_gte(v1, v2): ...@@ -158,29 +156,6 @@ def version_gte(v1, v2):
return not version_lt(v1, v2) return not version_lt(v1, v2)
def ping_registry(url):
warnings.warn(
'The `ping_registry` method is deprecated and will be removed.',
DeprecationWarning
)
return ping(url + '/v2/', [401]) or ping(url + '/v1/_ping')
def ping(url, valid_4xx_statuses=None):
try:
res = requests.get(url, timeout=3)
except Exception:
return False
else:
# We don't send yet auth headers
# and a v2 registry will respond with status 401
return (
res.status_code < 400 or
(valid_4xx_statuses and res.status_code in valid_4xx_statuses)
)
def _convert_port_binding(binding): def _convert_port_binding(binding):
result = {'HostIp': '', 'HostPort': ''} result = {'HostIp': '', 'HostPort': ''}
if isinstance(binding, tuple): if isinstance(binding, tuple):
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment