mirror of
https://github.com/containers/podman-compose.git
synced 2025-02-10 23:39:39 +01:00
Add integration test for default network behavior
Signed-off-by: Songmin Li <lisongmin@protonmail.com>
This commit is contained in:
parent
2cfc617f9e
commit
420d19daf4
@ -0,0 +1,4 @@
|
||||
services:
|
||||
web:
|
||||
image: busybox
|
||||
command: httpd -f -p 8123 -h /tmp/
|
@ -0,0 +1,7 @@
|
||||
services:
|
||||
web:
|
||||
image: busybox
|
||||
command: httpd -f -p 8123 -h /tmp/
|
||||
|
||||
x-podman:
|
||||
default_net_behavior_compat: true
|
@ -0,0 +1,7 @@
|
||||
services:
|
||||
web:
|
||||
image: busybox
|
||||
command: httpd -f -p 8123 -h /tmp/
|
||||
|
||||
networks:
|
||||
net0: {}
|
@ -0,0 +1,10 @@
|
||||
services:
|
||||
web:
|
||||
image: busybox
|
||||
command: httpd -f -p 8123 -h /tmp/
|
||||
|
||||
networks:
|
||||
net0: {}
|
||||
|
||||
x-podman:
|
||||
default_net_behavior_compat: true
|
@ -0,0 +1,8 @@
|
||||
services:
|
||||
web:
|
||||
image: busybox
|
||||
command: httpd -f -p 8123 -h /tmp/
|
||||
|
||||
networks:
|
||||
net0: {}
|
||||
net1: {}
|
@ -0,0 +1,11 @@
|
||||
services:
|
||||
web:
|
||||
image: busybox
|
||||
command: httpd -f -p 8123 -h /tmp/
|
||||
|
||||
networks:
|
||||
net0: {}
|
||||
net1: {}
|
||||
|
||||
x-podman:
|
||||
default_net_behavior_compat: true
|
@ -0,0 +1,9 @@
|
||||
services:
|
||||
web:
|
||||
image: busybox
|
||||
command: httpd -f -p 8123 -h /tmp/
|
||||
|
||||
networks:
|
||||
net0: {}
|
||||
net1: {}
|
||||
default: {}
|
@ -0,0 +1,12 @@
|
||||
services:
|
||||
web:
|
||||
image: busybox
|
||||
command: httpd -f -p 8123 -h /tmp/
|
||||
|
||||
networks:
|
||||
net0: {}
|
||||
net1: {}
|
||||
default: {}
|
||||
|
||||
x-podman:
|
||||
default_net_behavior_compat: true
|
@ -0,0 +1,65 @@
|
||||
# SPDX-License-Identifier: GPL-2.0
|
||||
|
||||
import os
|
||||
import unittest
|
||||
|
||||
from parameterized import parameterized
|
||||
|
||||
from tests.integration.test_podman_compose import podman_compose_path
|
||||
from tests.integration.test_podman_compose import test_path
|
||||
from tests.integration.test_utils import RunSubprocessMixin
|
||||
|
||||
|
||||
def compose_yaml_path(scenario):
|
||||
return os.path.join(
|
||||
os.path.join(test_path(), "default_net_behavior"), f"docker-compose_{scenario}.yaml"
|
||||
)
|
||||
|
||||
|
||||
class TestComposeDefaultNetBehavior(unittest.TestCase, RunSubprocessMixin):
|
||||
@parameterized.expand([
|
||||
('no_nets', 'default_net_behavior_default'),
|
||||
('one_net', 'default_net_behavior_net0'),
|
||||
('two_nets', 'podman'),
|
||||
('with_default', 'default_net_behavior_default'),
|
||||
('no_nets_compat', 'default_net_behavior_default'),
|
||||
('one_net_compat', 'default_net_behavior_default'),
|
||||
('two_nets_compat', 'default_net_behavior_default'),
|
||||
('with_default_compat', 'default_net_behavior_default'),
|
||||
])
|
||||
def test_nethost(self, scenario, default_net):
|
||||
try:
|
||||
self.run_subprocess_assert_returncode(
|
||||
[podman_compose_path(), "-f", compose_yaml_path(scenario), "up", "-d"],
|
||||
)
|
||||
|
||||
container_id, _ = self.run_subprocess_assert_returncode(
|
||||
[
|
||||
podman_compose_path(),
|
||||
"-f",
|
||||
compose_yaml_path(scenario),
|
||||
"ps",
|
||||
"--format",
|
||||
'{{.ID}}',
|
||||
],
|
||||
)
|
||||
container_id = container_id.decode('utf-8').split('\n')[0]
|
||||
output, _ = self.run_subprocess_assert_returncode(
|
||||
[
|
||||
"podman",
|
||||
"inspect",
|
||||
container_id,
|
||||
"--format",
|
||||
"{{range $key, $value := .NetworkSettings.Networks }}{{ $key }}\n{{ end }}",
|
||||
],
|
||||
)
|
||||
self.assertEqual(output.decode('utf-8').strip(), default_net)
|
||||
finally:
|
||||
self.run_subprocess_assert_returncode([
|
||||
podman_compose_path(),
|
||||
"-f",
|
||||
compose_yaml_path(scenario),
|
||||
"down",
|
||||
"-t",
|
||||
"0",
|
||||
])
|
Loading…
Reference in New Issue
Block a user