mirror of
https://github.com/kubescape/kubescape.git
synced 2026-02-14 09:59:54 +00:00
37 lines
1.1 KiB
Python
37 lines
1.1 KiB
Python
import os
|
|
import re
|
|
import sys
|
|
|
|
import smoke_utils
|
|
|
|
|
|
def run(kubescape_exec: str):
|
|
print("Testing version")
|
|
|
|
ver = os.getenv("RELEASE")
|
|
msg = smoke_utils.run_command(command=[kubescape_exec, "version"])
|
|
if isinstance(msg, bytes):
|
|
msg = msg.decode('utf-8')
|
|
|
|
# Extract version from output
|
|
version_match = re.search(r'Your current version is: ([^\s\n]+)', msg)
|
|
if version_match:
|
|
output_version = version_match.group(1)
|
|
print(f"Found version in output: {output_version}")
|
|
|
|
# If RELEASE is set, verify it matches the output
|
|
if ver:
|
|
# Check if RELEASE (with or without 'v' prefix) is in the output
|
|
assert (ver in msg) or (ver.lstrip('v') in msg), f"expected version: {ver}, found: {output_version}"
|
|
else:
|
|
# If RELEASE is not set, just verify that a version was found
|
|
assert output_version, f"no version found in output: {msg}"
|
|
else:
|
|
raise AssertionError(f"no version found in output: {msg}")
|
|
|
|
print("Done testing version")
|
|
|
|
|
|
if __name__ == "__main__":
|
|
run(kubescape_exec=smoke_utils.get_exec_from_args(sys.argv))
|