工具介绍
machine.yaml配置文件介绍
源码仓提供的machine.yaml配置文件模板为:
user: root pkey: /root/.ssh/id_rsa scanner: - 192.168.0.1 - 192.168.0.2 - 192.168.0.3 c_builder_gcc: - 192.168.0.2 c_builder_bisheng_compiler: - 192.168.0.2 java_builder_jdk8: - 192.168.0.1 java_builder_jdk17: - 192.168.0.1 compatibility: - 192.168.0.1 devkit: - 192.168.0.3 clamav: - 192.168.0.3 tester: - 192.168.0.3
- user:当前节点连接其他节点配置免密的用户名。
- pkey:配置免密所用公钥对应的私钥路径。
- scanner:扫描机。
- c_builder_gcc:GCC for openEuler构建机。
- c_builder_bisheng_compiler:毕昇编译器构建机。
- java_builder_jdk8:毕昇JDK8构建机。
- java_builder_jdk17:毕昇JDK17构建机。
- compatibility:兼容性测试执行机。
- devkit:DevKit部署机。
- clamav:病毒扫描执行机。
- tester:Java测试执行机。
scanner、java_builder_jdk8、java_builder_jdk17、c_builder_gcc、c_builder_bisheng_compiler、compatibility、devkit、clamav、tester均为角色名称,需以yaml列表的形式输入对应的IP地址。
安装所有角色的服务器可以为同一台服务器。
download_tool(一键下载工具)介绍
download_tool支持Linux版本和Windows版本。
- Linux版本
- 直接下载组件
./download_tool -f machine.yaml
或./download_tool
- 下载本地iso镜像
./download_tool -iso auto
- 查看工具使用提示命令
./download_tool -h
当批量部署工具所在节点网络不通时,可以使用download_tool一键下载工具在有网络环境的机器上先行下载所需的组件安装包,供用户上传至批量部署工具所在节点,供批量部署工具在默认路径加载使用。
请将devkitdependencies文件夹上传到deploy_tool批量部署工具所在的路径,然后在当前路径下执行deploy_tool批量部署工具,如图1所示。
- 直接下载组件
- Windows版本
Windows版本的一键下载工具在下载链接中的名称为download_tool-for-windows.exe,在Windows机器上使用,用于下载组件包,并打包成devkitdependencies.tar.gz文件,供用户上传至批量部署工具所在节点,供批量部署工具在默认路径加载使用。使用工具时需要在工具所在目录下存放machine.yaml配置文件。
图2 存放machine.yaml配置文件
请在download_tool-for-windows.exe文件所在目录下运行cmd,在打开的窗口中执行download_tool-for-windows.exe文件,可在当前目录下下载组件包。下载完成后结果如图3所示。
deploy_tool(批量部署工具)介绍
- 在命令行进入工具所在文件夹路径,执行以下命令,查看工具的使用提示。
./deploy_tool -h
图4 批量部署工具使用提示
- 批量部署工具支持按角色批量部署组件,其中角色按最小颗粒级的组件组合进行拆分。
按角色下载和部署对应组件,如所示。各工具下载版本多为各工具官网提供的最新版,请参见download_config.py文件查看具体下载链接。
表1 对应组件 角色
对应组件
scanner
DevKit CLI
java_builder_jdk17
BiSheng JDK17
java_builder_jdk8
BiSheng JDK8
c_builder_gcc
GCC for openEuler、A-FOT
c_builder_bisheng_compiler
BiSheng Compiler、NonInvasive Switching
compatibility
Compatibility Testing
devkit
DevKit Web
clamav
ClamAV
tester
DevKit Tester
部署安装过程中会使用目标节点机器的“/tmp”目录作为临时文件所在目录,部署完成后将会删除“/tmp”目录下的临时文件。若目标节点机器“/tmp”目录磁盘空间不足,会导致安装失败。
script_generator(生成Jenkins、GitLab流水线运行模板)介绍
运行script_generator二进制文件会根据machine.yaml文件中的配置生成script.gitlab(GitLab)和script.jenkins(Jenkins)原生开发流水线模板。
machine.yaml与生成的模板内容具体对应关系如下:
- scanner:软件迁移评估、源码迁移、64位运行模式检查、字节对齐检查、内存一致性检查、向量化检查。
- c_builder_gcc:普通编译、GCC for openEuler编译。
- c_builder_bisheng_compiler:毕昇编译器编译。
- java_builder_jdk8:JDK8编译。
- java_builder_jdk17:JDK17编译。
- compatibility:鲲鹏兼容测试。
- tester:Java性能测试调优。
只需要在生成的流水线模板内容中填写公共变量,就可在流水线中运行。
- Jenkins
图7 Jenkins流水线模板
- GitLab
图8 GitLab流水线模板