@@ -42,6 +42,9 @@ class RocmCollector(InBandDataCollector[RocmDataModel, None]):
4242 "/opt/rocm/.info/version-rocm" ,
4343 "/opt/rocm/.info/version" ,
4444 ]
45+ CMD_ROCMINFO = "rocminfo"
46+ CMD_ROCM_VERSIONED_PATHS = "ls -v -d /opt/rocm-[3-7]* | tail -1"
47+ CMD_ROCM_ALL_PATHS = "ls -v -d /opt/rocm*"
4548
4649 def collect_data (self , args = None ) -> tuple [TaskResult , Optional [RocmDataModel ]]:
4750 """Collect ROCm version data from the system.
@@ -59,6 +62,22 @@ def collect_data(self, args=None) -> tuple[TaskResult, Optional[RocmDataModel]]:
5962 res = self ._run_sut_cmd (f"grep . { path } " )
6063 if res .exit_code == 0 :
6164 rocm_data = RocmDataModel (rocm_version = res .stdout )
65+
66+ # Collect rocminfo output
67+ rocminfo_res = self ._run_sut_cmd (self .CMD_ROCMINFO )
68+ if rocminfo_res .exit_code == 0 :
69+ rocm_data .rocminfo = rocminfo_res .stdout
70+
71+ # Collect latest versioned ROCm path (rocm-[3-7]*)
72+ versioned_path_res = self ._run_sut_cmd (self .CMD_ROCM_VERSIONED_PATHS )
73+ if versioned_path_res .exit_code == 0 :
74+ rocm_data .rocm_latest_versioned_path = versioned_path_res .stdout
75+
76+ # Collect all ROCm paths
77+ all_paths_res = self ._run_sut_cmd (self .CMD_ROCM_ALL_PATHS )
78+ if all_paths_res .exit_code == 0 :
79+ rocm_data .rocm_all_paths = all_paths_res .stdout
80+
6281 self ._log_event (
6382 category = "ROCM_VERSION_READ" ,
6483 description = "ROCm version data collected" ,
0 commit comments