HPCRunner : 贾维斯智能助手
前提:git clone https://gitee.com/openeuler/hpcrunner.git
【使用步骤】— 用户使用Jarvis安装软件
(1)加载jarvis环境变量:source init.sh
同时,检测与安装environment-modules依赖
(2)加载软件配置:./jarvis -use templates/aces/aces.arm.cpu.kgcc.hmpi.config
生成.meta文件,其保存配置文件路径
(3)下载软件:./jarvis -d
将*.config文件中[DOWNLOAD]部分软件地址下载到hpcrunner/downloads/目录中
(4)安装依赖:./jarvis -dp
读取*.config文件中[DEPENDENCY]字段部分,生成depend_install.sh并执行脚本
若单独安装依赖:./jarvis -install bisheng/2.1.0 com
com含义:安装毕昇编译器2.1.0,安装到software/compiler中
(5)生成软件编译环境变量:./jarvis -e
读取*.config文件中[ENV]字段部分,生成env.sh并执行脚本,执行-b/-r也会自动生成
(6)软件编译:./jarvis -b
读取*.config文件中[BUILD]字段部分,生成build.sh,识别[APP]字段build_dir=/x/x指定编译路径下执行编译
(7)软件运行:./jarvis -r
读取*.config文件中[RUN]字段部分,识别[APP]字段case_dir=/x/x用例路径下执行用例
【构建步骤】— 用户使用Jarvis构建软件自动化配置文件
(1)创建.config文件:vim templates/xx/xx.config
确认软件名称是否存在,无则添加。
xxx.config 规则(参考):$name+$arch+cpu/gpu+bisheng/kgcc+hmpi/omp+hpckit.config
(2)参考其他已有.config文件和gitee中Jarvis"使用说明"各项配置
(3)验证.config脚本可用性,参考上述“使用步骤”
(4)gitee提交PR合仓申请
异常情形参考
[1] 构建安装脚本:./jarvis -install anaconda3/ any
验证构建脚本,报错如下:
start installing.../opt/hpcrunner/package/anaconda3/
already installed, skipping...
module file did not generated because no file generated under install path
因jarvis检测存在有历史安装痕迹,所以需要先清理下:
./jarvis -remove anaconda3
[2] 构建安装脚本:./jarvis -install anaconda3/ any
验证构建脚本,安装完成后,自动生成modulefile文件时,报错如下:
SUCCESSFULLY EXECUTED AT 2025-03-26 16:18:38, CONGRATULATIONS!!!
install to /opt/hpcrunner/software/utils/anaconda3/ successful
Traceback (most recent call last):
File "/opt/hpcrunner/./src/jarvis.py", line 156, in <module>
Jarvis().main()
File "/opt/hpcrunner/./src/jarvis.py", line 81, in main
self.analysis.install(self.args.install)
File "/opt/hpcrunner/src/analysisService.py", line 84, in install
self.jinstall.install(install_args)
File "/opt/hpcrunner/src/installService.py", line 477, in install
self.gen_module_file( install_path, software_info, env_info)
File "/opt/hpcrunner/src/installService.py", line 393, in gen_module_file
self.tool.write_file(module_file, module_file_content)
File "/opt/hpcrunner/src/toolService.py", line 42, in write_file
with open(filename, 'w') as f:
IsADirectoryError: [Errno 21] Is a directory: '/opt/hpcrunner/software/modulefiles/anaconda3/'
因anaconda工具install.sh脚本中使用到$1变量,会进行modulefile文件生成,此处生产失败是因缺少版本号目录,不满足jarvis检查规范。
可以构建验证时多创建一层工具版本,此处如:anaconda/2024.10