summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHongbin Lu <hongbin.lu@huawei.com>2017-06-20 22:14:03 +0000
committerHongbin Lu <hongbin.lu@huawei.com>2017-06-21 19:20:35 +0000
commit7e2486c3d9edc94300a58f5e8203277fd5d7e01d (patch)
tree9db545dcf018c49bfb7a1de98c4339326cdfbb95
parent2627e3c009b580ef7f28eb3814f019f456674b3f (diff)
downloadkolla-7e2486c3d9edc94300a58f5e8203277fd5d7e01d.tar.gz
kolla-7e2486c3d9edc94300a58f5e8203277fd5d7e01d.zip
Upgrade from docker-py to docker
The pypi package 'docker-py' [1] has been renamed to 'docker' [2]. It is better to move to the new 'docker' package because the old package will be deprecated and all the new features will go into the new package only. Package 'docker' has been added to requirements [3]. The old package 'docker-py' is still allowed to be in the global requirements during the transition period but it should be removed after all or most of the projects finsih the migration. [1] https://pypi.python.org/pypi/docker-py [2] https://pypi.python.org/pypi/docker [3] https://review.openstack.org/#/c/423715/ Change-Id: I3ffd8bb6461e8b7edacc5e833754f00c4249b854
-rw-r--r--docker/dind/Dockerfile.j22
-rwxr-xr-xkolla/image/build.py2
-rw-r--r--kolla/tests/test_build.py16
-rw-r--r--requirements.txt2
-rwxr-xr-xtools/setup_gate.sh2
5 files changed, 12 insertions, 12 deletions
diff --git a/docker/dind/Dockerfile.j2 b/docker/dind/Dockerfile.j2
index bd85b7a63..86783be1a 100644
--- a/docker/dind/Dockerfile.j2
+++ b/docker/dind/Dockerfile.j2
@@ -21,7 +21,7 @@ RUN /bin/true
{{ macros.install_packages(dind_packages | customizable("packages")) }}
{% set dind_pip_packages = [
- 'docker-py'
+ 'docker'
] %}
RUN {{ macros.install_pip(dind_pip_packages | customizable("pip_packages"), constraints = false) }}
diff --git a/kolla/image/build.py b/kolla/image/build.py
index 28e3afe59..57a90c343 100755
--- a/kolla/image/build.py
+++ b/kolla/image/build.py
@@ -132,7 +132,7 @@ class DockerTask(task.Task):
if self._dc is not None:
return self._dc
docker_kwargs = self.docker_kwargs.copy()
- self._dc = docker.Client(version='auto', **docker_kwargs)
+ self._dc = docker.APIClient(version='auto', **docker_kwargs)
return self._dc
diff --git a/kolla/tests/test_build.py b/kolla/tests/test_build.py
index 0c50db98b..c1d17cfdb 100644
--- a/kolla/tests/test_build.py
+++ b/kolla/tests/test_build.py
@@ -58,7 +58,7 @@ class TasksTest(base.TestCase):
self.imageChild.path = self.useFixture(fixtures.TempDir()).path
@mock.patch.dict(os.environ, clear=True)
- @mock.patch('docker.Client')
+ @mock.patch('docker.APIClient')
def test_push_image(self, mock_client):
self.dc = mock_client
pusher = build.PushTask(self.conf, self.image)
@@ -67,7 +67,7 @@ class TasksTest(base.TestCase):
self.image.canonical_name, stream=True, insecure_registry=True)
@mock.patch.dict(os.environ, clear=True)
- @mock.patch('docker.Client')
+ @mock.patch('docker.APIClient')
def test_build_image(self, mock_client):
self.dc = mock_client
push_queue = mock.Mock()
@@ -82,7 +82,7 @@ class TasksTest(base.TestCase):
self.assertTrue(builder.success)
@mock.patch.dict(os.environ, clear=True)
- @mock.patch('docker.Client')
+ @mock.patch('docker.APIClient')
def test_build_image_with_build_arg(self, mock_client):
self.dc = mock_client
build_args = {
@@ -103,7 +103,7 @@ class TasksTest(base.TestCase):
@mock.patch.dict(os.environ, {'http_proxy': 'http://FROM_ENV:8080'},
clear=True)
- @mock.patch('docker.Client')
+ @mock.patch('docker.APIClient')
def test_build_arg_from_env(self, mock_client):
push_queue = mock.Mock()
self.dc = mock_client
@@ -122,7 +122,7 @@ class TasksTest(base.TestCase):
@mock.patch.dict(os.environ, {'http_proxy': 'http://FROM_ENV:8080'},
clear=True)
- @mock.patch('docker.Client')
+ @mock.patch('docker.APIClient')
def test_build_arg_precedence(self, mock_client):
self.dc = mock_client
build_args = {
@@ -141,7 +141,7 @@ class TasksTest(base.TestCase):
self.assertTrue(builder.success)
- @mock.patch('docker.Client')
+ @mock.patch('docker.APIClient')
@mock.patch('requests.get')
def test_requests_get_timeout(self, mock_get, mock_client):
self.dc = mock_client
@@ -162,7 +162,7 @@ class TasksTest(base.TestCase):
self.assertFalse(builder.success)
- @mock.patch('docker.Client')
+ @mock.patch('docker.APIClient')
@mock.patch('requests.get')
@mock.patch('shutil.rmtree')
@mock.patch('shutil.copyfile')
@@ -192,7 +192,7 @@ class TasksTest(base.TestCase):
else:
self.assertIsNotNone(get_result)
- @mock.patch('docker.Client')
+ @mock.patch('docker.APIClient')
def test_followups_docker_image(self, mock_client):
self.imageChild.source = {
'source': 'http://fake/source',
diff --git a/requirements.txt b/requirements.txt
index 951c943c9..3ee8355b1 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -2,7 +2,7 @@
# of appearance. Changing the order has an impact on the overall integration
# process, which may cause wedges in the gate later.
pbr!=2.1.0,>=2.0.0 # Apache-2.0
-docker-py>=1.8.1 # Apache-2.0
+docker>=2.0.0 # Apache-2.0
Jinja2!=2.9.0,!=2.9.1,!=2.9.2,!=2.9.3,!=2.9.4,>=2.8 # BSD License (3 clause)
gitdb>=0.6.4 # BSD License (3 clause)
GitPython>=1.0.1 # BSD License (3 clause)
diff --git a/tools/setup_gate.sh b/tools/setup_gate.sh
index ce3f786e2..5635be99a 100755
--- a/tools/setup_gate.sh
+++ b/tools/setup_gate.sh
@@ -151,7 +151,7 @@ function setup_ansible {
mkdir /tmp/kolla
# TODO(SamYaple): Move to virtualenv
- sudo -H pip install -U "ansible>=2" "docker-py>=1.6.0" "python-openstackclient" "python-neutronclient"
+ sudo -H pip install -U "ansible>=2" "docker>=2.0.0" "python-openstackclient" "python-neutronclient"
detect_distro
setup_inventory