From 19788779a55f86b497c60077ec1e0a30dc8e2aeb Mon Sep 17 00:00:00 2001 From: Quique Llorente Date: Tue, 7 May 2019 11:13:48 +0200 Subject: [PATCH] Add 'hostname' and 'extra_hosts' to docker This change is a porting to docker of [1], so we can run the tripleo ci zuul reproducer at [2] with both docker and podman using just paunch. [1] https://review.opendev.org/#/c/656270/ [2] https://review.rdoproject.org/r/#/c/20488/ Change-Id: I354edf45c247369876ffd931cb7fe3a4122b9a3e --- paunch/builder/compose1.py | 4 ++++ paunch/tests/test_builder_compose1.py | 11 ++++++++++- ...ostname-and-extra_hosts-args-8a2b2b06f69e1f20.yaml | 6 ++++++ 3 files changed, 20 insertions(+), 1 deletion(-) create mode 100644 releasenotes/notes/add-docker-hostname-and-extra_hosts-args-8a2b2b06f69e1f20.yaml diff --git a/paunch/builder/compose1.py b/paunch/builder/compose1.py index 1214066..bdb068b 100644 --- a/paunch/builder/compose1.py +++ b/paunch/builder/compose1.py @@ -67,6 +67,10 @@ class ComposeV1Builder(base.BaseBuilder): self.string_arg(cconfig, cmd, 'mem_swappiness', '--memory-swappiness') self.string_arg(cconfig, cmd, 'security_opt', '--security-opt') self.string_arg(cconfig, cmd, 'stop_signal', '--stop-signal') + self.string_arg(cconfig, cmd, 'hostname', '--hostname') + for extra_host in cconfig.get('extra_hosts', []): + if extra_host: + cmd.append('--add-host=%s' % extra_host) self.string_arg(cconfig, cmd, 'stop_grace_period', '--stop-timeout', diff --git a/paunch/tests/test_builder_compose1.py b/paunch/tests/test_builder_compose1.py index dc922c2..d896209 100644 --- a/paunch/tests/test_builder_compose1.py +++ b/paunch/tests/test_builder_compose1.py @@ -42,7 +42,13 @@ class TestComposeV1Builder(tbb.TestBaseBuilder): 'mem_swappiness': '60', 'security_opt': 'label:disable', 'cap_add': ['SYS_ADMIN', 'SETUID'], - 'cap_drop': ['NET_RAW'] + 'cap_drop': ['NET_RAW'], + 'hostname': 'foohostname', + 'extra_hosts': [ + 'foohost:127.0.0.1', + 'barhost:127.0.0.2' + ] + } } builder = compose1.ComposeV1Builder('foo', config, None) @@ -62,6 +68,9 @@ class TestComposeV1Builder(tbb.TestBaseBuilder): '--memory-swap=1G', '--memory-swappiness=60', '--security-opt=label:disable', + '--hostname=foohostname', + '--add-host=foohost:127.0.0.1', + '--add-host=barhost:127.0.0.2', '--cap-add=SYS_ADMIN', '--cap-add=SETUID', '--cap-drop=NET_RAW', 'centos:7'], cmd diff --git a/releasenotes/notes/add-docker-hostname-and-extra_hosts-args-8a2b2b06f69e1f20.yaml b/releasenotes/notes/add-docker-hostname-and-extra_hosts-args-8a2b2b06f69e1f20.yaml new file mode 100644 index 0000000..af52c4d --- /dev/null +++ b/releasenotes/notes/add-docker-hostname-and-extra_hosts-args-8a2b2b06f69e1f20.yaml @@ -0,0 +1,6 @@ +--- +features: + - | + docker learns 'hostname' which maps to docker run --hostname and + 'extra_hosts' mapping to docker run --add-host. +