diff options
| author | Hongbin Lu <hongbin.lu@huawei.com> | 2017-06-20 22:14:03 +0000 |
|---|---|---|
| committer | Hongbin Lu <hongbin.lu@huawei.com> | 2017-06-21 19:20:35 +0000 |
| commit | 7e2486c3d9edc94300a58f5e8203277fd5d7e01d (patch) | |
| tree | 9db545dcf018c49bfb7a1de98c4339326cdfbb95 | |
| parent | 2627e3c009b580ef7f28eb3814f019f456674b3f (diff) | |
| download | kolla-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.j2 | 2 | ||||
| -rwxr-xr-x | kolla/image/build.py | 2 | ||||
| -rw-r--r-- | kolla/tests/test_build.py | 16 | ||||
| -rw-r--r-- | requirements.txt | 2 | ||||
| -rwxr-xr-x | tools/setup_gate.sh | 2 |
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 |
