From 4667b837c8541e9c1685eac254cb802baf93d077 Mon Sep 17 00:00:00 2001 From: Archana Shinde Date: Thu, 2 Nov 2023 12:17:32 -0700 Subject: [PATCH] tests: Add test with nerdctl to verify ipvlan support Add test to verify kata supports ipvlan networks. This test can be bit tricky as it requires knowledge about host interfaces to be used as a master for the ipvlan network. However, with github actions, we can assume interface called eth0 to be present on the host and functioning. Fixes: #8366 Signed-off-by: Archana Shinde (cherry picked from commit 07db673eb9066f8ff4953911397686b8ca67c10d) --- tests/integration/nerdctl/gha-run.sh | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/tests/integration/nerdctl/gha-run.sh b/tests/integration/nerdctl/gha-run.sh index c4803d5db5..7a6c7ebaaf 100644 --- a/tests/integration/nerdctl/gha-run.sh +++ b/tests/integration/nerdctl/gha-run.sh @@ -68,6 +68,16 @@ function run() { info "Running nerdctl with Kata Containers (${KATA_HYPERVISOR})" sudo nerdctl run --rm --runtime io.containerd.kata-${KATA_HYPERVISOR}.v2 --entrypoint nping instrumentisto/nmap --tcp-connect -c 2 -p 80 www.github.com + + parent_interface="eth0" + # The following creates an ipvlan network with eth0 on host as parent. The test assumes + # that an interface called eth0 exists on the host. + ipvlan_net_name="ipvlan10" + info "Creating ipvlan network with eth0 interface on host as parent" + sudo nerdctl network create ${ipvlan_net_name=} --driver ipvlan --subnet=10.5.74.0/24 -o parent=${parent_interface} + + info "Running nerdctl with Kata Containers (${KATA_HYPERVISOR}) and ipvlan network" + sudo nerdctl run --rm --net ${ipvlan_net_name} --runtime io.containerd.kata-${KATA_HYPERVISOR}.v2 alpine ip a | grep "eth0" } function main() {