in cli/dependencies.py [0:0]
def _parse_nccl_plugin_version(name, file_path: str) -> config.DependencyConfig:
"""Parses the nccl plugin version from the command result."""
plugin_version = subprocess.run(
' '.join(['nm', '-gD', file_path, '|', 'grep', 'ncclNetPlugin_v']),
shell=True,
check=True,
capture_output=True,
text=True,
).stdout
plugin_version_match = re.search(r'\b([a-zA-Z0-9_]+)$', plugin_version)
if not plugin_version_match:
raise ValueError(
f'Failed to parse nccl plugin version from: {plugin_version}'
)
plugin_version = plugin_version_match.group(1)
return config.DependencyConfig(
name=name,
version=plugin_version,
)