Upgrade to 1.1.4 version
(cherry picked from commit 7ff9481f4928a64a12c8f3ae0b109fe521058e7d)
This commit is contained in:
parent
e3148d3688
commit
b07b9308e0
@ -1,24 +0,0 @@
|
||||
diff -Naur rpm/tests/disk/common.py oech/tests/disk/common.py
|
||||
--- rpm/tests/disk/common.py 2022-10-26 19:50:53.857748470 +0800
|
||||
+++ oech/tests/disk/common.py 2022-10-26 19:38:37.545748470 +0800
|
||||
@@ -39,7 +39,7 @@
|
||||
command.run_cmd("cat /proc/mdstat")
|
||||
|
||||
|
||||
-def get_disk(logger, command, config_data, pci_num):
|
||||
+def get_disk(logger, command, config_data, pci_num=""):
|
||||
"""
|
||||
Get disk info
|
||||
"""
|
||||
diff -Naur rpm/tests/disk/disk.py oech/tests/disk/disk.py
|
||||
--- rpm/tests/disk/disk.py 2022-10-26 19:50:53.857748470 +0800
|
||||
+++ oech/tests/disk/disk.py 2022-10-26 19:38:37.545748470 +0800
|
||||
@@ -42,7 +42,7 @@
|
||||
"""
|
||||
Start test
|
||||
"""
|
||||
- self.disks = get_disk(self.logger, self.command, self.config_data, self.pci_num)
|
||||
+ self.disks = get_disk(self.logger, self.command, self.config_data)
|
||||
if len(self.disks) == 0:
|
||||
self.logger.error("No suite disk found to test.")
|
||||
return False
|
||||
@ -1,303 +0,0 @@
|
||||
diff -Naur rpm/config/test_config.yaml oech/config/test_config.yaml
|
||||
--- rpm/config/test_config.yaml 2022-10-24 08:36:33.000000000 +0800
|
||||
+++ oech/config/test_config.yaml 2022-11-09 17:12:48.008572012 +0800
|
||||
@@ -3,6 +3,7 @@
|
||||
#disk: fc\raid\disk testcase need configuration, The disk to be tested, such as sda; Or all, test all qualified disks.
|
||||
#if_rdma: ethernet testcase need configuration, N means to test according to ordinary network card, y means to test according to RDMA card
|
||||
#server_ip: ethernet\infiniband testcase need configuration. If the server port is modified, need to add the port number after the IP address. eg: 2.2.2.4:8090.
|
||||
+# User need to delete the ip manually which are configured by tool after testing.
|
||||
#clent_ip: ethernet\infiniband testcase need configuration. IP to be configured for the client port
|
||||
fc:
|
||||
fc1:
|
||||
diff -Naur rpm/docs/design_docs/dev_design.md oech/docs/design_docs/dev_design.md
|
||||
--- rpm/docs/design_docs/dev_design.md 2022-10-24 08:36:33.000000000 +0800
|
||||
+++ oech/docs/design_docs/dev_design.md 2022-11-09 17:12:48.009572012 +0800
|
||||
@@ -262,6 +262,7 @@
|
||||
# client_ip为客户端测试网卡配置的IP
|
||||
# server_ip为服务端测试网卡配置的IP
|
||||
# 服务端的端口默认是80,如果有修改,需要添加上修改后的端口号,如下面的eth2示例。
|
||||
+# 服务端自动配置的IP,测试完成后,需用户手动删除(ip addr del ip地址 dev 接口)。
|
||||
ethernet:
|
||||
# 已手动配置客户端和服务端测试网卡的IP,这里需要添加上服务端的IP地址。
|
||||
eth1:
|
||||
diff -Naur rpm/hwcompatible/cert_info.py oech/hwcompatible/cert_info.py
|
||||
--- rpm/hwcompatible/cert_info.py 2022-10-24 08:36:33.000000000 +0800
|
||||
+++ oech/hwcompatible/cert_info.py 2022-11-09 17:12:48.010572012 +0800
|
||||
@@ -71,13 +71,13 @@
|
||||
oec_json["os"] = os_version
|
||||
curday = date.today().strftime("%Y.%m.%d")
|
||||
oec_json["date"] = curday
|
||||
- shanum = self.command.run_cmd(
|
||||
- "modinfo %s | grep signature | awk '{print $2}'" % device.driver, log_print=False)
|
||||
- oec_json["sha256"] = shanum[0].replace(":", "").strip("\n")
|
||||
filename = self.command.run_cmd(
|
||||
"modinfo %s | grep filename | awk '{print $2}'" % device.driver, log_print=False)
|
||||
+ shanum = self.command.run_cmd(
|
||||
+ "sha256sum %s | awk '{print $1}'" % filename[0].strip("\n"), log_print=False)
|
||||
+ oec_json["sha256"] = shanum[0].strip("\n")
|
||||
driver_size = self.command.run_cmd(
|
||||
- "ls -lh %s | awk '{print $5}'" % filename[0], log_print=False)
|
||||
+ "ls -lh %s | awk '{print $5}'" % filename[0].strip("\n"), log_print=False)
|
||||
oec_json["driverSize"] = driver_size[0].strip("\n")
|
||||
oec_json["downloadLink"] = "inbox"
|
||||
|
||||
diff -Naur rpm/hwcompatible/command.py oech/hwcompatible/command.py
|
||||
--- rpm/hwcompatible/command.py 2022-10-24 08:36:33.000000000 +0800
|
||||
+++ oech/hwcompatible/command.py 2022-11-09 17:12:48.010572012 +0800
|
||||
@@ -13,9 +13,9 @@
|
||||
# Create: 2020-04-01
|
||||
|
||||
import os
|
||||
-from signal import signal
|
||||
-import subprocess
|
||||
import shlex
|
||||
+import signal
|
||||
+import subprocess
|
||||
from .constants import SHELL_ENV
|
||||
|
||||
|
||||
diff -Naur rpm/hwcompatible/config_ip.py oech/hwcompatible/config_ip.py
|
||||
--- rpm/hwcompatible/config_ip.py 2022-10-24 08:36:33.000000000 +0800
|
||||
+++ oech/hwcompatible/config_ip.py 2022-11-09 17:12:48.010572012 +0800
|
||||
@@ -158,7 +158,8 @@
|
||||
Configure the IP address of the server.
|
||||
"""
|
||||
result = CommandUI().prompt_confirm(
|
||||
- "Are you sure to configure %s on server port?" % self.server_ip)
|
||||
+ "Are you sure to configure %s on server port?\n"
|
||||
+ "After the test, need to manually delete this ip." % self.server_ip)
|
||||
if not result:
|
||||
self.logger.warning(
|
||||
"User won't use the generate IP address, stop the test.")
|
||||
diff -Naur rpm/README.md oech/README.md
|
||||
--- rpm/README.md 2022-10-24 08:36:33.000000000 +0800
|
||||
+++ oech/README.md 2022-11-09 17:12:48.002572012 +0800
|
||||
@@ -200,9 +200,9 @@
|
||||
|
||||
* `/usr/share/oech/kernelrelease.json` 文件中列出了当前支持的所有系统版本,使用`uname -a` 命令确认当前系统内核版本是否属于框架支持的版本。
|
||||
|
||||
-* 框架默认会扫描所有网卡,对网卡进行测试前,请自行筛选被测网卡,并给它配上能 `ping` 通服务端的 ip;如果客户端是对 InfiniBand 网卡进行测试,服务端也必须有一个 InfiniBand 网卡并提前配好 ip 。建议不要使用业务网口进行网卡测试。
|
||||
+* 框架默认会扫描所有网卡,对网卡进行测试前,请自行筛选被测网卡;要求测试端口连通,状态为up。建议不要使用业务网口进行网卡测试。
|
||||
|
||||
-* `/usr/share/oech/lib/config/test_config.yaml ` 是硬件测试项配置文件模板,`fc`、`raid`、`disk`、`ethernet`、`infiniband`硬件测试前需先根据实际环境进行修改,其它硬件测试不需要修改。
|
||||
+* `/usr/share/oech/lib/config/test_config.yaml ` 是硬件测试项配置文件模板,`fc`、`raid`、`disk`、`ethernet`、`infiniband`硬件测试前需先根据实际环境进行配置,其它硬件测试不需要配置。对于网卡测试,如果是工具自动添加的IP地址,测试完成后,为了安全,服务端的IP需手动删除。
|
||||
|
||||
## 使用步骤
|
||||
|
||||
diff -Naur rpm/server/server.py oech/server/server.py
|
||||
--- rpm/server/server.py 2022-10-24 08:36:33.000000000 +0800
|
||||
+++ oech/server/server.py 2022-11-09 17:12:48.011572012 +0800
|
||||
@@ -21,7 +21,6 @@
|
||||
import base64
|
||||
import re
|
||||
import operator
|
||||
-import stat
|
||||
from urllib.parse import urlencode
|
||||
from urllib.request import urlopen, Request
|
||||
from urllib.error import HTTPError
|
||||
@@ -33,7 +32,6 @@
|
||||
dir_server = os.path.dirname(os.path.realpath(__file__))
|
||||
dir_results = os.path.join(dir_server, 'results')
|
||||
dir_files = os.path.join(dir_server, 'files')
|
||||
-ip_file = os.path.join(dir_server, "ip.txt")
|
||||
|
||||
|
||||
@app.errorhandler(400)
|
||||
@@ -353,8 +351,6 @@
|
||||
if operator.eq(quad, eval(card_id)):
|
||||
subprocess.getoutput(
|
||||
"ifconfig %s:0 %s/24" % (pt, sever_ip))
|
||||
- with os.fdopen(os.open(ip_file, os.O_WRONLY | os.O_CREAT, stat.S_IRUSR), 'w+') as f:
|
||||
- f.write('{},{}'.format(pt, sever_ip))
|
||||
break
|
||||
|
||||
return render_template('index.html')
|
||||
@@ -391,7 +387,6 @@
|
||||
if cmd[0] == 'all':
|
||||
for process_name in valid_commands:
|
||||
__stop_process(process_name)
|
||||
- __delete_ip()
|
||||
else:
|
||||
__stop_process(cmd[0])
|
||||
else:
|
||||
@@ -459,19 +454,5 @@
|
||||
quad.extend([tmp[-3] + tmp[-4], tmp[-1] + tmp[-2]])
|
||||
return quad
|
||||
|
||||
-
|
||||
-def __delete_ip():
|
||||
- """
|
||||
- Delete the IP configured on the server
|
||||
- """
|
||||
- if not os.path.exists(ip_file):
|
||||
- return
|
||||
-
|
||||
- with open(ip_file, 'r') as f:
|
||||
- ip = f.read().split(',')
|
||||
- subprocess.Popen(['ip', 'addr', 'del', ip[1], "dev", ip[0]])
|
||||
- os.remove(ip_file)
|
||||
-
|
||||
-
|
||||
if __name__ == '__main__':
|
||||
app.run(host='0.0.0.0', port=80)
|
||||
diff -Naur rpm/tests/cdrom/cdrom.py oech/tests/cdrom/cdrom.py
|
||||
--- rpm/tests/cdrom/cdrom.py 2022-10-24 08:36:33.000000000 +0800
|
||||
+++ oech/tests/cdrom/cdrom.py 2022-11-09 17:12:48.013572012 +0800
|
||||
@@ -32,6 +32,9 @@
|
||||
self.type = None
|
||||
self.com_ui = CommandUI()
|
||||
self.test_dir = "/usr/share/doc"
|
||||
+ read_dir = os.getcwd()
|
||||
+ self.mnt_dir = os.path.join(read_dir, "mnt_cdrom")
|
||||
+ self.device_dir = os.path.join(read_dir, "device_dir")
|
||||
|
||||
def setup(self, args=None):
|
||||
"""
|
||||
@@ -191,29 +194,32 @@
|
||||
:return:
|
||||
"""
|
||||
devname = self.device.get_property("DEVNAME")
|
||||
- os.mkdir("mnt_cdrom")
|
||||
-
|
||||
+ if os.path.exists(self.mnt_dir):
|
||||
+ shutil.rmtree(self.mnt_dir)
|
||||
+ os.mkdir(self.mnt_dir)
|
||||
self.logger.info("Check to mount media.", terminal_print=True)
|
||||
self.command.run_cmd("umount %s" % devname, ignore_errors=True)
|
||||
- self.command.run_cmd("mount -o ro %s ./mnt_cdrom" % devname)
|
||||
+ self.command.run_cmd("mount -o ro %s %s" % (devname, self.mnt_dir))
|
||||
|
||||
cmd_result = self.command.run_cmd(
|
||||
"df %s | tail -n1 | awk '{print $3}'" % devname)
|
||||
size = int(cmd_result[0])
|
||||
if size == 0:
|
||||
self.logger.error("This is a blank disc.")
|
||||
- self.command.run_cmd("umount ./mnt_cdrom")
|
||||
- shutil.rmtree("mnt_cdrom")
|
||||
+ self.command.run_cmd("umount %s" % self.mnt_dir)
|
||||
+ shutil.rmtree(self.mnt_dir)
|
||||
return False
|
||||
|
||||
- os.mkdir("device_dir")
|
||||
- self.logger.info("Check to copy files.", ignore_errors=True)
|
||||
- self.command.run_cmd("cp -dpRf ./mnt_cdrom ./device_dir")
|
||||
+ if os.path.exists(self.device_dir):
|
||||
+ shutil.rmtree(self.device_dir)
|
||||
+ os.mkdir(self.device_dir)
|
||||
+ self.logger.info("Check to copy files.", terminal_print=True)
|
||||
+ self.command.run_cmd("cp -dprf %s/. %s" % (self.mnt_dir, self.device_dir))
|
||||
|
||||
self.logger.info(
|
||||
- "Check to compare files in directory.", ignore_errors=True)
|
||||
- return_code = self.cmp_tree("mnt_cdrom", "device_dir")
|
||||
- self.command.run_cmd("umount ./mnt_cdrom")
|
||||
+ "Check to compare files in directory.", terminal_print=True)
|
||||
+ return_code = self.cmp_tree(self.mnt_dir, self.device_dir)
|
||||
+ self.command.run_cmd("umount %s" % self.mnt_dir)
|
||||
if return_code:
|
||||
self.logger.info("Compare directory succeed.")
|
||||
else:
|
||||
@@ -259,7 +265,7 @@
|
||||
return True
|
||||
|
||||
def teardown(self):
|
||||
- if os.path.exists("mnt_cdrom"):
|
||||
- shutil.rmtree("mnt_cdrom")
|
||||
- if os.path.exists("device_dir"):
|
||||
- shutil.rmtree("device_dir")
|
||||
+ if os.path.exists(self.mnt_dir):
|
||||
+ shutil.rmtree(self.mnt_dir)
|
||||
+ if os.path.exists(self.device_dir):
|
||||
+ shutil.rmtree(self.device_dir)
|
||||
diff -Naur rpm/tests/infiniband/infiniband.py oech/tests/infiniband/infiniband.py
|
||||
--- rpm/tests/infiniband/infiniband.py 2022-10-24 08:36:33.000000000 +0800
|
||||
+++ oech/tests/infiniband/infiniband.py 2022-11-09 17:12:48.014572012 +0800
|
||||
@@ -13,7 +13,6 @@
|
||||
# Create: 2022-05-24
|
||||
# Desc: InfiniBand Test
|
||||
|
||||
-import re
|
||||
from tests.network.rdma import RDMATest
|
||||
|
||||
|
||||
diff -Naur rpm/tests/network/ethernet.py oech/tests/network/ethernet.py
|
||||
--- rpm/tests/network/ethernet.py 2022-10-24 08:36:33.000000000 +0800
|
||||
+++ oech/tests/network/ethernet.py 2022-11-09 17:12:48.023572011 +0800
|
||||
@@ -27,8 +27,13 @@
|
||||
"""
|
||||
path_netdev = ''.join(['/sys', self.device.get_property("DEVPATH")])
|
||||
path_pci = path_netdev.split('net')[0]
|
||||
- result = self.command.run_cmd("ls %s | grep -q infiniband" % path_pci)
|
||||
- return result[2] == 0
|
||||
+ result = self.command.run_cmd("ls %s | grep -q infiniband" % path_pci, ignore_errors=False)
|
||||
+ if result[2] == 0:
|
||||
+ self.logger.info("Current ethernet supports RoCE.")
|
||||
+ return True
|
||||
+
|
||||
+ self.logger.info("Current ethernet doesn't support RoCE, no need test Roce.")
|
||||
+ return False
|
||||
|
||||
def setup(self, args=None):
|
||||
"""
|
||||
diff -Naur rpm/tests/network/network.py oech/tests/network/network.py
|
||||
--- rpm/tests/network/network.py 2022-10-24 08:36:33.000000000 +0800
|
||||
+++ oech/tests/network/network.py 2022-11-09 17:12:48.023572011 +0800
|
||||
@@ -138,10 +138,13 @@
|
||||
self.command.run_cmd("ip link set down %s" % interface)
|
||||
for _ in range(5):
|
||||
result = self.command.run_cmd(
|
||||
- "ip link show %s | grep 'state DOWN'" % interface)
|
||||
+ "ip link show %s | grep 'state DOWN'" % interface, ignore_errors=False)
|
||||
if result[2] == 0:
|
||||
+ self.logger.info("Set interface %s down succeed." % self.interface)
|
||||
return True
|
||||
time.sleep(1)
|
||||
+
|
||||
+ self.logger.error("Set interface %s down failed." % self.interface)
|
||||
return False
|
||||
|
||||
def ifup(self, interface):
|
||||
@@ -153,11 +156,13 @@
|
||||
self.command.run_cmd("ip link set up %s" % interface)
|
||||
for _ in range(5):
|
||||
result = self.command.run_cmd(
|
||||
- "ip link show %s | grep 'state UP'" % interface)
|
||||
+ "ip link show %s | grep 'state UP'" % interface, ignore_errors=False)
|
||||
if result[2] == 0:
|
||||
+ self.logger.info("Set interface %s up succeed." % self.interface)
|
||||
return True
|
||||
time.sleep(1)
|
||||
|
||||
+ self.logger.error("Set interface %s up failed." % self.interface)
|
||||
return False
|
||||
|
||||
def get_speed(self):
|
||||
@@ -419,14 +424,12 @@
|
||||
Test eth link
|
||||
:return:
|
||||
"""
|
||||
- self.logger.info("Setting interface %s down..." % self.interface)
|
||||
+ self.logger.info("Setting interface %s down." % self.interface)
|
||||
if not self.ifdown(self.interface):
|
||||
- self.logger.error("Set interface %s down failed." % self.interface)
|
||||
return False
|
||||
|
||||
- self.logger.info("Setting interface %s up..." % self.interface)
|
||||
+ self.logger.info("Setting interface %s up." % self.interface)
|
||||
if not self.ifup(self.interface):
|
||||
- self.logger.error("Set interface %s up failed." % self.interface)
|
||||
return False
|
||||
|
||||
self.speed = self.get_speed()
|
||||
diff -Naur rpm/tests/system/system.py oech/tests/system/system.py
|
||||
--- rpm/tests/system/system.py 2022-10-24 08:36:33.000000000 +0800
|
||||
+++ oech/tests/system/system.py 2022-11-09 17:12:48.024572011 +0800
|
||||
@@ -57,7 +57,7 @@
|
||||
flag = True
|
||||
for cert_package in ["oec-hardware"]:
|
||||
rpm_verify = self.command.run_cmd(
|
||||
- "rpm -V --nomtime --nomode --nocontexts %s" % cert_package)
|
||||
+ "rpm -V --nomtime --nomode --nocontexts %s" % cert_package, ignore_errors=True)
|
||||
if rpm_verify[2] == 0:
|
||||
continue
|
||||
|
||||
@ -1,144 +0,0 @@
|
||||
diff -Naur rpm/config/pci.ids oech/config/pci.ids
|
||||
--- rpm/config/pci.ids 2022-10-24 08:36:33.000000000 +0800
|
||||
+++ oech/config/pci.ids 2022-12-13 10:13:13.228273472 +0800
|
||||
@@ -20115,7 +20115,8 @@
|
||||
15b3 0113 MCX565M-CDAB
|
||||
101a MT28800 Family [ConnectX-5 Ex Virtual Function]
|
||||
101b MT28908 Family [ConnectX-6]
|
||||
- 15b3 0006 MCX653105A-EFAT
|
||||
+ 15b3 0006 MCX653105A-ECAT
|
||||
+ 15b3 0029 MCX653105A-EFAT
|
||||
101c MT28908 Family [ConnectX-6 Virtual Function]
|
||||
101d MT2892 Family [ConnectX-6 Dx]
|
||||
101e ConnectX Family mlx5Gen Virtual Function
|
||||
diff -Naur rpm/docs/design_docs/dev_design.md oech/docs/design_docs/dev_design.md
|
||||
--- rpm/docs/design_docs/dev_design.md 2022-12-13 17:29:04.328175692 +0800
|
||||
+++ oech/docs/design_docs/dev_design.md 2022-12-13 10:13:13.228273472 +0800
|
||||
@@ -321,6 +321,7 @@
|
||||
| 16 | `CertEnv()` | 工具环境信息模块 | 提供工具文件环境路径 |
|
||||
| 17 | `SysInfo()` | 系统信息模块 | 系统信息获取 |
|
||||
| 18 | `ConfigIP()` | 网卡IP配置模块 | 查询并配置网卡IP |
|
||||
+| 19 | `CertInfo()` | 兼容性信息收集模块 | 自动收集并生成兼容性信息文件 |
|
||||
|
||||
### 3.6 web服务接口清单
|
||||
|
||||
diff -Naur rpm/hwcompatible/common.py oech/hwcompatible/common.py
|
||||
--- rpm/hwcompatible/common.py 2022-10-24 08:36:33.000000000 +0800
|
||||
+++ oech/hwcompatible/common.py 2022-12-13 10:13:13.232273494 +0800
|
||||
@@ -21,7 +21,8 @@
|
||||
import importlib
|
||||
from .test import Test
|
||||
from .env import CertEnv
|
||||
-from .constants import NODEVICE
|
||||
+from .constants import NODEVICE, TEST_KABI_ARCH
|
||||
+from .command import Command
|
||||
|
||||
|
||||
def create_test_suite(test_factory, logger, subtests_filter=None):
|
||||
@@ -53,7 +54,9 @@
|
||||
if test["name"] == "kabi":
|
||||
kabi_test = test
|
||||
|
||||
- if kabi_select:
|
||||
+ command = Command(logger)
|
||||
+ arch = command.run_cmd("uname -m")[0].strip()
|
||||
+ if kabi_select and arch in TEST_KABI_ARCH:
|
||||
logger.info("The hardware will test kabi automatically.")
|
||||
kabi_test["run"] = True
|
||||
testcase = __create_testcase(kabi_test, logger, subtests_filter)
|
||||
diff -Naur rpm/hwcompatible/constants.py oech/hwcompatible/constants.py
|
||||
--- rpm/hwcompatible/constants.py 2022-10-24 08:36:33.000000000 +0800
|
||||
+++ oech/hwcompatible/constants.py 2022-12-13 10:13:13.232273494 +0800
|
||||
@@ -26,6 +26,7 @@
|
||||
VERSION = "driverVersion"
|
||||
NODEVICE = ("cpufreq", "memory", "clock", "profiler", "system",
|
||||
"stress", "kdump", "perf", "acpi", "watchdog", "kabi")
|
||||
+TEST_KABI_ARCH = ("aarch64", "x86_64")
|
||||
CDTYPES = ("DVD_RW", "DVD_PLUS_RW", "DVD_R", "DVD_PLUS_R", "DVD",
|
||||
"BD_RE", "BD_R", "BD", "CD_RW", "CD_R", "CD")
|
||||
GPU_DRIVER = ("nouveau", "nvidia", "bi_driver", "amdgpu")
|
||||
diff -Naur rpm/oec-hardware.spec oech/oec-hardware.spec
|
||||
--- rpm/oec-hardware.spec 2022-10-24 08:36:33.000000000 +0800
|
||||
+++ oech/oec-hardware.spec 2022-12-13 10:13:13.232273494 +0800
|
||||
@@ -37,6 +37,7 @@
|
||||
%setup -q -c
|
||||
|
||||
%build
|
||||
+strip tests/keycard/libswsds_%{_arch}.so
|
||||
[ "$RPM_BUILD_ROOT" != "/" ] && [ -d $RPM_BUILD_ROOT ] && rm -rf $RPM_BUILD_ROOT;
|
||||
DESTDIR=$RPM_BUILD_ROOT VERSION_RELEASE=%{version} make
|
||||
|
||||
diff -Naur rpm/README.md oech/README.md
|
||||
--- rpm/README.md 2022-12-13 17:29:04.328175692 +0800
|
||||
+++ oech/README.md 2022-12-13 10:13:13.224273450 +0800
|
||||
@@ -314,9 +314,11 @@
|
||||
|
||||
- oec-hardware-server 生成的html测试报告
|
||||
|
||||
- - 兼容性清单文件(请参考templates目录下的模板)
|
||||
+ - 兼容性清单文件
|
||||
|
||||
- 整机适配需要测试至少一张RAID卡、一张网卡,并提供对应的信息。
|
||||
+ oec-hardware 执行结束后会自动为测试通过的硬件生成兼容性信息文件`hw_compatibility.json`,请参考该文件填写templates目录下的模板,然后上传填写的模板文件。
|
||||
+
|
||||
+ 整机适配需要测试至少一张RAID卡、一张网卡,并提供对应的信息。
|
||||
|
||||
# 测试项介绍
|
||||
|
||||
diff -Naur rpm/tests/kabi/kabi.py oech/tests/kabi/kabi.py
|
||||
--- rpm/tests/kabi/kabi.py 2022-10-24 08:36:33.000000000 +0800
|
||||
+++ oech/tests/kabi/kabi.py 2022-12-13 10:13:13.236273516 +0800
|
||||
@@ -19,6 +19,7 @@
|
||||
from hwcompatible.env import CertEnv
|
||||
from hwcompatible.command import Command
|
||||
from hwcompatible.test import Test
|
||||
+from hwcompatible.constants import TEST_KABI_ARCH
|
||||
|
||||
kabi_dir = os.path.dirname(os.path.realpath(__file__))
|
||||
|
||||
@@ -55,6 +56,11 @@
|
||||
Run kabi test case
|
||||
return: result
|
||||
"""
|
||||
+ arch = self.command.run_cmd("uname -m")[0].strip()
|
||||
+ if arch not in TEST_KABI_ARCH:
|
||||
+ self.logger.info(" %s architecture does not support kabi testing." % arch)
|
||||
+ return True
|
||||
+
|
||||
result = True
|
||||
os_version = getoutput(
|
||||
"grep openeulerversion /etc/openEuler-latest | awk -F = '{print $2}'")
|
||||
@@ -125,7 +131,7 @@
|
||||
|
||||
def _get_kernel_source_rpm(self, arch):
|
||||
standard_kernel_version = getoutput(
|
||||
- "dnf list --repo=source | grep kernel.src | head -n 1 | awk '{print $2}'")
|
||||
+ "dnf list --repo=source | grep '^kernel.src' | awk '{print $2}'")
|
||||
rpmpath = "/root/rpmbuild/SOURCES"
|
||||
standard_symvers = os.path.join(rpmpath, "Module.kabi_" + arch)
|
||||
if os.path.exists(standard_symvers):
|
||||
diff -Naur rpm/tests/memory/memory.py oech/tests/memory/memory.py
|
||||
--- rpm/tests/memory/memory.py 2022-10-24 08:36:33.000000000 +0800
|
||||
+++ oech/tests/memory/memory.py 2022-12-13 10:13:13.244273560 +0800
|
||||
@@ -65,7 +65,7 @@
|
||||
if not self.hugetlb_test():
|
||||
self.logger.error("Hugepages test failed.")
|
||||
return False
|
||||
- self.logger.error("Hugepages test succeed.")
|
||||
+ self.logger.info("Hugepages test succeed.")
|
||||
|
||||
return True
|
||||
|
||||
diff -Naur rpm/tests/nvme/nvme.py oech/tests/nvme/nvme.py
|
||||
--- rpm/tests/nvme/nvme.py 2022-10-24 08:36:33.000000000 +0800
|
||||
+++ oech/tests/nvme/nvme.py 2022-12-13 10:13:13.248273582 +0800
|
||||
@@ -63,7 +63,8 @@
|
||||
elif size > 128 * 1024:
|
||||
size = 128 * 1024
|
||||
|
||||
- size_per_block = int(self.command.run_cmd("nvme list | grep %s | awk '{print $10}'" % disk)[0])
|
||||
+ size_per_block = int(self.command.run_cmd("nvme list -o json /dev/%s | grep SectorSize "
|
||||
+ "| awk -F : '{print $2}'" % disk)[0].strip())
|
||||
block_num = 1
|
||||
if size_per_block != 0:
|
||||
block_num = int(int(size) / size_per_block) - 1
|
||||
@ -3,17 +3,14 @@
|
||||
|
||||
Name: oec-hardware
|
||||
Summary: openEuler Hardware Compatibility Test Suite
|
||||
Version: 1.1.3
|
||||
Release: 3
|
||||
Version: 1.1.4
|
||||
Release: 0
|
||||
Group: Development/Tools
|
||||
License: Mulan PSL v2
|
||||
URL: https://gitee.com/openeuler/oec-hardware
|
||||
Source0: https://gitee.com/openeuler/oec-hardware/repository/archive/v%{version}.tar.gz
|
||||
|
||||
# patch fix issue
|
||||
Patch0001: oec-hardware-1.1.3-fix-disk.patch
|
||||
Patch0002: oec-hardware-1.1.3-fix-network-cdrom-bug-update-log-print.patch
|
||||
Patch0003: oec-hardware-1.1.3-fixbug-optimize.patch
|
||||
|
||||
Buildroot: %{_tmppath}/%{name}-%{version}-root
|
||||
BuildRequires: gcc
|
||||
@ -37,9 +34,6 @@ openEuler Hardware Compatibility Test Server
|
||||
|
||||
%prep
|
||||
%setup -q -c
|
||||
%patch1 -p1
|
||||
%patch2 -p1
|
||||
%patch3 -p1
|
||||
|
||||
%build
|
||||
strip tests/keycard/libswsds_%{_arch}.so
|
||||
@ -82,6 +76,12 @@ DESTDIR=$RPM_BUILD_ROOT make install
|
||||
rm -rf /var/lock/oech.lock
|
||||
|
||||
%changelog
|
||||
* Tue Feb 28 2023 cuixucui <cuixucui1@h-partner.com> - 1.1.4-0
|
||||
- Add board information in the test report
|
||||
- Add spdk test case
|
||||
- Add dpdk test case
|
||||
- Update pci.ids file
|
||||
|
||||
* Tue Dec 13 2022 liqiang <liqiang332@h-partner.com> - 1.1.3-3
|
||||
- Fix libswsds.so not stripped
|
||||
- Fix the value of kernel.src obtained by the kabi test case is incorrect
|
||||
|
||||
BIN
v1.1.3.tar.gz
BIN
v1.1.3.tar.gz
Binary file not shown.
BIN
v1.1.4.tar.gz
Normal file
BIN
v1.1.4.tar.gz
Normal file
Binary file not shown.
Loading…
x
Reference in New Issue
Block a user