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 <archana.m.shinde@intel.com>
(cherry picked from commit 07db673eb9)
This commit is contained in:
Archana Shinde
2023-11-02 12:17:32 -07:00
parent 97845c93d8
commit 4667b837c8

View File

@@ -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() {