selftests: openvswitch: Add version check for pyroute2
[ Upstream commit 92e37f20f20a23fec4626ae72eda50f127acb130 ] Paolo Abeni reports that on some systems the pyroute2 version isn't new enough to run the test suite. Ensure that we support a minimum version of 0.6 for all cases (which does include the existing ones). The 0.6.1 version was released in May of 2021, so should be propagated to most installations at this point. The alternative that Paolo proposed was to only skip when the add-flow is being run. This would be okay for most cases, except if a future test case is added that needs to do flow dump without an associated add (just guessing). In that case, it could also be broken and we would need additional skip logic anyway. Just draw a line in the sand now. Fixes: 25f16c873fb1 ("selftests: add openvswitch selftest suite") Reported-by: Paolo Abeni <pabeni@redhat.com> Closes: https://lore.kernel.org/lkml/8470c431e0930d2ea204a9363a60937289b7fdbe.camel@redhat.com/ Signed-off-by: Aaron Conole <aconole@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
a1a9e57037
commit
c3e70048ac
@ -117,7 +117,7 @@ run_test() {
|
||||
fi
|
||||
|
||||
if python3 ovs-dpctl.py -h 2>&1 | \
|
||||
grep "Need to install the python" >/dev/null 2>&1; then
|
||||
grep -E "Need to (install|upgrade) the python" >/dev/null 2>&1; then
|
||||
stdbuf -o0 printf "TEST: %-60s [PYLIB]\n" "${tdesc}"
|
||||
return $ksft_skip
|
||||
fi
|
||||
|
@ -17,8 +17,10 @@ try:
|
||||
from pyroute2.netlink import nla
|
||||
from pyroute2.netlink.exceptions import NetlinkError
|
||||
from pyroute2.netlink.generic import GenericNetlinkSocket
|
||||
import pyroute2
|
||||
|
||||
except ModuleNotFoundError:
|
||||
print("Need to install the python pyroute2 package.")
|
||||
print("Need to install the python pyroute2 package >= 0.6.")
|
||||
sys.exit(0)
|
||||
|
||||
|
||||
@ -280,6 +282,12 @@ def print_ovsdp_full(dp_lookup_rep, ifindex, ndb=NDB()):
|
||||
|
||||
|
||||
def main(argv):
|
||||
# version check for pyroute2
|
||||
prverscheck = pyroute2.__version__.split(".")
|
||||
if int(prverscheck[0]) == 0 and int(prverscheck[1]) < 6:
|
||||
print("Need to upgrade the python pyroute2 package to >= 0.6.")
|
||||
sys.exit(0)
|
||||
|
||||
parser = argparse.ArgumentParser()
|
||||
parser.add_argument(
|
||||
"-v",
|
||||
|
Loading…
x
Reference in New Issue
Block a user