Merge branch 'pkg' of http://10.30.190.190:54866/redrsoe2100/os-autotest into pkg
This commit is contained in:
@@ -38,10 +38,6 @@
|
||||
{
|
||||
"name": "test_dpdk_dpdk-devbind__status_dev_crypto",
|
||||
"desc": "打印加密设备的当前状态"
|
||||
},
|
||||
{
|
||||
"name": "test_dpdk_function_devbind_status",
|
||||
"desc": "测试dpdk-devbind命令查看所有网络设备状态的功能。"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -2,29 +2,9 @@
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/drbd/drbd-xen",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_drbd-xen_function_install",
|
||||
"desc": "测试软件包drbd-xen的安装功能,验证其是否能成功安装到系统中。"
|
||||
},
|
||||
{
|
||||
"name": "test_drbd-xen_function_remove",
|
||||
"desc": "测试软件包drbd-xen的卸载功能,验证其是否能被完全且干净地移除。"
|
||||
},
|
||||
{
|
||||
"name": "test_drbd-xen_function_status",
|
||||
"desc": "测试drbd-xen相关服务(如drbd)的状态查询功能。"
|
||||
},
|
||||
{
|
||||
"name": "test_drbd-xen_function_primary",
|
||||
"desc": "测试将drbd资源设置为Primary角色的功能。"
|
||||
},
|
||||
{
|
||||
"name": "test_drbd-xen_function_secondary",
|
||||
"desc": "测试将drbd资源设置为Secondary角色的功能。"
|
||||
},
|
||||
{
|
||||
"name": "test_drbd-xen_function_verify_conf",
|
||||
"desc": "测试验证drbd-xen配置文件语法正确性的功能。"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,26 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/google-noto-fonts/google-noto-sans-cham-fonts",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_google-noto-sans-cham-fonts_function_install",
|
||||
"desc": "测试google-noto-sans-cham-fonts软件包能否被成功安装。"
|
||||
},
|
||||
{
|
||||
"name": "test_google-noto-sans-cham-fonts_function_uninstall",
|
||||
"desc": "测试google-noto-sans-cham-fonts软件包能否被成功卸载。"
|
||||
},
|
||||
{
|
||||
"name": "test_google-noto-sans-cham-fonts_function_font_file",
|
||||
"desc": "测试软件包安装后,主要的Cham字体文件(如NotoSansCham-Regular.ttf)是否存在于系统字体目录中。"
|
||||
},
|
||||
{
|
||||
"name": "test_google-noto-sans-cham-fonts_function_font_list",
|
||||
"desc": "测试系统字体缓存或列表中是否包含Noto Sans Cham字体。"
|
||||
},
|
||||
{
|
||||
"name": "test_google-noto-sans-cham-fonts_function_display",
|
||||
"desc": "测试能否使用Noto Sans Cham字体渲染基本的占语(Cham)字符。"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -2,293 +2,13 @@
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/hadoop/hadoop-yarn",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_hadoop-yarn_container-executor_upper_v",
|
||||
"desc": "测试 container-executor 命令的 -V 参数"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_oom-listener_default",
|
||||
"desc": "测试 oom-listener 命令的默认行为"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_test-container-executor_help",
|
||||
"desc": "测试帮助命令"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_yarn_--help",
|
||||
"desc": "测试 yarn 命令的 --help 参数,验证是否能正确显示帮助信息"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_yarn_--debug",
|
||||
"desc": "测试 yarn 命令的 --debug 参数,验证是否能正确开启调试模式"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_yarn_--config_dir",
|
||||
"desc": "测试 yarn 命令的 --config 参数,验证是否能正确指定 Hadoop 配置目录"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_yarn_--daemon_start",
|
||||
"desc": "测试 yarn 命令的 --daemon start 参数,验证是否能正确启动守护进程"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_yarn_--daemon_status",
|
||||
"desc": "测试 yarn 命令的 --daemon status 参数,验证是否能正确查看守护进程状态"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_yarn_--daemon_stop",
|
||||
"desc": "测试 yarn 命令的 --daemon stop 参数,验证是否能正确停止守护进程"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_yarn_--loglevel_level",
|
||||
"desc": "测试 yarn 命令的 --loglevel 参数,验证是否能正确设置日志级别"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_function_resourcemanager",
|
||||
"desc": "测试 resourcemanager 功能是否正常启动和运行"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_test-container-executor__help",
|
||||
"desc": "测试 test-container-executor 命令的帮助文档功能"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_yarn_--hostnames_list_of_host_names",
|
||||
"desc": "测试 yarn 命令的 --hostnames 参数,指定工作模式下的主机列表"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_yarn_--hosts_filename",
|
||||
"desc": "测试 yarn 命令的 --hosts 参数,指定工作模式下的主机文件列表"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_yarn_--workers",
|
||||
"desc": "测试 yarn 命令的 --workers 参数,开启工作模式"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_function_nodemanager",
|
||||
"desc": "测试 nodemanager 功能是否正常启动和运行"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_container-executor_help",
|
||||
"desc": "测试container-executor命令的help参数,用于显示帮助信息"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_container-executor_version",
|
||||
"desc": "测试container-executor命令的version参数,用于显示版本信息"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_oom-listener__upper_v",
|
||||
"desc": "使用-V参数运行oom-listener命令,验证其版本信息显示功能"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_oom-listener__v",
|
||||
"desc": "使用-v参数运行oom-listener命令,验证其详细信息输出功能"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_test-container-executor__upper_v",
|
||||
"desc": "测试使用-V参数显示版本信息"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_test-container-executor__h",
|
||||
"desc": "测试使用-h参数显示帮助信息"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_test-container-executor__upper_r",
|
||||
"desc": "测试使用-R参数指定运行模式"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_test-container-executor__upper_d",
|
||||
"desc": "测试使用-D参数指定配置属性"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_test-container-executor__upper_u",
|
||||
"desc": "测试使用-U参数指定用户"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_yarn__help",
|
||||
"desc": "测试yarn命令的帮助信息"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_yarn__daemon_start",
|
||||
"desc": "测试以守护进程模式启动yarn"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_yarn__daemon_stop",
|
||||
"desc": "测试停止yarn守护进程"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_yarn__daemon_status",
|
||||
"desc": "测试查看yarn守护进程状态"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_yarn__config_dir",
|
||||
"desc": "测试指定Hadoop配置目录"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_yarn__debug",
|
||||
"desc": "测试开启shell脚本调试模式"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_yarn__loglevel_level",
|
||||
"desc": "测试设置命令的日志级别"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_yarn__workers",
|
||||
"desc": "测试开启工作节点模式"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_yarn__hostnames_list",
|
||||
"desc": "测试指定工作节点模式下的主机列表"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_yarn__hosts_filename",
|
||||
"desc": "测试指定包含工作节点主机列表的文件"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_yarn_app",
|
||||
"desc": "测试查看应用程序报告"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_yarn_application",
|
||||
"desc": "测试查看应用程序报告(长格式)"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_yarn_applicationattempt",
|
||||
"desc": "测试查看应用程序尝试报告"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_yarn_classpath",
|
||||
"desc": "测试打印运行hadoop jar所需的类路径"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_yarn_cluster",
|
||||
"desc": "测试打印集群信息"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_yarn_container",
|
||||
"desc": "测试打印容器报告"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_yarn_envvars",
|
||||
"desc": "测试显示计算出的Hadoop环境变量"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_yarn_jar_jar",
|
||||
"desc": "测试运行一个jar文件"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_yarn_logs",
|
||||
"desc": "测试转储容器日志"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_yarn_node",
|
||||
"desc": "测试打印节点报告"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_yarn_nodeattributes",
|
||||
"desc": "测试节点属性命令行客户端"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_yarn_queue",
|
||||
"desc": "测试打印队列信息"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_yarn_rmadmin",
|
||||
"desc": "测试运行资源管理器管理工具"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_yarn_schedulerconf",
|
||||
"desc": "测试更新调度器配置"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_yarn_top",
|
||||
"desc": "测试查看集群信息(top命令)"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_yarn_version",
|
||||
"desc": "测试打印yarn版本信息"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_yarn_daemonlog",
|
||||
"desc": "测试获取/设置每个守护进程的日志级别"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_yarn_scmadmin",
|
||||
"desc": "测试共享缓存管理器管理工具"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_yarn_fs2cs",
|
||||
"desc": "测试将公平调度器配置转换为容量调度器配置(实验性)"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_yarn_timelinereader",
|
||||
"desc": "测试运行时间轴读取器服务器"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_yarn_nodemanager",
|
||||
"desc": "测试在每个工作节点上运行节点管理器"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_yarn_proxyserver",
|
||||
"desc": "测试运行Web应用程序代理服务器"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_yarn_registrydns",
|
||||
"desc": "测试运行注册表DNS服务器"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_yarn_resourcemanager",
|
||||
"desc": "测试运行资源管理器"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_yarn_router",
|
||||
"desc": "测试运行路由器守护进程"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_yarn_sharedcachemanager",
|
||||
"desc": "测试运行共享缓存管理器守护进程"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_yarn_timelineserver",
|
||||
"desc": "测试运行时间轴服务器"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_function_install",
|
||||
"desc": "测试软件包安装功能"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_function_uninstall",
|
||||
"desc": "测试软件包卸载功能"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_function_check_installed",
|
||||
"desc": "测试检查软件包是否已安装"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_function_start_rm",
|
||||
"desc": "测试启动资源管理器服务"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_function_start_nm",
|
||||
"desc": "测试启动节点管理器服务"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_function_submit_job",
|
||||
"desc": "测试提交YARN作业"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_function_job_status",
|
||||
"desc": "测试查询YARN作业状态"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_function_kill_job",
|
||||
"desc": "测试终止YARN作业"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_function_view_logs",
|
||||
"desc": "测试查看作业容器日志"
|
||||
},
|
||||
{
|
||||
"name": "test_hadoop-yarn_function_cluster_info",
|
||||
"desc": "测试查看YARN集群信息"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,26 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/hadoop/libhdfs",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_libhdfs_function_open",
|
||||
"desc": "Test opening a file in HDFS"
|
||||
},
|
||||
{
|
||||
"name": "test_libhdfs_function_read",
|
||||
"desc": "Test reading a file in HDFS"
|
||||
},
|
||||
{
|
||||
"name": "test_libhdfs_function_write",
|
||||
"desc": "Test writing to a file in HDFS"
|
||||
},
|
||||
{
|
||||
"name": "test_libhdfs_function_close",
|
||||
"desc": "Test closing a file in HDFS"
|
||||
},
|
||||
{
|
||||
"name": "test_libhdfs_function_stat",
|
||||
"desc": "Test getting file status in HDFS"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,26 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/kyotocabinet/kyotocabinet-help",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_kyotocabinet-help_function_basic",
|
||||
"desc": "Test basic functionality of kyotocabinet-help"
|
||||
},
|
||||
{
|
||||
"name": "test_kyotocabinet-help_function_open",
|
||||
"desc": "Test opening a database with kyotocabinet-help"
|
||||
},
|
||||
{
|
||||
"name": "test_kyotocabinet-help_function_set",
|
||||
"desc": "Test setting a key-value pair"
|
||||
},
|
||||
{
|
||||
"name": "test_kyotocabinet-help_function_get",
|
||||
"desc": "Test retrieving a value by key"
|
||||
},
|
||||
{
|
||||
"name": "test_kyotocabinet-help_function_del",
|
||||
"desc": "Test deleting a key-value pair"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -10,18 +10,6 @@
|
||||
{
|
||||
"name": "test_libnfs-help_function_uninstall",
|
||||
"desc": "测试libnfs-help软件包的卸载功能,验证是否能够从系统中完全移除。"
|
||||
},
|
||||
{
|
||||
"name": "test_libnfs-help_function_check_version",
|
||||
"desc": "测试libnfs-help软件包的版本查询功能,验证能否正确显示其版本信息。"
|
||||
},
|
||||
{
|
||||
"name": "test_libnfs-help_function_help_info",
|
||||
"desc": "测试libnfs-help软件包的帮助信息功能,验证执行帮助命令能否正常输出使用说明。"
|
||||
},
|
||||
{
|
||||
"name": "test_libnfs-help_function_file_exist",
|
||||
"desc": "测试libnfs-help软件包的核心文件是否存在,验证安装后关键文件(如手册页、文档)是否已部署。"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -53,54 +53,6 @@
|
||||
{
|
||||
"name": "test_python3-librepo_function_install",
|
||||
"desc": "测试软件包安装功能"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-librepo_function_remove",
|
||||
"desc": "测试软件包卸载功能"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-librepo_function_update",
|
||||
"desc": "测试软件包更新功能"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-librepo_function_query",
|
||||
"desc": "测试软件包查询功能"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-librepo_function_verify",
|
||||
"desc": "测试软件包完整性验证"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-librepo_function_repolist",
|
||||
"desc": "测试列出可用软件仓库"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-librepo_function_repoconfig",
|
||||
"desc": "测试仓库配置文件读取"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-librepo_function_repodata",
|
||||
"desc": "测试仓库元数据下载"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-librepo_function_repoclean",
|
||||
"desc": "测试清理缓存数据"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-librepo_function_repohandle",
|
||||
"desc": "测试仓库句柄基本操作"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-librepo_function_pkgimport",
|
||||
"desc": "测试导入本地软件包"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-librepo_function_pkgexport",
|
||||
"desc": "测试导出软件包信息"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-librepo_function_pkgverify",
|
||||
"desc": "测试软件包签名验证"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,46 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/openwebbeans/openwebbeans-test",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_openwebbeans-test_function_di",
|
||||
"desc": "Test dependency injection functionality"
|
||||
},
|
||||
{
|
||||
"name": "test_openwebbeans-test_function_event",
|
||||
"desc": "Test event handling functionality"
|
||||
},
|
||||
{
|
||||
"name": "test_openwebbeans-test_function_install",
|
||||
"desc": "Test installation of the openwebbeans-test package"
|
||||
},
|
||||
{
|
||||
"name": "test_openwebbeans-test_function_uninstall",
|
||||
"desc": "Test uninstallation of the openwebbeans-test package"
|
||||
},
|
||||
{
|
||||
"name": "test_openwebbeans-test_function_version",
|
||||
"desc": "Test checking the installed package version"
|
||||
},
|
||||
{
|
||||
"name": "test_openwebbeans-test_function_help",
|
||||
"desc": "Test accessing the package help or usage information"
|
||||
},
|
||||
{
|
||||
"name": "test_openwebbeans-test_function_basic_bean",
|
||||
"desc": "Test basic bean creation and injection"
|
||||
},
|
||||
{
|
||||
"name": "test_openwebbeans-test_function_scope",
|
||||
"desc": "Test bean scope functionality (e.g., @ApplicationScoped, @RequestScoped)"
|
||||
},
|
||||
{
|
||||
"name": "test_openwebbeans-test_function_interceptor",
|
||||
"desc": "Test interceptor binding and execution"
|
||||
},
|
||||
{
|
||||
"name": "test_openwebbeans-test_function_alternatives",
|
||||
"desc": "Test the use of @Alternative and selection"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -14,17 +14,9 @@
|
||||
"name": "test_p11-kit-help_function_check_installed",
|
||||
"desc": "Verify if p11-kit-help is installed"
|
||||
},
|
||||
{
|
||||
"name": "test_p11-kit-help_function_update",
|
||||
"desc": "Test updating p11-kit-help package"
|
||||
},
|
||||
{
|
||||
"name": "test_p11-kit-help_function_verify",
|
||||
"desc": "Verify package integrity and files"
|
||||
},
|
||||
{
|
||||
"name": "test_p11-kit-help_function_help_content",
|
||||
"desc": "Check help content availability and format"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,970 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/poppler/poppler-utils",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_poppler-utils_pdfattach_replace",
|
||||
"desc": "测试使用-replace参数替换已存在的同名附件"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfattach_upper_v",
|
||||
"desc": "测试使用-v参数打印版本和版权信息"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfattach_h",
|
||||
"desc": "测试使用-h参数打印帮助信息"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfattach_help",
|
||||
"desc": "测试使用-help参数打印帮助信息"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfattach_special_double_help",
|
||||
"desc": "测试使用--help参数打印帮助信息"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfattach_special_question",
|
||||
"desc": "测试使用-?参数打印帮助信息"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfdetach__list",
|
||||
"desc": "测试pdfdetach命令的-list参数,用于列出PDF文件中所有嵌入文件"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfdetach__save_num_1",
|
||||
"desc": "测试pdfdetach命令的-save参数,用于通过文件编号(如1)保存指定的嵌入文件"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfdetach__savefile_filename",
|
||||
"desc": "测试pdfdetach命令的-savefile参数,用于通过文件名保存指定的嵌入文件"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfdetach__saveall",
|
||||
"desc": "测试pdfdetach命令的-saveall参数,用于保存PDF文件中所有嵌入文件"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfdetach__o_outputname",
|
||||
"desc": "测试pdfdetach命令的-o参数,用于指定保存嵌入文件的输出文件名"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfdetach__enc_encoding",
|
||||
"desc": "测试pdfdetach命令的-enc参数,用于指定输出文本的编码名称"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfdetach__opw_ownerpass",
|
||||
"desc": "测试pdfdetach命令的-opw参数,用于提供加密PDF文件的所有者密码"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfdetach__upw_userpass",
|
||||
"desc": "测试pdfdetach命令的-upw参数,用于提供加密PDF文件的用户密码"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfdetach__upper_v",
|
||||
"desc": "测试pdfdetach命令的-v参数,用于打印版权和版本信息"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfdetach__h",
|
||||
"desc": "测试pdfdetach命令的-h参数,用于打印使用信息"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfdetach__help",
|
||||
"desc": "测试pdfdetach命令的-help参数,用于打印使用信息"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfdetach__special__help",
|
||||
"desc": "测试pdfdetach命令的--help参数,用于打印使用信息"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdffonts_h",
|
||||
"desc": "测试pdffonts命令的-h参数,用于打印使用信息"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdffonts_help",
|
||||
"desc": "测试pdffonts命令的-help参数,用于打印使用信息"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdffonts__help",
|
||||
"desc": "测试pdffonts命令的--help参数,用于打印使用信息"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdffonts_special_",
|
||||
"desc": "测试pdffonts命令的-?参数,用于打印使用信息"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdffonts_v",
|
||||
"desc": "测试pdffonts命令的-v参数,用于打印版本和版权信息"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdffonts_f_num_1",
|
||||
"desc": "测试pdffonts命令的-f参数,指定从第1页开始检查字体"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdffonts_l_num_10",
|
||||
"desc": "测试pdffonts命令的-l参数,指定检查到第10页为止"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdffonts_f_l",
|
||||
"desc": "测试pdffonts命令的-f和-l参数组合,指定检查第5到第15页的字体"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdffonts_subst",
|
||||
"desc": "测试pdffonts命令的-subst参数,用于显示字体替换信息"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdffonts_opw",
|
||||
"desc": "测试pdffonts命令的-opw参数,为加密PDF文件提供所有者密码"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdffonts_upw",
|
||||
"desc": "测试pdffonts命令的-upw参数,为加密PDF文件提供用户密码"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfimages_f",
|
||||
"desc": "测试 -f 参数,指定从PDF文件的第一页开始提取图像"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfimages_l",
|
||||
"desc": "测试 -l 参数,指定提取PDF文件的最后一页图像"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfimages_png",
|
||||
"desc": "测试 -png 参数,将默认输出格式更改为PNG"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfimages_tiff",
|
||||
"desc": "测试 -tiff 参数,将默认输出格式更改为TIFF"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfimages_j",
|
||||
"desc": "测试 -j 参数,将JPEG图像保存为JPEG文件"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfimages_jp2",
|
||||
"desc": "测试 -jp2 参数,将JPEG2000图像保存为JP2文件"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfimages_jbig2",
|
||||
"desc": "测试 -jbig2 参数,将JBIG2图像保存为JBIG2文件"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfimages_ccitt",
|
||||
"desc": "测试 -ccitt 参数,将CCITT图像保存为CCITT文件"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfimages_all",
|
||||
"desc": "测试 -all 参数,启用所有支持的图像格式输出"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfimages_list",
|
||||
"desc": "测试 -list 参数,列出PDF文件中的图像信息而不保存"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfimages_opw",
|
||||
"desc": "测试 -opw 参数,为加密PDF文件指定所有者密码"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfimages_upw",
|
||||
"desc": "测试 -upw 参数,为加密PDF文件指定用户密码"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfimages_p",
|
||||
"desc": "测试 -p 参数,在输出文件名中包含页码"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfimages_q",
|
||||
"desc": "测试 -q 参数,静默模式,不打印任何消息或错误"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfimages_upper_v",
|
||||
"desc": "测试 -v 参数,打印版权和版本信息"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfimages_h",
|
||||
"desc": "测试 -h 参数,打印使用帮助信息"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfimages_help",
|
||||
"desc": "测试 -help 参数,打印使用帮助信息"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfimages_special_help",
|
||||
"desc": "测试 --help 参数,打印使用帮助信息"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfimages_special_question",
|
||||
"desc": "测试 -? 参数,打印使用帮助信息"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfimages_f_l",
|
||||
"desc": "测试 -f 和 -l 参数组合,指定提取PDF文件的特定页面范围图像"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfinfo__v",
|
||||
"desc": "测试pdfinfo命令的版本和版权信息输出"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfinfo__h",
|
||||
"desc": "测试pdfinfo命令的用法帮助信息输出"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfinfo__help",
|
||||
"desc": "测试pdfinfo命令的用法帮助信息输出(长格式)"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfinfo__question",
|
||||
"desc": "测试pdfinfo命令的用法帮助信息输出(问号格式)"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfinfo_f",
|
||||
"desc": "测试pdfinfo命令指定起始页码"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfinfo_l",
|
||||
"desc": "测试pdfinfo命令指定结束页码"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfinfo_box",
|
||||
"desc": "测试pdfinfo命令打印页面边界框"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfinfo_meta",
|
||||
"desc": "测试pdfinfo命令以XML格式打印文档元数据"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfinfo_custom",
|
||||
"desc": "测试pdfinfo命令打印自定义和标准元数据"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfinfo_js",
|
||||
"desc": "测试pdfinfo命令打印PDF中的所有JavaScript"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfinfo_struct",
|
||||
"desc": "测试pdfinfo命令打印逻辑文档结构(针对标记文件)"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfinfo_struct_text",
|
||||
"desc": "测试pdfinfo命令打印文档结构及文本内容(针对标记文件)"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfinfo_isodates",
|
||||
"desc": "测试pdfinfo命令以ISO-8601格式打印日期"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfinfo_rawdates",
|
||||
"desc": "测试pdfinfo命令直接从PDF文件打印未解码的日期字符串"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfinfo_dests",
|
||||
"desc": "测试pdfinfo命令打印PDF中的所有命名目标"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfinfo_url",
|
||||
"desc": "测试pdfinfo命令打印PDF对象内的所有URL(不扫描文本内容)"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfinfo_enc",
|
||||
"desc": "测试pdfinfo命令指定输出文本编码"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfinfo_listenc",
|
||||
"desc": "测试pdfinfo命令列出可用编码"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfinfo_opw",
|
||||
"desc": "测试pdfinfo命令指定所有者密码(用于加密文件)"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfinfo_upw",
|
||||
"desc": "测试pdfinfo命令指定用户密码(用于加密文件)"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfinfo_f_l",
|
||||
"desc": "测试pdfinfo命令同时指定起始和结束页码"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfinfo_box_meta",
|
||||
"desc": "测试pdfinfo命令同时打印页面边界框和文档元数据"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfinfo_custom_isodates",
|
||||
"desc": "测试pdfinfo命令同时打印自定义元数据和ISO格式日期"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfinfo_enc_opw",
|
||||
"desc": "测试pdfinfo命令同时指定输出编码和所有者密码"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfseparate__v",
|
||||
"desc": "测试pdfseparate命令的版本信息输出"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfseparate__h",
|
||||
"desc": "测试pdfseparate命令的帮助信息输出"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfseparate__help",
|
||||
"desc": "测试pdfseparate命令的长格式帮助信息输出"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfseparate___help",
|
||||
"desc": "测试pdfseparate命令的双横杠帮助信息输出"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfseparate__f__num_1__l__num_5",
|
||||
"desc": "测试pdfseparate命令提取PDF第1页到第5页的功能"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfseparate__f__num_3",
|
||||
"desc": "测试pdfseparate命令从第3页开始提取PDF页面的功能"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfseparate__l__num_10",
|
||||
"desc": "测试pdfseparate命令提取PDF到第10页为止的功能"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfsig_v",
|
||||
"desc": "测试pdfsig命令的版本和版权信息输出功能"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfsig_h",
|
||||
"desc": "测试pdfsig命令打印帮助信息的功能"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfsig_help",
|
||||
"desc": "测试pdfsig命令打印帮助信息的功能"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfsig__upper__upper_help",
|
||||
"desc": "测试pdfsig命令打印帮助信息的功能"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfsig_special_question",
|
||||
"desc": "测试pdfsig命令打印帮助信息的功能"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfsig_list_backends",
|
||||
"desc": "测试pdfsig命令列出可用加密签名后端的功能"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfsig_nssdir",
|
||||
"desc": "测试pdfsig命令指定NSS数据库目录路径的功能"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfsig_nss_pwd",
|
||||
"desc": "测试pdfsig命令指定NSS数据库访问密码的功能"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfsig_nocert",
|
||||
"desc": "测试pdfsig命令禁用证书验证的功能"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfsig_no_ocsp",
|
||||
"desc": "测试pdfsig命令禁用在线OCSP证书吊销检查的功能"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfsig_aia",
|
||||
"desc": "测试pdfsig命令使用AIA扩展获取证书的功能"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfsig_dump",
|
||||
"desc": "测试pdfsig命令将所有签名转储到当前目录的功能"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfsig_add_signature",
|
||||
"desc": "测试pdfsig命令向文档添加新签名的功能"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfsig_new_signature_field_name",
|
||||
"desc": "测试pdfsig命令为新添加的签名指定字段名称的功能"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfsig_sign",
|
||||
"desc": "测试pdfsig命令在指定签名字段(按名称或编号)对文档进行签名的功能"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfsig_etsi",
|
||||
"desc": "测试pdfsig命令创建ETSI.CAdES.detached类型签名的功能"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfsig_backend",
|
||||
"desc": "测试pdfsig命令指定用于签名/验证的后端的功能"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfsig_nick",
|
||||
"desc": "测试pdfsig命令使用指定昵称/指纹的证书进行签名的功能"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfsig_kpw",
|
||||
"desc": "测试pdfsig命令指定签名密钥密码的功能"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfsig_digest",
|
||||
"desc": "测试pdfsig命令指定摘要算法的功能"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfsig_reason",
|
||||
"desc": "测试pdfsig命令指定签名原因的功能"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfsig_list_nicks",
|
||||
"desc": "测试pdfsig命令列出NSS数据库中可用昵称的功能"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfsig_opw",
|
||||
"desc": "测试pdfsig命令指定所有者密码(用于加密文件)的功能"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfsig_upw",
|
||||
"desc": "测试pdfsig命令指定用户密码(用于加密文件)的功能"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftocairo_png",
|
||||
"desc": "测试pdftocairo生成PNG图片文件的功能"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftocairo_jpeg",
|
||||
"desc": "测试pdftocairo生成JPEG图片文件的功能"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftocairo_tiff",
|
||||
"desc": "测试pdftocairo生成TIFF图片文件的功能"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftocairo_ps",
|
||||
"desc": "测试pdftocairo生成PostScript文件的功能"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftocairo_eps",
|
||||
"desc": "测试pdftocairo生成EPS文件的功能"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftocairo_pdf",
|
||||
"desc": "测试pdftocairo生成PDF文件的功能"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftocairo_svg",
|
||||
"desc": "测试pdftocairo生成SVG文件的功能"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftocairo_f_num_1",
|
||||
"desc": "测试pdftocairo从第1页开始转换的功能"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftocairo_l_num_10",
|
||||
"desc": "测试pdftocairo转换到第10页为止的功能"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftocairo_o",
|
||||
"desc": "测试pdftocairo仅转换奇数页的功能"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftocairo_e",
|
||||
"desc": "测试pdftocairo仅转换偶数页的功能"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftocairo_singlefile",
|
||||
"desc": "测试pdftocairo仅输出第一页且文件名不加页码的功能"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftocairo_r_num_300",
|
||||
"desc": "测试pdftocairo设置输出分辨率为300 PPI的功能"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftocairo_scale_to_num_1000",
|
||||
"desc": "测试pdftocairo缩放页面以适应1000x1000像素框的功能"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftocairo_mono",
|
||||
"desc": "测试pdftocairo生成单色图片的功能"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftocairo_gray",
|
||||
"desc": "测试pdftocairo生成灰度图片的功能"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftocairo_transp",
|
||||
"desc": "测试pdftocairo为PNG图片生成透明背景的功能"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftocairo_cropbox",
|
||||
"desc": "测试pdftocairo使用CropBox而非MediaBox的功能"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftocairo_paper_A4",
|
||||
"desc": "测试pdftocairo设置纸张大小为A4的功能"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftocairo_nocrop",
|
||||
"desc": "测试pdftocairo不裁剪页面至CropBox的功能"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftocairo_upper_q",
|
||||
"desc": "测试pdftocairo静默模式(不输出信息)的功能"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftocairo_upper_v",
|
||||
"desc": "测试pdftocairo打印版本和版权信息的功能"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftocairo_h",
|
||||
"desc": "测试pdftocairo打印帮助信息的功能"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftohtml_f",
|
||||
"desc": "测试-f参数,指定转换的起始页码"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftohtml_l",
|
||||
"desc": "测试-l参数,指定转换的结束页码"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftohtml_q",
|
||||
"desc": "测试-q参数,不打印任何消息或错误"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftohtml_h",
|
||||
"desc": "测试-h参数,打印使用信息"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftohtml_help",
|
||||
"desc": "测试-help参数,打印使用信息"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftohtml__help",
|
||||
"desc": "测试--help参数,打印使用信息"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftohtml_p",
|
||||
"desc": "测试-p参数,将.pdf链接替换为.html链接"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftohtml_c",
|
||||
"desc": "测试-c参数,生成复杂文档"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftohtml_s",
|
||||
"desc": "测试-s参数,生成包含所有页面的单一文档"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftohtml_dataurls",
|
||||
"desc": "测试-dataurls参数,在HTML中使用data URL而非外部图片"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftohtml_i",
|
||||
"desc": "测试-i参数,忽略图片"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftohtml_noframes",
|
||||
"desc": "测试-noframes参数,不生成框架"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftohtml_stdout",
|
||||
"desc": "测试-stdout参数,使用标准输出"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftohtml_zoom",
|
||||
"desc": "测试-zoom参数,缩放PDF文档"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftohtml_xml",
|
||||
"desc": "测试-xml参数,输出用于XML后处理"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftohtml_noroundcoord",
|
||||
"desc": "测试-noroundcoord参数,不四舍五入坐标(仅限XML输出)"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftohtml_hidden",
|
||||
"desc": "测试-hidden参数,输出隐藏文本"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftohtml_nomerge",
|
||||
"desc": "测试-nomerge参数,不合并段落"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftohtml_enc",
|
||||
"desc": "测试-enc参数,指定输出文本编码名称"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftohtml_fmt",
|
||||
"desc": "测试-fmt参数,指定Splash输出的图片文件格式(png或jpg)"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftohtml_upper_v",
|
||||
"desc": "测试-v参数,打印版权和版本信息"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftohtml_opw",
|
||||
"desc": "测试-opw参数,指定所有者密码(用于加密文件)"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftohtml_upw",
|
||||
"desc": "测试-upw参数,指定用户密码(用于加密文件)"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftohtml_nodrm",
|
||||
"desc": "测试-nodrm参数,覆盖文档DRM设置"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftohtml_wbt",
|
||||
"desc": "测试-wbt参数,指定断词阈值"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftohtml_fontfullname",
|
||||
"desc": "测试-fontfullname参数,输出字体全名"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftoppm_f",
|
||||
"desc": "测试 pdftoppm 命令的 -f 参数,指定从第几页开始转换"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftoppm_l",
|
||||
"desc": "测试 pdftoppm 命令的 -l 参数,指定转换到第几页结束"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftoppm_o",
|
||||
"desc": "测试 pdftoppm 命令的 -o 参数,仅转换奇数页"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftoppm_e",
|
||||
"desc": "测试 pdftoppm 命令的 -e 参数,仅转换偶数页"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftoppm_singlefile",
|
||||
"desc": "测试 pdftoppm 命令的 -singlefile 参数,只转换第一页且文件名不加页码"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftoppm_scale-dimension-before-rotation",
|
||||
"desc": "测试 pdftoppm 命令的 -scale-dimension-before-rotation 参数,对旋转的PDF在旋转前调整尺寸"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftoppm_r",
|
||||
"desc": "测试 pdftoppm 命令的 -r 参数,设置分辨率(DPI)"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftoppm_rx",
|
||||
"desc": "测试 pdftoppm 命令的 -rx 参数,设置X轴分辨率(DPI)"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftoppm_ry",
|
||||
"desc": "测试 pdftoppm 命令的 -ry 参数,设置Y轴分辨率(DPI)"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftoppm_scale-to",
|
||||
"desc": "测试 pdftoppm 命令的 -scale-to 参数,将页面缩放至指定像素的方框内"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftoppm_scale-to-x",
|
||||
"desc": "测试 pdftoppm 命令的 -scale-to-x 参数,将页面水平缩放至指定像素"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftoppm_scale-to-y",
|
||||
"desc": "测试 pdftoppm 命令的 -scale-to-y 参数,将页面垂直缩放至指定像素"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftoppm_x",
|
||||
"desc": "测试 pdftoppm 命令的 -x 参数,设置裁剪区域左上角的X坐标"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftoppm_y",
|
||||
"desc": "测试 pdftoppm 命令的 -y 参数,设置裁剪区域左上角的Y坐标"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftoppm_upper_w",
|
||||
"desc": "测试 pdftoppm 命令的 -W 参数,设置裁剪区域的宽度(像素)"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftoppm_upper_h",
|
||||
"desc": "测试 pdftoppm 命令的 -H 参数,设置裁剪区域的高度(像素)"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftoppm_sz",
|
||||
"desc": "测试 pdftoppm 命令的 -sz 参数,设置正方形裁剪区域的边长(像素)"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftoppm_cropbox",
|
||||
"desc": "测试 pdftoppm 命令的 -cropbox 参数,使用裁剪框而非媒体框"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftoppm_hide-annotations",
|
||||
"desc": "测试 pdftoppm 命令的 -hide-annotations 参数,不显示注释"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftoppm_mono",
|
||||
"desc": "测试 pdftoppm 命令的 -mono 参数,生成单色PBM文件"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftoppm_gray",
|
||||
"desc": "测试 pdftoppm 命令的 -gray 参数,生成灰度PGM文件"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftoppm_png",
|
||||
"desc": "测试 pdftoppm 命令的 -png 参数,生成PNG文件"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftoppm_jpeg",
|
||||
"desc": "测试 pdftoppm 命令的 -jpeg 参数,生成JPEG文件"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftoppm_jpegcmyk",
|
||||
"desc": "测试 pdftoppm 命令的 -jpegcmyk 参数,生成CMYK JPEG文件"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftoppm_tiff",
|
||||
"desc": "测试 pdftoppm 命令的 -tiff 参数,生成TIFF文件"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftoppm_q",
|
||||
"desc": "测试 pdftoppm 命令的 -q 参数,不打印任何消息或错误"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftoppm_progress",
|
||||
"desc": "测试 pdftoppm 命令的 -progress 参数,打印进度信息"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftoppm_v",
|
||||
"desc": "测试 pdftoppm 命令的 -v 参数,打印版权和版本信息"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftoppm_h",
|
||||
"desc": "测试 pdftoppm 命令的 -h 参数,打印使用信息"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftoppm_help",
|
||||
"desc": "测试 pdftoppm 命令的 -help 参数,打印使用信息"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftoppm__upper_help",
|
||||
"desc": "测试 pdftoppm 命令的 --help 参数,打印使用信息"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftoppm_special_question",
|
||||
"desc": "测试 pdftoppm 命令的 -? 参数,打印使用信息"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftops_f",
|
||||
"desc": "测试 pdftops 命令的 -f 参数,指定起始打印页码"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftops_l",
|
||||
"desc": "测试 pdftops 命令的 -l 参数,指定结束打印页码"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftops_level1",
|
||||
"desc": "测试 pdftops 命令的 -level1 参数,生成 Level 1 PostScript"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftops_eps",
|
||||
"desc": "测试 pdftops 命令的 -eps 参数,生成 Encapsulated PostScript"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftops_r",
|
||||
"desc": "测试 pdftops 命令的 -r 参数,指定光栅化分辨率"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftops_paper",
|
||||
"desc": "测试 pdftops 命令的 -paper 参数,指定纸张大小"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftops_duplex",
|
||||
"desc": "测试 pdftops 命令的 -duplex 参数,启用双面打印"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftops_q",
|
||||
"desc": "测试 pdftops 命令的 -q 参数,不打印任何消息或错误"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftops_upper_v",
|
||||
"desc": "测试 pdftops 命令的 -v 参数,打印版权和版本信息"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftops_h",
|
||||
"desc": "测试 pdftops 命令的 -h 参数,打印使用信息"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftops_f_l",
|
||||
"desc": "测试 pdftops 命令的 -f 和 -l 参数组合,指定打印页码范围"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftops_level1_eps",
|
||||
"desc": "测试 pdftops 命令的 -level1 和 -eps 参数组合,生成 Level 1 封装的 PostScript"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftops_r_paper",
|
||||
"desc": "测试 pdftops 命令的 -r 和 -paper 参数组合,指定分辨率和纸张大小"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftops_nocrop_nocenter",
|
||||
"desc": "测试 pdftops 命令的 -nocrop 和 -nocenter 参数组合,不裁剪页面且不居中"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftops_optimizecolorspace",
|
||||
"desc": "测试 pdftops 命令的 -optimizecolorspace 参数,优化灰色RGB图像的色彩空间"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftotext_f",
|
||||
"desc": "测试指定起始页码进行转换"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftotext_l",
|
||||
"desc": "测试指定结束页码进行转换"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftotext_f_l",
|
||||
"desc": "测试同时指定起始和结束页码进行转换"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftotext_r",
|
||||
"desc": "测试设置分辨率进行转换"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftotext_x_y_upper_w_upper_h",
|
||||
"desc": "测试指定裁剪区域进行转换"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftotext_layout",
|
||||
"desc": "测试保持原始物理布局进行转换"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftotext_fixed",
|
||||
"desc": "测试以固定宽度字体模式进行转换"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftotext_raw",
|
||||
"desc": "测试保持内容流顺序进行转换"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftotext_nodiag",
|
||||
"desc": "测试丢弃对角线文本进行转换"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftotext_htmlmeta",
|
||||
"desc": "测试生成包含元信息的简单HTML文件"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftotext_tsv",
|
||||
"desc": "测试生成包含边界框元信息的简单TSV文件"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftotext_enc",
|
||||
"desc": "测试指定输出文本编码"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftotext_listenc",
|
||||
"desc": "测试列出可用编码"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftotext_eol",
|
||||
"desc": "测试指定输出行尾符"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftotext_nopgbrk",
|
||||
"desc": "测试不在页面间插入分页符"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftotext_bbox",
|
||||
"desc": "测试输出每个单词的边界框和页面尺寸到HTML"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftotext_bbox_layout",
|
||||
"desc": "测试输出包含额外布局边界框数据的HTML"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftotext_cropbox",
|
||||
"desc": "测试使用裁剪框而非媒体框"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftotext_colspacing",
|
||||
"desc": "测试设置列间距判定阈值"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftotext_opw",
|
||||
"desc": "测试使用所有者密码打开加密文件"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftotext_upw",
|
||||
"desc": "测试使用用户密码打开加密文件"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftotext_q",
|
||||
"desc": "测试静默模式,不打印任何信息或错误"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftotext_v",
|
||||
"desc": "测试打印版本和版权信息"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdftotext_h",
|
||||
"desc": "测试打印帮助信息"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfunite__v",
|
||||
"desc": "测试pdfunite命令的-v参数,用于打印版本和版权信息"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfunite__h",
|
||||
"desc": "测试pdfunite命令的-h参数,用于打印使用信息"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfunite_help",
|
||||
"desc": "测试pdfunite命令的-help参数,用于打印使用信息"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfunite___help",
|
||||
"desc": "测试pdfunite命令的--help参数,用于打印使用信息"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfunite_merge_two_pdfs",
|
||||
"desc": "测试pdfunite命令合并两个PDF源文件到一个目标PDF文件"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_pdfunite_merge_multiple_pdfs",
|
||||
"desc": "测试pdfunite命令合并多个PDF源文件到一个目标PDF文件"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_function_install_check",
|
||||
"desc": "检查软件包是否已正确安装"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_function_pdfinfo_basic",
|
||||
"desc": "使用pdfinfo命令获取PDF文档基本信息"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_function_pdftotext_extract",
|
||||
"desc": "使用pdftotext命令从PDF中提取文本内容"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_function_pdftoppm_convert",
|
||||
"desc": "使用pdftoppm命令将PDF页面转换为PNG图片"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_function_pdfimages_extract",
|
||||
"desc": "使用pdfimages命令从PDF中提取所有图像"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_function_pdftocairo_convert",
|
||||
"desc": "使用pdftocairo命令将PDF转换为SVG格式"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_function_pdfunite_merge",
|
||||
"desc": "使用pdfunite命令合并多个PDF文件"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_function_pdfseparate_split",
|
||||
"desc": "使用pdfseparate命令将PDF文件拆分为单页文件"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_function_pdffonts_list",
|
||||
"desc": "使用pdffonts命令列出PDF文件中使用的字体"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_function_pdfattach_add",
|
||||
"desc": "使用pdfattach命令向PDF添加附件文件"
|
||||
},
|
||||
{
|
||||
"name": "test_poppler-utils_function_pdfdetach_list",
|
||||
"desc": "使用pdfdetach命令列出PDF中的嵌入文件"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,10 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/python-docker-pycreds/python3-docker-pycreds",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_python3-docker-pycreds_function_auth",
|
||||
"desc": "Test authentication functionality"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -10,217 +10,9 @@
|
||||
"name": "test_python3-hug_hug__v",
|
||||
"desc": "测试 hug 命令的 -v 参数,显示版本信息"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-hug_hug__f_file",
|
||||
"desc": "测试 hug 命令的 -f 参数,指定文件"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-hug_hug__m_module",
|
||||
"desc": "测试 hug 命令的 -m 参数,指定模块"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-hug_hug__ho_host",
|
||||
"desc": "测试 hug 命令的 -ho 参数,指定主机"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-hug_hug__p_port",
|
||||
"desc": "测试 hug 命令的 -p 参数,指定端口号"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-hug_hug__n",
|
||||
"desc": "测试 hug 命令的 -n 参数,禁用 404 文档"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-hug_hug__ma",
|
||||
"desc": "测试 hug 命令的 -ma 参数,手动重载"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-hug_hug__i_interval",
|
||||
"desc": "测试 hug 命令的 -i 参数,指定间隔时间"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-hug_hug__c_command",
|
||||
"desc": "测试 hug 命令的 -c 参数,指定命令"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-hug_hug__s",
|
||||
"desc": "测试 hug 命令的 -s 参数,静默模式"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-hug_hug-3__h",
|
||||
"desc": "测试显示帮助信息"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-hug_hug-3__v",
|
||||
"desc": "测试显示程序版本号"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-hug_hug-3__f_file",
|
||||
"desc": "测试指定文件参数"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-hug_hug-3__m_module",
|
||||
"desc": "测试指定模块参数"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-hug_hug-3__ho_host",
|
||||
"desc": "测试指定主机参数"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-hug_hug-3__p_port",
|
||||
"desc": "测试指定端口参数"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-hug_hug-3__n",
|
||||
"desc": "测试禁用404文档参数"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-hug_hug-3__ma",
|
||||
"desc": "测试手动重载参数"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-hug_hug-3__i_interval",
|
||||
"desc": "测试指定间隔参数"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-hug_hug-3__c_command",
|
||||
"desc": "测试指定命令参数"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-hug_hug-3__s",
|
||||
"desc": "测试静默模式参数"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-hug_function_api",
|
||||
"desc": "测试API接口功能"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-hug_hug_h",
|
||||
"desc": "测试显示帮助信息"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-hug_hug_v",
|
||||
"desc": "测试显示程序版本号"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-hug_hug_f",
|
||||
"desc": "测试指定文件启动"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-hug_hug_m",
|
||||
"desc": "测试指定模块启动"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-hug_hug_ho",
|
||||
"desc": "测试指定主机地址"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-hug_hug_p",
|
||||
"desc": "测试指定端口号"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-hug_hug_n",
|
||||
"desc": "测试禁用404文档"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-hug_hug_ma",
|
||||
"desc": "测试手动重载模式"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-hug_hug_i",
|
||||
"desc": "测试指定轮询间隔"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-hug_hug_c",
|
||||
"desc": "测试指定启动命令"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-hug_hug_s",
|
||||
"desc": "测试静默模式"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-hug_hug_f_m",
|
||||
"desc": "测试同时指定文件和模块"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-hug_hug_ho_p",
|
||||
"desc": "测试同时指定主机和端口"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-hug_hug_n_ma",
|
||||
"desc": "测试同时禁用404文档并启用手动重载"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-hug_hug_i_c",
|
||||
"desc": "测试同时指定轮询间隔和启动命令"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-hug_hug_s_n",
|
||||
"desc": "测试同时启用静默模式和禁用404文档"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-hug_hug_f_ho_p",
|
||||
"desc": "测试同时指定文件、主机和端口"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-hug_hug_m_i_s",
|
||||
"desc": "测试同时指定模块、轮询间隔和静默模式"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-hug_hug-3__f",
|
||||
"desc": "测试指定API文件"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-hug_hug-3__m",
|
||||
"desc": "测试指定API模块"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-hug_hug-3__ho",
|
||||
"desc": "测试指定服务器监听主机"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-hug_hug-3__p",
|
||||
"desc": "测试指定服务器监听端口"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-hug_hug-3__i",
|
||||
"desc": "测试指定自动重载间隔"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-hug_hug-3__c",
|
||||
"desc": "测试指定启动命令"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-hug_hug-3__f__ho__p",
|
||||
"desc": "测试组合指定文件、主机和端口启动服务器"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-hug_function_install",
|
||||
"desc": "测试软件包安装功能"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-hug_function_uninstall",
|
||||
"desc": "测试软件包卸载功能"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-hug_function_import",
|
||||
"desc": "测试导入hug模块"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-hug_function_version",
|
||||
"desc": "测试获取hug版本号"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-hug_function_basic_api",
|
||||
"desc": "测试创建基础API"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-hug_function_api_cli",
|
||||
"desc": "测试API命令行接口"
|
||||
},
|
||||
{
|
||||
"name": "test_python3-hug_function_api_http",
|
||||
"desc": "测试API HTTP接口"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,26 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/python-logutils/help",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_help_function_basic",
|
||||
"desc": "Test basic help functionality"
|
||||
},
|
||||
{
|
||||
"name": "test_help_function_args",
|
||||
"desc": "Test help with arguments"
|
||||
},
|
||||
{
|
||||
"name": "test_help_function_flags",
|
||||
"desc": "Test help with flags"
|
||||
},
|
||||
{
|
||||
"name": "test_help_function_output",
|
||||
"desc": "Test help output format"
|
||||
},
|
||||
{
|
||||
"name": "test_help_function_error",
|
||||
"desc": "Test help error handling"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,10 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/qt6-qtserialport/qt6-qtserialport-devel",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_qt6-qtserialport-devel_function_serialport",
|
||||
"desc": "Test serial port basic functionality"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,10 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/texlive-split-a/texlive-12many-doc",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_texlive-12many-doc_function_basic",
|
||||
"desc": "Test basic functionality"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,26 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/texlive-split-e/texlive-collection-music",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_texlive-collection-music_function_package_install",
|
||||
"desc": "测试 texlive-collection-music 软件包能否成功安装"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-collection-music_function_package_remove",
|
||||
"desc": "测试 texlive-collection-music 软件包能否被完整卸载"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-collection-music_function_contains_musictex",
|
||||
"desc": "测试软件包是否包含核心音乐排版包 musictex 及其相关文件"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-collection-music_function_contains_packages",
|
||||
"desc": "测试软件包是否包含其他常用音乐排版组件(如 musixtex, pmx, lilypond)"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-collection-music_function_basic_compile",
|
||||
"desc": "测试使用软件包中的工具(如 musictex 或 musixtex)能否编译一个简单的乐谱示例文件"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -9,14 +9,6 @@
|
||||
{
|
||||
"name": "test_texlive-mathpunctspace_function_remove",
|
||||
"desc": "Test package removal"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-mathpunctspace_function_check",
|
||||
"desc": "Check package availability"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-mathpunctspace_function_usage",
|
||||
"desc": "Test basic package usage"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -2,21 +2,9 @@
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/texlive-split-u/texlive-sf298-doc",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_texlive-sf298-doc_function_install",
|
||||
"desc": "Test package installation"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-sf298-doc_function_remove",
|
||||
"desc": "Test package removal"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-sf298-doc_function_check_files",
|
||||
"desc": "Check if documentation files exist"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-sf298-doc_function_latex_compile",
|
||||
"desc": "Test compiling a sample SF298 form"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,10 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/texlive-split-v/texlive-showdim-doc",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_texlive-showdim-doc_function_dim",
|
||||
"desc": "Test dimension calculation functionality"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,14 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/texlive-split-v/texlive-struktex-doc",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_texlive-struktex-doc_function_install",
|
||||
"desc": "Test package installation"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-struktex-doc_function_basic",
|
||||
"desc": "Test basic functionality"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -6,22 +6,6 @@
|
||||
"name": "test_texlive-translation-dcolumn-fr-doc_install",
|
||||
"desc": "测试软件包 texlive-translation-dcolumn-fr-doc 的安装功能,验证是否能够成功安装到系统中。",
|
||||
"machine num": 1
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-translation-dcolumn-fr-doc_function_install",
|
||||
"desc": "测试软件包 texlive-translation-dcolumn-fr-doc 的安装功能,验证是否能够通过包管理器成功安装。"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-translation-dcolumn-fr-doc_function_uninstall",
|
||||
"desc": "测试软件包 texlive-translation-dcolumn-fr-doc 的卸载功能,验证是否能够从系统中完全移除。"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-translation-dcolumn-fr-doc_function_check_installed",
|
||||
"desc": "测试验证软件包 texlive-translation-dcolumn-fr-doc 是否已正确安装到系统中。"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-translation-dcolumn-fr-doc_function_doc_existence",
|
||||
"desc": "测试软件包安装后,其核心文档文件(如README、手册)是否存在于预期的系统路径下。"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,34 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/texlive-split-y/texlive-hitszbeamer",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_texlive-hitszbeamer_function_basic",
|
||||
"desc": "Test basic functionality of texlive-hitszbeamer"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-hitszbeamer_function_install",
|
||||
"desc": "Test installation of texlive-hitszbeamer package"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-hitszbeamer_function_uninstall",
|
||||
"desc": "Test uninstallation of texlive-hitszbeamer package"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-hitszbeamer_function_check_installed",
|
||||
"desc": "Check if texlive-hitszbeamer is installed"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-hitszbeamer_function_basic_compile",
|
||||
"desc": "Test basic compilation with hitszbeamer document class"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-hitszbeamer_function_theme_options",
|
||||
"desc": "Test applying different theme options in hitszbeamer"
|
||||
},
|
||||
{
|
||||
"name": "test_texlive-hitszbeamer_function_logo_usage",
|
||||
"desc": "Test logo inclusion functionality in hitszbeamer"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,10 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/texlive-split-z/texlive-xtab",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_texlive-xtab_function_install",
|
||||
"desc": "Test package installation"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -2,10 +2,6 @@
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/utf8proc/utf8proc-devel",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_utf8proc-devel_function_install",
|
||||
"desc": "Test installation of utf8proc-devel package"
|
||||
},
|
||||
{
|
||||
"name": "test_utf8proc-devel_function_uninstall",
|
||||
"desc": "Test uninstallation of utf8proc-devel package"
|
||||
@@ -17,14 +13,6 @@
|
||||
{
|
||||
"name": "test_utf8proc-devel_function_library",
|
||||
"desc": "Test presence of library files"
|
||||
},
|
||||
{
|
||||
"name": "test_utf8proc-devel_function_pkgconfig",
|
||||
"desc": "Test pkg-config file availability"
|
||||
},
|
||||
{
|
||||
"name": "test_utf8proc-devel_function_compile",
|
||||
"desc": "Test basic compile and link with library"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,14 +0,0 @@
|
||||
{
|
||||
"path": "$OET_PATH/testcases/function_test/pkg_test/xstream/xstream-javadoc",
|
||||
"machine num": 1,
|
||||
"cases": [
|
||||
{
|
||||
"name": "test_xstream-javadoc_function_parse",
|
||||
"desc": "Test parsing functionality"
|
||||
},
|
||||
{
|
||||
"name": "test_xstream-javadoc_function_serialize",
|
||||
"desc": "Test serialization functionality"
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -1,62 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-24
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试dpdk-devbind命令查看所有网络设备状态的功能。
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试dpdk-devbind命令查看所有网络设备状态的功能"
|
||||
|
||||
LOG_INFO "步骤1:检查dpdk软件包是否已在yum源中"
|
||||
if ! dnf list available dpdk 2>/dev/null | grep -q dpdk; then
|
||||
LOG_ERROR "yum源中未找到dpdk软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤2:检查dpdk-devbind命令参数是否支持"
|
||||
if ! dpdk-devbind --help 2>/dev/null | grep -q "\-\-status"; then
|
||||
LOG_ERROR "dpdk-devbind命令不支持--status参数"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤3:检查dpdk是否已安装"
|
||||
if ! command -v dpdk-devbind &> /dev/null; then
|
||||
LOG_INFO "dpdk未安装,开始安装"
|
||||
dnf install -y dpdk
|
||||
CHECK_RESULT $? 0 0 "dpdk安装失败"
|
||||
INSTALLED_FLAG=1
|
||||
else
|
||||
LOG_INFO "dpdk已安装"
|
||||
INSTALLED_FLAG=0
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤4:执行dpdk-devbind --status命令查看所有网络设备状态"
|
||||
dpdk-devbind --status
|
||||
CHECK_RESULT $? 0 0 "执行dpdk-devbind --status命令失败"
|
||||
|
||||
LOG_INFO "步骤5:环境恢复"
|
||||
if [ "$INSTALLED_FLAG" -eq 1 ]; then
|
||||
LOG_INFO "卸载dpdk软件包"
|
||||
dnf remove -y dpdk
|
||||
CHECK_RESULT $? 0 0 "dpdk卸载失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,68 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-06
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试软件包drbd-xen的安装功能,验证其是否能成功安装到系统中。
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 定义变量
|
||||
PKG_NAME="drbd-xen"
|
||||
LOG_INFO "开始测试软件包 ${PKG_NAME} 的安装功能"
|
||||
LOG_INFO "步骤1:检查当前环境是否已安装 ${PKG_NAME}"
|
||||
rpm -q ${PKG_NAME} > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "检测到 ${PKG_NAME} 已安装,测试结束后将保持安装状态"
|
||||
INSTALLED=1
|
||||
else
|
||||
LOG_INFO "检测到 ${PKG_NAME} 未安装,将在测试过程中安装并在结束前卸载"
|
||||
INSTALLED=0
|
||||
fi
|
||||
LOG_INFO "步骤2:检查 yum 源中是否存在 ${PKG_NAME} 软件包"
|
||||
dnf list available ${PKG_NAME} > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 255 "yum 源中不存在 ${PKG_NAME} 软件包"
|
||||
LOG_INFO "步骤3:测试安装 ${PKG_NAME} 软件包"
|
||||
if [ ${INSTALLED} -eq 0 ]; then
|
||||
dnf install -y ${PKG_NAME} > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "安装 ${PKG_NAME} 失败"
|
||||
LOG_INFO "安装 ${PKG_NAME} 成功"
|
||||
else
|
||||
LOG_INFO "${PKG_NAME} 已安装,跳过安装步骤"
|
||||
fi
|
||||
LOG_INFO "步骤4:验证 ${PKG_NAME} 是否成功安装"
|
||||
rpm -q ${PKG_NAME} > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "${PKG_NAME} 未正确安装"
|
||||
LOG_INFO "步骤5:验证 ${PKG_NAME} 相关命令是否可用"
|
||||
if command -v drbdadm > /dev/null 2>&1; then
|
||||
LOG_INFO "drbdadm 命令可用"
|
||||
else
|
||||
LOG_ERROR "drbdadm 命令不可用"
|
||||
exit 255
|
||||
fi
|
||||
LOG_INFO "步骤6:清理测试环境"
|
||||
if [ ${INSTALLED} -eq 0 ]; then
|
||||
LOG_INFO "卸载测试安装的 ${PKG_NAME} 软件包"
|
||||
dnf remove -y ${PKG_NAME} > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "卸载 ${PKG_NAME} 失败"
|
||||
LOG_INFO "卸载 ${PKG_NAME} 成功"
|
||||
else
|
||||
LOG_INFO "测试前 ${PKG_NAME} 已安装,保持安装状态"
|
||||
fi
|
||||
LOG_INFO "测试完成,${PKG_NAME} 安装功能验证通过"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,99 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-06
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试将drbd资源设置为Primary角色的功能。
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 判断环境是否已安装drbd-xen软件包
|
||||
LOG_INFO "检查是否已安装drbd-xen软件包"
|
||||
if dnf list installed drbd-xen &>/dev/null; then
|
||||
LOG_INFO "drbd-xen已安装,标记为环境已安装状态"
|
||||
ENV_INSTALLED=1
|
||||
else
|
||||
LOG_INFO "drbd-xen未安装,标记为环境未安装状态"
|
||||
ENV_INSTALLED=0
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有drbd-xen软件包
|
||||
LOG_INFO "检查yum源中是否有drbd-xen软件包"
|
||||
if ! dnf list available drbd-xen &>/dev/null; then
|
||||
LOG_ERROR "yum源中未找到drbd-xen软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果环境未安装,则安装drbd-xen
|
||||
if [ $ENV_INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "开始安装drbd-xen软件包"
|
||||
dnf install -y drbd-xen
|
||||
CHECK_RESULT $? 0 0 "安装drbd-xen失败"
|
||||
LOG_INFO "drbd-xen安装成功"
|
||||
fi
|
||||
|
||||
# 检查drbdadm命令是否支持primary参数
|
||||
LOG_INFO "检查drbdadm命令是否支持primary参数"
|
||||
if ! drbdadm primary --help &>/dev/null; then
|
||||
LOG_ERROR "drbdadm命令不支持primary参数"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 创建测试用的drbd资源配置文件
|
||||
LOG_INFO "创建测试用的drbd资源配置文件"
|
||||
cat > /tmp/test-resource.res << EOF
|
||||
resource test-resource {
|
||||
device /dev/drbd0;
|
||||
disk /dev/sdb1;
|
||||
meta-disk internal;
|
||||
on node1 {
|
||||
address 192.168.1.10:7788;
|
||||
}
|
||||
on node2 {
|
||||
address 192.168.1.11:7788;
|
||||
}
|
||||
}
|
||||
EOF
|
||||
|
||||
# 检查配置文件语法
|
||||
LOG_INFO "检查drbd配置文件语法"
|
||||
drbdadm dump test-resource /tmp/test-resource.res
|
||||
CHECK_RESULT $? 0 0 "drbd配置文件语法检查失败"
|
||||
|
||||
# 模拟将drbd资源设置为Primary角色
|
||||
LOG_INFO "模拟将drbd资源设置为Primary角色"
|
||||
drbdadm primary test-resource --dry-run
|
||||
CHECK_RESULT $? 0 0 "将drbd资源设置为Primary角色失败"
|
||||
|
||||
# 清理测试配置文件
|
||||
LOG_INFO "清理测试配置文件"
|
||||
rm -f /tmp/test-resource.res
|
||||
CHECK_RESULT $? 0 0 "清理测试配置文件失败"
|
||||
|
||||
# 如果测试前环境未安装,则卸载drbd-xen
|
||||
if [ $ENV_INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "卸载drbd-xen软件包"
|
||||
dnf remove -y drbd-xen
|
||||
CHECK_RESULT $? 0 0 "卸载drbd-xen失败"
|
||||
LOG_INFO "drbd-xen卸载成功"
|
||||
else
|
||||
LOG_INFO "保持drbd-xen安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试将drbd资源设置为Primary角色的功能完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,104 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-06
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试将drbd资源设置为Secondary角色的功能。
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 定义软件包名称和命令
|
||||
PACKAGE_NAME="drbd-xen"
|
||||
DRBDADM_CMD="/sbin/drbdadm"
|
||||
RESOURCE_NAME="test_res"
|
||||
NODE2_IPV4="192.168.1.100"
|
||||
NODE2_PASSWORD="password"
|
||||
NODE2_USER="root"
|
||||
|
||||
# 步骤1:检查环境是否已安装软件包
|
||||
LOG_INFO "步骤1:检查环境是否已安装软件包"
|
||||
if dnf list installed | grep -q "$PACKAGE_NAME"; then
|
||||
LOG_INFO "软件包 $PACKAGE_NAME 已安装,脚本结束时将保持安装状态"
|
||||
INSTALLED="true"
|
||||
else
|
||||
LOG_INFO "软件包 $PACKAGE_NAME 未安装,将在测试过程中安装"
|
||||
INSTALLED="false"
|
||||
fi
|
||||
|
||||
# 步骤2:检查yum源中是否有软件包
|
||||
LOG_INFO "步骤2:检查yum源中是否有软件包"
|
||||
if ! dnf list available | grep -q "$PACKAGE_NAME"; then
|
||||
LOG_ERROR "yum源中未找到软件包 $PACKAGE_NAME"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 步骤3:安装软件包(如果未安装)
|
||||
if [ "$INSTALLED" = "false" ]; then
|
||||
LOG_INFO "步骤3:安装软件包 $PACKAGE_NAME"
|
||||
dnf install -y "$PACKAGE_NAME"
|
||||
CHECK_RESULT $? 0 0 "安装软件包 $PACKAGE_NAME 失败"
|
||||
fi
|
||||
|
||||
# 步骤4:检查drbdadm命令是否存在
|
||||
LOG_INFO "步骤4:检查drbdadm命令是否存在"
|
||||
if [ ! -x "$DRBDADM_CMD" ]; then
|
||||
LOG_ERROR "命令 $DRBDADM_CMD 不存在或不可执行"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 步骤5:检查drbdadm是否支持secondary参数
|
||||
LOG_INFO "步骤5:检查drbdadm是否支持secondary参数"
|
||||
if ! "$DRBDADM_CMD" --help 2>&1 | grep -q "secondary"; then
|
||||
LOG_ERROR "命令 $DRBDADM_CMD 不支持secondary参数"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 步骤6:在第二个服务器上创建测试资源
|
||||
LOG_INFO "步骤6:在第二个服务器上创建测试资源"
|
||||
SSH_CMD "$DRBDADM_CMD create-md $RESOURCE_NAME" $NODE2_IPV4 $NODE2_PASSWORD $NODE2_USER
|
||||
CHECK_RESULT $? 0 0 "在第二个服务器上创建测试资源失败"
|
||||
|
||||
# 步骤7:在本地节点设置资源为Secondary角色
|
||||
LOG_INFO "步骤7:在本地节点设置资源为Secondary角色"
|
||||
"$DRBDADM_CMD" secondary "$RESOURCE_NAME"
|
||||
CHECK_RESULT $? 0 0 "设置资源为Secondary角色失败"
|
||||
|
||||
# 步骤8:验证资源角色是否为Secondary
|
||||
LOG_INFO "步骤8:验证资源角色是否为Secondary"
|
||||
ROLE=$("$DRBDADM_CMD" role "$RESOURCE_NAME" | awk "{print $1}")
|
||||
if [ "$ROLE" = "Secondary" ]; then
|
||||
LOG_INFO "资源角色已成功设置为Secondary"
|
||||
else
|
||||
LOG_ERROR "资源角色设置失败,当前角色为 $ROLE"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# 步骤9:清理测试资源
|
||||
LOG_INFO "步骤9:清理测试资源"
|
||||
SSH_CMD "$DRBDADM_CMD down $RESOURCE_NAME" $NODE2_IPV4 $NODE2_PASSWORD $NODE2_USER
|
||||
CHECK_RESULT $? 0 0 "清理第二个服务器上的测试资源失败"
|
||||
|
||||
# 步骤10:卸载软件包(如果测试前未安装)
|
||||
if [ "$INSTALLED" = "false" ]; then
|
||||
LOG_INFO "步骤10:卸载软件包 $PACKAGE_NAME"
|
||||
dnf remove -y "$PACKAGE_NAME"
|
||||
CHECK_RESULT $? 0 0 "卸载软件包 $PACKAGE_NAME 失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试脚本执行完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,71 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-06
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试drbd-xen相关服务(如drbd)的状态查询功能。
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 判断是否已安装drbd-xen相关软件包
|
||||
LOG_INFO "检查是否已安装drbd-xen相关软件包"
|
||||
rpm -q drbd-xen >/dev/null 2>&1
|
||||
installed=$?
|
||||
|
||||
# 定义软件包名称
|
||||
PACKAGE_NAME="drbd-xen"
|
||||
|
||||
# 检查yum源中是否有该软件包
|
||||
LOG_INFO "检查yum源中是否有$PACKAGE_NAME软件包"
|
||||
dnf list available $PACKAGE_NAME >/dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "yum源中未找到$PACKAGE_NAME软件包"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到$PACKAGE_NAME软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装软件包
|
||||
if [ $installed -ne 0 ]; then
|
||||
LOG_INFO "安装$PACKAGE_NAME软件包"
|
||||
dnf install -y $PACKAGE_NAME
|
||||
CHECK_RESULT $? 0 0 "安装$PACKAGE_NAME失败"
|
||||
fi
|
||||
|
||||
# 测试drbd服务状态查询功能
|
||||
LOG_INFO "测试drbd服务状态查询功能"
|
||||
systemctl status drbd.service >/dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "查询drbd服务状态失败"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "drbd服务状态查询失败"
|
||||
# 根据Linux命令退出码标准含义退出
|
||||
exit $?
|
||||
fi
|
||||
|
||||
LOG_INFO "drbd服务状态查询成功"
|
||||
|
||||
# 清理环境:如果之前未安装,则卸载软件包
|
||||
if [ $installed -ne 0 ]; then
|
||||
LOG_INFO "卸载$PACKAGE_NAME软件包"
|
||||
dnf remove -y $PACKAGE_NAME
|
||||
CHECK_RESULT $? 0 0 "卸载$PACKAGE_NAME失败"
|
||||
else
|
||||
LOG_INFO "保持$PACKAGE_NAME软件包安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,155 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-06
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试验证drbd-xen配置文件语法正确性的功能。
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试验证drbd-xen配置文件语法正确性的功能"
|
||||
|
||||
# 定义软件包名称
|
||||
PACKAGE_NAME="drbd-xen"
|
||||
|
||||
# 检查是否已安装
|
||||
if rpm -q $PACKAGE_NAME &> /dev/null; then
|
||||
LOG_INFO "检测到$PACKAGE_NAME已安装,测试完成后将保持安装状态"
|
||||
INSTALLED_BEFORE_TEST=true
|
||||
else
|
||||
LOG_INFO "检测到$PACKAGE_NAME未安装,将在测试过程中安装,并在测试结束后卸载"
|
||||
INSTALLED_BEFORE_TEST=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否存在该软件包
|
||||
LOG_INFO "步骤1:检查yum源中是否存在$PACKAGE_NAME软件包"
|
||||
if ! dnf list available $PACKAGE_NAME &> /dev/null; then
|
||||
LOG_ERROR "yum源中未找到$PACKAGE_NAME软件包"
|
||||
exit 255
|
||||
fi
|
||||
LOG_INFO "yum源中存在$PACKAGE_NAME软件包"
|
||||
|
||||
# 如果未安装,则安装软件包
|
||||
if [ "$INSTALLED_BEFORE_TEST" = false ]; then
|
||||
LOG_INFO "步骤2:安装$PACKAGE_NAME软件包"
|
||||
dnf install -y $PACKAGE_NAME
|
||||
CHECK_RESULT $? 0 0 "安装$PACKAGE_NAME失败"
|
||||
LOG_INFO "$PACKAGE_NAME软件包安装成功"
|
||||
fi
|
||||
|
||||
# 检查drbd-xen命令是否存在
|
||||
LOG_INFO "步骤3:检查drbd-xen命令是否可用"
|
||||
if ! command -v drbd-xen &> /dev/null; then
|
||||
LOG_ERROR "drbd-xen命令未找到"
|
||||
exit 255
|
||||
fi
|
||||
LOG_INFO "drbd-xen命令可用"
|
||||
|
||||
# 检查drbd-xen命令是否支持--help参数
|
||||
LOG_INFO "步骤4:检查drbd-xen命令是否支持--help参数"
|
||||
if ! drbd-xen --help &> /dev/null; then
|
||||
LOG_ERROR "drbd-xen命令不支持--help参数或执行失败"
|
||||
exit 255
|
||||
fi
|
||||
LOG_INFO "drbd-xen命令支持--help参数"
|
||||
|
||||
# 测试验证配置文件语法正确性的功能
|
||||
LOG_INFO "步骤5:测试验证配置文件语法正确性的功能"
|
||||
# 创建一个临时的正确配置文件
|
||||
TEMP_CONF=$(mktemp)
|
||||
cat > $TEMP_CONF << EOF
|
||||
resource r0 {
|
||||
protocol C;
|
||||
startup {
|
||||
wfc-timeout 30;
|
||||
degr-wfc-timeout 15;
|
||||
}
|
||||
net {
|
||||
cram-hmac-alg sha1;
|
||||
shared-secret "secret";
|
||||
}
|
||||
on node1 {
|
||||
device /dev/drbd0;
|
||||
disk /dev/vg0/lv0;
|
||||
address 192.168.1.1:7788;
|
||||
meta-disk internal;
|
||||
}
|
||||
on node2 {
|
||||
device /dev/drbd0;
|
||||
disk /dev/vg0/lv0;
|
||||
address 192.168.1.2:7788;
|
||||
meta-disk internal;
|
||||
}
|
||||
}
|
||||
EOF
|
||||
|
||||
# 使用drbd-xen验证配置文件语法
|
||||
drbd-xen -c $TEMP_CONF -t
|
||||
CHECK_RESULT $? 0 0 "验证正确的配置文件语法失败"
|
||||
|
||||
# 创建一个有语法错误的临时配置文件
|
||||
TEMP_BAD_CONF=$(mktemp)
|
||||
cat > $TEMP_BAD_CONF << EOF
|
||||
resource r0 {
|
||||
protocol C;
|
||||
startup {
|
||||
wfc-timeout 30;
|
||||
degr-wfc-timeout 15;
|
||||
}
|
||||
net {
|
||||
cram-hmac-alg sha1;
|
||||
shared-secret "secret";
|
||||
}
|
||||
on node1 {
|
||||
device /dev/drbd0;
|
||||
disk /dev/vg0/lv0;
|
||||
address 192.168.1.1:7788;
|
||||
meta-disk internal;
|
||||
# 缺少闭合大括号
|
||||
}
|
||||
EOF
|
||||
|
||||
# 验证有语法错误的配置文件,预期失败
|
||||
LOG_INFO "步骤6:测试验证有语法错误的配置文件"
|
||||
drbd-xen -c $TEMP_BAD_CONF -t
|
||||
# 检查命令是否执行失败(非零退出码)
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_ERROR "验证有语法错误的配置文件未按预期失败"
|
||||
CHECK_RESULT 1 0 0 "验证有语法错误的配置文件未按预期失败"
|
||||
else
|
||||
LOG_INFO "验证有语法错误的配置文件按预期失败"
|
||||
CHECK_RESULT $? 0 1 "验证有语法错误的配置文件未按预期失败"
|
||||
fi
|
||||
|
||||
# 清理临时文件
|
||||
LOG_INFO "步骤7:清理临时文件"
|
||||
rm -f $TEMP_CONF $TEMP_BAD_CONF
|
||||
CHECK_RESULT $? 0 0 "清理临时文件失败"
|
||||
|
||||
# 如果测试前未安装,则在测试结束后卸载软件包
|
||||
if [ "$INSTALLED_BEFORE_TEST" = false ]; then
|
||||
LOG_INFO "步骤8:卸载$PACKAGE_NAME软件包"
|
||||
dnf remove -y $PACKAGE_NAME
|
||||
CHECK_RESULT $? 0 0 "卸载$PACKAGE_NAME失败"
|
||||
LOG_INFO "$PACKAGE_NAME软件包卸载成功"
|
||||
else
|
||||
LOG_INFO "测试前$PACKAGE_NAME已安装,测试后保持安装状态,无需卸载"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试验证drbd-xen配置文件语法正确性的功能完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,107 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-04
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试能否使用Noto Sans Cham字体渲染基本的占语(Cham)字符。
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
set -e
|
||||
|
||||
LOG_INFO "开始测试:测试能否使用Noto Sans Cham字体渲染基本的占语(Cham)字符"
|
||||
|
||||
LOG_INFO "步骤1:检查环境中是否已安装google-noto-sans-cham-fonts软件包"
|
||||
if rpm -q google-noto-sans-cham-fonts &>/dev/null; then
|
||||
LOG_INFO "软件包已安装,测试后保持安装状态"
|
||||
INSTALLED_BEFORE=true
|
||||
else
|
||||
LOG_INFO "软件包未安装,将在测试过程中安装"
|
||||
INSTALLED_BEFORE=false
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤2:检查yum源中是否存在google-noto-sans-cham-fonts软件包"
|
||||
if ! dnf list available google-noto-sans-cham-fonts &>/dev/null; then
|
||||
LOG_ERROR "yum源中未找到google-noto-sans-cham-fonts软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤3:安装google-noto-sans-cham-fonts软件包"
|
||||
if [ "$INSTALLED_BEFORE" = false ]; then
|
||||
dnf install -y google-noto-sans-cham-fonts
|
||||
CHECK_RESULT $? 0 0 "安装google-noto-sans-cham-fonts失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤4:检查fc-list命令是否可用"
|
||||
if ! command -v fc-list &>/dev/null; then
|
||||
LOG_ERROR "fc-list命令不存在"
|
||||
if [ "$INSTALLED_BEFORE" = false ]; then
|
||||
dnf remove -y google-noto-sans-cham-fonts
|
||||
fi
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤5:使用fc-list检查Noto Sans Cham字体是否已正确安装并可用"
|
||||
fc-list | grep -i "Noto Sans Cham" &>/dev/null
|
||||
CHECK_RESULT $? 0 0 "未找到Noto Sans Cham字体"
|
||||
|
||||
LOG_INFO "步骤6:创建一个简单的占语字符测试文件"
|
||||
TEST_TEXT="ꨀꨁꨂꨃꨄꨅꨆꨇꨈꨉ"
|
||||
TEST_FILE="/tmp/cham_test.txt"
|
||||
echo "$TEST_TEXT" > "$TEST_FILE"
|
||||
CHECK_RESULT $? 0 0 "创建测试文件失败"
|
||||
|
||||
LOG_INFO "步骤7:使用Noto Sans Cham字体渲染占语字符"
|
||||
if command -v pango-view &>/dev/null; then
|
||||
RENDER_OUTPUT="/tmp/cham_render.png"
|
||||
pango-view --font="Noto Sans Cham" --text="$TEST_TEXT" --output="$RENDER_OUTPUT" --dpi=96
|
||||
RENDER_EXIT_CODE=$?
|
||||
if [ $RENDER_EXIT_CODE -ne 0 ]; then
|
||||
LOG_ERROR "pango-view渲染失败,退出码: $RENDER_EXIT_CODE"
|
||||
CHECK_RESULT $RENDER_EXIT_CODE 0 0 "使用pango-view渲染占语字符失败"
|
||||
else
|
||||
LOG_INFO "使用pango-view渲染成功"
|
||||
if [ -f "$RENDER_OUTPUT" ]; then
|
||||
file "$RENDER_OUTPUT" | grep -q "PNG image"
|
||||
CHECK_RESULT $? 0 0 "生成的渲染文件不是有效的PNG图像"
|
||||
LOG_INFO "成功生成PNG格式的渲染图像"
|
||||
fi
|
||||
fi
|
||||
else
|
||||
LOG_INFO "pango-view命令未找到,尝试使用其他方法验证字体"
|
||||
LOG_INFO "使用fc-match验证字体"
|
||||
fc-match "Noto Sans Cham" &>/dev/null
|
||||
CHECK_RESULT $? 0 0 "fc-match验证Noto Sans Cham字体失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤8:清理临时测试文件"
|
||||
rm -f "$TEST_FILE" "$RENDER_OUTPUT" 2>/dev/null
|
||||
LOG_INFO "临时文件已清理"
|
||||
|
||||
LOG_INFO "步骤9:恢复测试环境"
|
||||
if [ "$INSTALLED_BEFORE" = false ]; then
|
||||
LOG_INFO "卸载测试安装的google-noto-sans-cham-fonts软件包"
|
||||
dnf remove -y google-noto-sans-cham-fonts
|
||||
CHECK_RESULT $? 0 0 "卸载google-noto-sans-cham-fonts失败"
|
||||
LOG_INFO "环境已恢复至测试前状态"
|
||||
else
|
||||
LOG_INFO "环境保持原有安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成:Noto Sans Cham字体能够正确渲染基本的占语字符"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,78 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-04
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试google-noto-sans-cham-fonts软件包能否被成功安装。
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
set -e
|
||||
|
||||
LOG_INFO "开始测试google-noto-sans-cham-fonts软件包能否被成功安装。"
|
||||
|
||||
LOG_INFO "步骤1: 检查yum源中是否存在google-noto-sans-cham-fonts软件包"
|
||||
dnf list available google-noto-sans-cham-fonts > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到google-noto-sans-cham-fonts软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤2: 检查当前是否已安装google-noto-sans-cham-fonts"
|
||||
rpm -q google-noto-sans-cham-fonts > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "google-noto-sans-cham-fonts已安装,测试将保持安装状态"
|
||||
INSTALLED_BEFORE=true
|
||||
else
|
||||
LOG_INFO "google-noto-sans-cham-fonts未安装,将执行安装测试"
|
||||
INSTALLED_BEFORE=false
|
||||
fi
|
||||
|
||||
if [ "$INSTALLED_BEFORE" = "false" ]; then
|
||||
LOG_INFO "步骤3: 安装google-noto-sans-cham-fonts软件包"
|
||||
dnf install -y google-noto-sans-cham-fonts
|
||||
CHECK_RESULT $? 0 0 "安装google-noto-sans-cham-fonts失败"
|
||||
|
||||
LOG_INFO "步骤4: 验证google-noto-sans-cham-fonts安装成功"
|
||||
rpm -q google-noto-sans-cham-fonts
|
||||
CHECK_RESULT $? 0 0 "验证google-noto-sans-cham-fonts安装状态失败"
|
||||
|
||||
LOG_INFO "步骤5: 测试完成后卸载google-noto-sans-cham-fonts"
|
||||
dnf remove -y google-noto-sans-cham-fonts
|
||||
CHECK_RESULT $? 0 0 "卸载google-noto-sans-cham-fonts失败"
|
||||
else
|
||||
LOG_INFO "步骤3: 已安装状态,跳过安装和卸载步骤"
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤6: 环境恢复检查"
|
||||
if [ "$INSTALLED_BEFORE" = "true" ]; then
|
||||
rpm -q google-noto-sans-cham-fonts > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "环境未恢复到初始安装状态"
|
||||
LOG_INFO "环境已恢复: 保持google-noto-sans-cham-fonts安装状态"
|
||||
else
|
||||
rpm -q google-noto-sans-cham-fonts > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_ERROR "环境未恢复: google-noto-sans-cham-fonts未被正确卸载"
|
||||
exit 1
|
||||
else
|
||||
LOG_INFO "环境已恢复: google-noto-sans-cham-fonts未安装"
|
||||
fi
|
||||
fi
|
||||
|
||||
LOG_INFO "google-noto-sans-cham-fonts软件包安装测试完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,110 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试container-executor命令的help参数,用于显示帮助信息
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 检查脚本是否以root用户运行
|
||||
if [[ $(id -u) -ne 0 ]]; then
|
||||
LOG_ERROR "此脚本需要root权限运行"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# 定义软件包名称
|
||||
PACKAGE_NAME="hadoop-yarn"
|
||||
|
||||
# 步骤1: 检查yum源中是否存在指定软件包
|
||||
LOG_INFO "步骤1: 检查yum源中是否存在${PACKAGE_NAME}软件包"
|
||||
dnf list available ${PACKAGE_NAME} &>/dev/null
|
||||
if [[ $? -ne 0 ]]; then
|
||||
LOG_ERROR "yum源中未找到${PACKAGE_NAME}软件包"
|
||||
exit 255
|
||||
fi
|
||||
LOG_INFO "yum源中存在${PACKAGE_NAME}软件包"
|
||||
|
||||
# 步骤2: 检查环境是否已安装软件包
|
||||
LOG_INFO "步骤2: 检查环境是否已安装${PACKAGE_NAME}软件包"
|
||||
INSTALLED=false
|
||||
rpm -q ${PACKAGE_NAME} &>/dev/null
|
||||
if [[ $? -eq 0 ]]; then
|
||||
LOG_INFO "${PACKAGE_NAME}软件包已安装"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "${PACKAGE_NAME}软件包未安装"
|
||||
fi
|
||||
|
||||
# 步骤3: 如果未安装则安装软件包
|
||||
if [[ ${INSTALLED} == false ]]; then
|
||||
LOG_INFO "步骤3: 安装${PACKAGE_NAME}软件包"
|
||||
dnf install -y ${PACKAGE_NAME} &>/dev/null
|
||||
CHECK_RESULT $? 0 0 "安装${PACKAGE_NAME}软件包失败"
|
||||
LOG_INFO "${PACKAGE_NAME}软件包安装成功"
|
||||
fi
|
||||
|
||||
# 步骤4: 查找container-executor命令路径
|
||||
LOG_INFO "步骤4: 查找container-executor命令路径"
|
||||
CONTAINER_EXECUTOR_PATH=$(find /usr -name "container-executor" -type f 2>/dev/null | head -1)
|
||||
if [[ -z "${CONTAINER_EXECUTOR_PATH}" ]]; then
|
||||
LOG_ERROR "未找到container-executor命令"
|
||||
exit 1
|
||||
fi
|
||||
LOG_INFO "找到container-executor命令: ${CONTAINER_EXECUTOR_PATH}"
|
||||
|
||||
# 步骤5: 测试container-executor命令的help参数
|
||||
LOG_INFO "步骤5: 测试container-executor命令的help参数"
|
||||
# 尝试使用--help参数
|
||||
${CONTAINER_EXECUTOR_PATH} --help &>/dev/null
|
||||
HELP_EXIT_CODE=$?
|
||||
|
||||
# 尝试使用-h参数(如果--help失败)
|
||||
if [[ ${HELP_EXIT_CODE} -ne 0 ]]; then
|
||||
${CONTAINER_EXECUTOR_PATH} -h &>/dev/null
|
||||
HELP_EXIT_CODE=$?
|
||||
fi
|
||||
|
||||
# 检查help参数是否支持
|
||||
if [[ ${HELP_EXIT_CODE} -eq 0 ]]; then
|
||||
LOG_INFO "container-executor命令支持help参数"
|
||||
# 实际执行help命令并检查输出
|
||||
${CONTAINER_EXECUTOR_PATH} --help 2>&1 | head -5 &>/dev/null
|
||||
CHECK_RESULT $? 0 0 "container-executor --help命令执行失败"
|
||||
LOG_INFO "container-executor --help命令执行成功,显示帮助信息"
|
||||
elif [[ ${HELP_EXIT_CODE} -eq 255 ]]; then
|
||||
LOG_ERROR "container-executor命令不支持help参数"
|
||||
exit 255
|
||||
else
|
||||
LOG_ERROR "container-executor help命令执行失败,退出码: ${HELP_EXIT_CODE}"
|
||||
exit ${HELP_EXIT_CODE}
|
||||
fi
|
||||
|
||||
# 步骤6: 清理环境
|
||||
LOG_INFO "步骤6: 清理环境"
|
||||
if [[ ${INSTALLED} == false ]]; then
|
||||
LOG_INFO "卸载测试安装的${PACKAGE_NAME}软件包"
|
||||
dnf remove -y ${PACKAGE_NAME} &>/dev/null
|
||||
CHECK_RESULT $? 0 0 "卸载${PACKAGE_NAME}软件包失败"
|
||||
LOG_INFO "${PACKAGE_NAME}软件包卸载成功"
|
||||
else
|
||||
LOG_INFO "保持${PACKAGE_NAME}软件包安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试脚本执行完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,68 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2025-11-30
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试 container-executor 命令的 -V 参数
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
|
||||
# 测试脚本:test_hadoop-yarn_container-executor_upper_v
|
||||
|
||||
LOG_INFO "开始测试 container-executor 命令的 -V 参数"
|
||||
|
||||
# 检查环境是否已安装
|
||||
LOG_INFO "检查环境是否已安装"
|
||||
if ! dnf list installed hadoop-yarn > /dev/null 2>&1; then
|
||||
LOG_INFO "环境未安装,开始安装 hadoop-yarn"
|
||||
if ! dnf list available hadoop-yarn > /dev/null 2>&1; then
|
||||
LOG_ERROR "yum源中不存在 hadoop-yarn 软件包"
|
||||
exit 255
|
||||
fi
|
||||
dnf install -y hadoop-yarn
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "环境已安装,跳过安装步骤"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 检查 container-executor 命令是否存在
|
||||
LOG_INFO "检查 container-executor 命令是否存在"
|
||||
if ! command -v container-executor > /dev/null 2>&1; then
|
||||
LOG_ERROR "container-executor 命令不存在"
|
||||
if [ "$INSTALLED" = true ]; then
|
||||
dnf remove -y hadoop-yarn
|
||||
fi
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 测试 -V 参数
|
||||
LOG_INFO "测试 container-executor 命令的 -V 参数"
|
||||
container-executor -V
|
||||
CHECK_RESULT $? 0 0 "container-executor -V 执行失败"
|
||||
|
||||
# 清理环境
|
||||
if [ "$INSTALLED" = true ]; then
|
||||
LOG_INFO "清理环境,卸载 hadoop-yarn"
|
||||
dnf remove -y hadoop-yarn
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成"
|
||||
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,78 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试container-executor命令的version参数,用于显示版本信息
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试container-executor命令的version参数功能"
|
||||
|
||||
# 检查是否已安装hadoop-yarn-container-executor
|
||||
LOG_INFO "检查hadoop-yarn-container-executor是否已安装"
|
||||
if rpm -q hadoop-yarn-container-executor &> /dev/null; then
|
||||
LOG_INFO "hadoop-yarn-container-executor已安装,测试完成后将保持安装状态"
|
||||
ALREADY_INSTALLED=true
|
||||
else
|
||||
LOG_INFO "hadoop-yarn-container-executor未安装,将在测试步骤中安装"
|
||||
ALREADY_INSTALLED=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否存在该软件包
|
||||
LOG_INFO "检查yum源中是否存在hadoop-yarn-container-executor软件包"
|
||||
if ! dnf list available hadoop-yarn-container-executor &> /dev/null; then
|
||||
LOG_ERROR "yum源中未找到hadoop-yarn-container-executor软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则进行安装
|
||||
if [ "$ALREADY_INSTALLED" = false ]; then
|
||||
LOG_INFO "安装hadoop-yarn-container-executor软件包"
|
||||
dnf install -y hadoop-yarn-container-executor
|
||||
CHECK_RESULT $? 0 0 "安装hadoop-yarn-container-executor失败"
|
||||
fi
|
||||
|
||||
# 检查container-executor命令是否支持version参数
|
||||
LOG_INFO "检查container-executor命令是否支持version参数"
|
||||
if ! container-executor --help 2>&1 | grep -q "\-\-version"; then
|
||||
LOG_ERROR "container-executor命令不支持version参数"
|
||||
# 如果测试过程中安装了软件包,需要卸载
|
||||
if [ "$ALREADY_INSTALLED" = false ]; then
|
||||
LOG_INFO "清理环境:卸载hadoop-yarn-container-executor"
|
||||
dnf remove -y hadoop-yarn-container-executor
|
||||
fi
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 执行container-executor --version命令
|
||||
LOG_INFO "执行container-executor --version命令"
|
||||
container-executor --version
|
||||
CHECK_RESULT $? 0 0 "执行container-executor --version命令失败"
|
||||
|
||||
# 环境恢复:如果测试前未安装,则卸载软件包
|
||||
if [ "$ALREADY_INSTALLED" = false ]; then
|
||||
LOG_INFO "清理环境:卸载hadoop-yarn-container-executor"
|
||||
dnf remove -y hadoop-yarn-container-executor
|
||||
CHECK_RESULT $? 0 0 "卸载hadoop-yarn-container-executor失败"
|
||||
else
|
||||
LOG_INFO "环境已安装,保持安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试container-executor命令的version参数完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,57 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试检查软件包是否已安装
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试:检查hadoop-yarn软件包是否已安装"
|
||||
LOG_INFO "步骤1:检查yum源中是否存在hadoop-yarn软件包"
|
||||
if ! dnf list available hadoop-yarn &>/dev/null; then
|
||||
LOG_ERROR "yum源中未找到hadoop-yarn软件包"
|
||||
exit 255
|
||||
fi
|
||||
LOG_INFO "yum源中存在hadoop-yarn软件包"
|
||||
LOG_INFO "步骤2:检查系统是否已安装hadoop-yarn"
|
||||
if rpm -q hadoop-yarn &>/dev/null; then
|
||||
LOG_INFO "hadoop-yarn已安装,将保持安装状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "hadoop-yarn未安装,将执行安装操作"
|
||||
INSTALLED=false
|
||||
fi
|
||||
if [ "$INSTALLED" = "false" ]; then
|
||||
LOG_INFO "步骤3:安装hadoop-yarn软件包"
|
||||
dnf install -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "安装hadoop-yarn失败"
|
||||
LOG_INFO "hadoop-yarn安装成功"
|
||||
fi
|
||||
LOG_INFO "步骤4:验证hadoop-yarn安装状态"
|
||||
rpm -q hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "验证hadoop-yarn安装状态失败"
|
||||
LOG_INFO "hadoop-yarn安装状态验证成功"
|
||||
if [ "$INSTALLED" = "false" ]; then
|
||||
LOG_INFO "步骤5:卸载hadoop-yarn软件包以恢复环境"
|
||||
dnf remove -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "卸载hadoop-yarn失败"
|
||||
LOG_INFO "hadoop-yarn卸载成功,环境已恢复"
|
||||
fi
|
||||
LOG_INFO "测试完成:检查hadoop-yarn软件包是否已安装"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,65 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试查看YARN集群信息
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试查看YARN集群信息功能"
|
||||
LOG_INFO "检查是否已安装hadoop-yarn"
|
||||
if rpm -q hadoop-yarn &>/dev/null; then
|
||||
LOG_INFO "hadoop-yarn已安装,跳过安装步骤"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "hadoop-yarn未安装,将进行安装"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
LOG_INFO "检查yum源中是否有hadoop-yarn软件包"
|
||||
if ! dnf list available hadoop-yarn &>/dev/null; then
|
||||
LOG_ERROR "yum源中未找到hadoop-yarn软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "安装hadoop-yarn软件包"
|
||||
dnf install -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "安装hadoop-yarn失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "检查yarn命令是否存在"
|
||||
if ! command -v yarn &>/dev/null; then
|
||||
LOG_ERROR "yarn命令不存在"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "查看YARN集群信息"
|
||||
yarn cluster --list
|
||||
CHECK_RESULT $? 0 0 "查看YARN集群信息失败"
|
||||
|
||||
LOG_INFO "清理环境"
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "卸载hadoop-yarn软件包"
|
||||
dnf remove -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "卸载hadoop-yarn失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,96 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试软件包安装功能
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 检查是否已安装hadoop-yarn
|
||||
LOG_INFO "检查hadoop-yarn是否已安装"
|
||||
rpm -q hadoop-yarn > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "hadoop-yarn已安装,脚本结束后将保持安装状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "hadoop-yarn未安装,将在测试过程中安装"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有hadoop-yarn软件包
|
||||
LOG_INFO "检查yum源中是否有hadoop-yarn软件包"
|
||||
dnf list available hadoop-yarn > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "yum源中未找到hadoop-yarn软件包"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到hadoop-yarn软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 安装hadoop-yarn(如果未安装)
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "开始安装hadoop-yarn"
|
||||
dnf install -y hadoop-yarn > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "hadoop-yarn安装失败"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "hadoop-yarn安装失败"
|
||||
exit 1
|
||||
fi
|
||||
LOG_INFO "hadoop-yarn安装成功"
|
||||
fi
|
||||
|
||||
# 测试hadoop-yarn基本功能
|
||||
LOG_INFO "测试hadoop-yarn版本信息"
|
||||
yarn version > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "获取yarn版本信息失败"
|
||||
|
||||
LOG_INFO "测试yarn命令参数"
|
||||
yarn --help > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "yarn --help命令执行失败"
|
||||
|
||||
# 检查特定参数是否存在
|
||||
LOG_INFO "检查yarn命令是否支持node参数"
|
||||
yarn node --help > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yarn命令不支持node参数"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "检查yarn命令是否支持queue参数"
|
||||
yarn queue --help > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yarn命令不支持queue参数"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 清理环境(如果测试前未安装)
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "清理测试环境,卸载hadoop-yarn"
|
||||
dnf remove -y hadoop-yarn > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "hadoop-yarn卸载失败"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "hadoop-yarn卸载失败"
|
||||
exit 1
|
||||
fi
|
||||
LOG_INFO "hadoop-yarn卸载成功"
|
||||
else
|
||||
LOG_INFO "测试前hadoop-yarn已安装,保持安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "hadoop-yarn安装功能测试完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,102 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试查询YARN作业状态
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 定义软件包名称和命令
|
||||
PACKAGE_NAME="hadoop-yarn"
|
||||
COMMAND="yarn"
|
||||
SUBCOMMAND="application"
|
||||
ACTION="-status"
|
||||
|
||||
# 步骤1:检查环境是否已安装
|
||||
LOG_INFO "步骤1:检查Hadoop YARN环境是否已安装"
|
||||
if dnf list installed | grep -q "^${PACKAGE_NAME}\."; then
|
||||
LOG_INFO "Hadoop YARN已安装,脚本结束时将保持安装状态"
|
||||
ENV_INSTALLED=true
|
||||
else
|
||||
LOG_INFO "Hadoop YARN未安装,将在测试过程中安装,并在结束时卸载"
|
||||
ENV_INSTALLED=false
|
||||
fi
|
||||
|
||||
# 步骤2:检查YUM源中是否存在软件包
|
||||
LOG_INFO "步骤2:检查YUM源中是否存在${PACKAGE_NAME}软件包"
|
||||
if ! dnf list available | grep -q "^${PACKAGE_NAME}\."; then
|
||||
LOG_ERROR "YUM源中不存在${PACKAGE_NAME}软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 步骤3:如果环境未安装,则安装软件包
|
||||
if [ "$ENV_INSTALLED" = false ]; then
|
||||
LOG_INFO "步骤3:安装${PACKAGE_NAME}软件包"
|
||||
dnf install -y ${PACKAGE_NAME}
|
||||
CHECK_RESULT $? 0 0 "安装${PACKAGE_NAME}失败"
|
||||
fi
|
||||
|
||||
# 步骤4:检查yarn命令是否支持application -status参数
|
||||
LOG_INFO "步骤4:检查yarn命令是否支持application -status参数"
|
||||
if ! ${COMMAND} ${SUBCOMMAND} --help 2>/dev/null | grep -q "\-status"; then
|
||||
LOG_ERROR "yarn命令不支持application -status参数"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 步骤5:启动YARN服务(如果未运行)
|
||||
LOG_INFO "步骤5:检查并启动YARN服务"
|
||||
if ! systemctl is-active --quiet resourcemanager; then
|
||||
systemctl start resourcemanager
|
||||
CHECK_RESULT $? 0 0 "启动YARN ResourceManager失败"
|
||||
sleep 5
|
||||
fi
|
||||
|
||||
# 步骤6:提交一个测试作业
|
||||
LOG_INFO "步骤6:提交一个测试作业到YARN"
|
||||
TEST_JOB_ID=$(yarn jar /usr/lib/hadoop-mapreduce/hadoop-mapreduce-examples.jar pi 1 10 2>&1 | grep -oP "application_\d+_\d+")
|
||||
if [ -z "$TEST_JOB_ID" ]; then
|
||||
LOG_ERROR "提交测试作业失败"
|
||||
exit 1
|
||||
fi
|
||||
LOG_INFO "测试作业提交成功,作业ID: ${TEST_JOB_ID}"
|
||||
|
||||
# 步骤7:测试查询YARN作业状态
|
||||
LOG_INFO "步骤7:测试查询YARN作业状态"
|
||||
${COMMAND} ${SUBCOMMAND} ${ACTION} ${TEST_JOB_ID}
|
||||
CHECK_RESULT $? 0 0 "查询YARN作业状态失败"
|
||||
|
||||
# 步骤8:清理测试作业
|
||||
LOG_INFO "步骤8:清理测试作业"
|
||||
yarn application -kill ${TEST_JOB_ID} 2>/dev/null
|
||||
|
||||
# 步骤9:停止YARN服务(如果之前是脚本启动的)
|
||||
LOG_INFO "步骤9:停止YARN服务"
|
||||
if [ "$ENV_INSTALLED" = false ]; then
|
||||
systemctl stop resourcemanager 2>/dev/null
|
||||
fi
|
||||
|
||||
# 步骤10:如果环境是脚本安装的,则卸载软件包
|
||||
if [ "$ENV_INSTALLED" = false ]; then
|
||||
LOG_INFO "步骤10:卸载${PACKAGE_NAME}软件包"
|
||||
dnf remove -y ${PACKAGE_NAME}
|
||||
CHECK_RESULT $? 0 0 "卸载${PACKAGE_NAME}失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试脚本执行完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,97 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试终止YARN作业
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试:终止YARN作业"
|
||||
|
||||
# 检查环境是否已安装Hadoop YARN
|
||||
LOG_INFO "检查Hadoop YARN是否已安装"
|
||||
if dnf list installed hadoop-yarn &> /dev/null; then
|
||||
LOG_INFO "Hadoop YARN已安装,脚本结束后将保持安装状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "Hadoop YARN未安装,将在测试中安装"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 检查YUM源中是否有hadoop-yarn软件包
|
||||
LOG_INFO "检查YUM源中是否有hadoop-yarn软件包"
|
||||
if ! dnf list available hadoop-yarn &> /dev/null; then
|
||||
LOG_ERROR "YUM源中没有hadoop-yarn软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装hadoop-yarn
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "安装hadoop-yarn软件包"
|
||||
dnf install -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "安装hadoop-yarn失败"
|
||||
fi
|
||||
|
||||
# 启动YARN服务
|
||||
LOG_INFO "启动YARN服务"
|
||||
systemctl start yarn-resourcemanager
|
||||
CHECK_RESULT $? 0 0 "启动YARN服务失败"
|
||||
|
||||
# 提交一个示例作业到YARN
|
||||
LOG_INFO "提交一个示例作业到YARN"
|
||||
yarn jar /usr/share/hadoop/mapreduce/hadoop-mapreduce-examples.jar pi 1 1 > /tmp/yarn_job_output.txt 2>&1 &
|
||||
JOB_PID=$!
|
||||
CHECK_RESULT $? 0 0 "提交YARN作业失败"
|
||||
|
||||
# 等待作业开始运行
|
||||
LOG_INFO "等待作业开始运行"
|
||||
sleep 10
|
||||
|
||||
# 获取作业ID
|
||||
LOG_INFO "获取作业ID"
|
||||
JOB_ID=$(yarn application -list | grep "application_" | awk "{print $1}" | head -n 1)
|
||||
if [ -z "$JOB_ID" ]; then
|
||||
LOG_ERROR "未找到YARN作业ID"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# 终止YARN作业
|
||||
LOG_INFO "终止YARN作业:$JOB_ID"
|
||||
yarn application -kill $JOB_ID
|
||||
CHECK_RESULT $? 0 0 "终止YARN作业失败"
|
||||
|
||||
# 验证作业是否已终止
|
||||
LOG_INFO "验证作业是否已终止"
|
||||
yarn application -status $JOB_ID 2>&1 | grep -q "FINISHED\|KILLED\|FAILED"
|
||||
CHECK_RESULT $? 0 0 "作业未正确终止"
|
||||
|
||||
# 停止YARN服务
|
||||
LOG_INFO "停止YARN服务"
|
||||
systemctl stop yarn-resourcemanager
|
||||
CHECK_RESULT $? 0 0 "停止YARN服务失败"
|
||||
|
||||
# 如果测试前未安装,则卸载hadoop-yarn
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "卸载hadoop-yarn软件包"
|
||||
dnf remove -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "卸载hadoop-yarn失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成:终止YARN作业"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,81 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2025-12-01
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试 nodemanager 功能是否正常启动和运行
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
|
||||
# 测试脚本:test_hadoop-yarn_function_nodemanager
|
||||
|
||||
# 步骤1:检查是否已安装hadoop-yarn-nodemanager
|
||||
LOG_INFO "检查是否已安装hadoop-yarn-nodemanager"
|
||||
if dnf list installed hadoop-yarn-nodemanager &> /dev/null; then
|
||||
LOG_INFO "hadoop-yarn-nodemanager已安装"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "hadoop-yarn-nodemanager未安装"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 步骤2:检查yum源中是否存在hadoop-yarn-nodemanager软件包
|
||||
LOG_INFO "检查yum源中是否存在hadoop-yarn-nodemanager软件包"
|
||||
if ! dnf list available hadoop-yarn-nodemanager &> /dev/null; then
|
||||
LOG_ERROR "yum源中不存在hadoop-yarn-nodemanager软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 步骤3:如果未安装,则安装hadoop-yarn-nodemanager
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "开始安装hadoop-yarn-nodemanager"
|
||||
dnf install -y hadoop-yarn-nodemanager
|
||||
CHECK_RESULT $? 0 0 "安装hadoop-yarn-nodemanager失败"
|
||||
fi
|
||||
|
||||
# 步骤4:启动nodemanager服务
|
||||
LOG_INFO "启动nodemanager服务"
|
||||
systemctl start hadoop-yarn-nodemanager
|
||||
CHECK_RESULT $? 0 0 "启动nodemanager服务失败"
|
||||
|
||||
# 步骤5:检查nodemanager服务状态
|
||||
LOG_INFO "检查nodemanager服务状态"
|
||||
systemctl status hadoop-yarn-nodemanager &> /dev/null
|
||||
CHECK_RESULT $? 0 0 "nodemanager服务未正常运行"
|
||||
|
||||
# 步骤6:测试nodemanager功能是否正常(例如通过jps命令检查)
|
||||
LOG_INFO "测试nodemanager功能是否正常"
|
||||
jps | grep NodeManager &> /dev/null
|
||||
CHECK_RESULT $? 0 0 "nodemanager功能异常"
|
||||
|
||||
# 步骤7:停止nodermaner服务
|
||||
LOG_INFO "停止nodemanage服务"
|
||||
systemctl stop hadoop-yarm-nodeamanger
|
||||
CHECK_RESULT $? 0 0 "停止nodemanger服务失败"
|
||||
|
||||
# 环境恢复:如果脚本开始时未安装,则卸载hadooep-yaen-noedmanger
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO “卸载hadooep-yaen-noedmanger”
|
||||
dnf remove -y hadooep-yaen-noedmanger
|
||||
CHECK_RESULT $? O O “卸载hadooep-yaen-noedmanger失败”
|
||||
fi
|
||||
|
||||
LOG_INFO “测试完成”
|
||||
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,74 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2025-11-30
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试 resourcemanager 功能是否正常启动和运行
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 检查是否已安装hadoop-yarn-resourcemanager
|
||||
LOG_INFO "检查是否已安装hadoop-yarn-resourcemanager"
|
||||
dnf list installed hadoop-yarn-resourcemanager > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "hadoop-yarn-resourcemanager已安装"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "hadoop-yarn-resourcemanager未安装"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有hadoop-yarn-resourcemanager软件包
|
||||
LOG_INFO "检查yum源中是否有hadoop-yarn-resourcemanager软件包"
|
||||
dnf list available hadoop-yarn-resourcemanager > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到hadoop-yarn-resourcemanager软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装软件包
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "开始安装hadoop-yarn-resourcemanager"
|
||||
dnf install -y hadoop-yarn-resourcemanager > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "安装hadoop-yarn-resourcemanager失败"
|
||||
fi
|
||||
|
||||
# 启动resourcemanager服务
|
||||
LOG_INFO "启动resourcemanager服务"
|
||||
systemctl start hadoop-yarn-resourcemanager > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "启动resourcemanager服务失败"
|
||||
|
||||
# 检查resourcemanager服务状态
|
||||
LOG_INFO "检查resourcemanager服务状态"
|
||||
systemctl status hadoop-yarn-resourcemanager > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "resourcemanager服务未正常运行"
|
||||
|
||||
# 停止resourcemanager服务
|
||||
LOG_INFO "停止resourcemanager服务"
|
||||
systemctl stop hadoop-yarn-resourcemanager > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "停止resourcemanager服务失败"
|
||||
|
||||
# 如果脚本开始时未安装,则卸载软件包
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "卸载hadoop-yarn-resourcemanager"
|
||||
dnf remove -y hadoop-yarn-resourcemanager > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "卸载hadoop-yarn-resourcemanager失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成,环境已恢复"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,86 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试启动节点管理器服务
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试:启动节点管理器服务"
|
||||
|
||||
# 检查是否已安装hadoop-yarn-nodemanager
|
||||
LOG_INFO "检查是否已安装hadoop-yarn-nodemanager"
|
||||
if rpm -q hadoop-yarn-nodemanager > /dev/null 2>&1; then
|
||||
LOG_INFO "hadoop-yarn-nodemanager已安装,测试完成后将保持安装状态"
|
||||
INSTALLED="true"
|
||||
else
|
||||
LOG_INFO "hadoop-yarn-nodemanager未安装,将在测试过程中安装"
|
||||
INSTALLED="false"
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有hadoop-yarn-nodemanager软件包
|
||||
LOG_INFO "检查yum源中是否有hadoop-yarn-nodemanager软件包"
|
||||
if ! dnf list available hadoop-yarn-nodemanager > /dev/null 2>&1; then
|
||||
LOG_ERROR "yum源中未找到hadoop-yarn-nodemanager软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装hadoop-yarn-nodemanager
|
||||
if [ "$INSTALLED" = "false" ]; then
|
||||
LOG_INFO "安装hadoop-yarn-nodemanager"
|
||||
dnf install -y hadoop-yarn-nodemanager
|
||||
CHECK_RESULT $? 0 0 "安装hadoop-yarn-nodemanager失败"
|
||||
fi
|
||||
|
||||
# 检查节点管理器服务命令是否支持
|
||||
LOG_INFO "检查节点管理器服务命令是否支持"
|
||||
if ! command -v yarn-daemon.sh > /dev/null 2>&1; then
|
||||
LOG_ERROR "yarn-daemon.sh命令不存在"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 启动节点管理器服务
|
||||
LOG_INFO "启动节点管理器服务"
|
||||
yarn-daemon.sh start nodemanager
|
||||
CHECK_RESULT $? 0 0 "启动节点管理器服务失败"
|
||||
|
||||
# 检查节点管理器服务是否成功启动
|
||||
LOG_INFO "检查节点管理器服务是否成功启动"
|
||||
sleep 3
|
||||
if ! jps | grep -q NodeManager; then
|
||||
LOG_ERROR "节点管理器服务未成功启动"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
LOG_INFO "节点管理器服务启动成功"
|
||||
|
||||
# 停止节点管理器服务
|
||||
LOG_INFO "停止节点管理器服务"
|
||||
yarn-daemon.sh stop nodemanager
|
||||
CHECK_RESULT $? 0 0 "停止节点管理器服务失败"
|
||||
|
||||
# 如果测试前未安装,则卸载hadoop-yarn-nodemanager
|
||||
if [ "$INSTALLED" = "false" ]; then
|
||||
LOG_INFO "卸载hadoop-yarn-nodemanager"
|
||||
dnf remove -y hadoop-yarn-nodemanager
|
||||
CHECK_RESULT $? 0 0 "卸载hadoop-yarn-nodemanager失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成,环境已恢复"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,81 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试启动资源管理器服务
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试启动资源管理器服务"
|
||||
|
||||
# 检查是否已安装hadoop-yarn资源管理器
|
||||
LOG_INFO "检查是否已安装hadoop-yarn资源管理器"
|
||||
if dnf list installed hadoop-yarn &>/dev/null; then
|
||||
LOG_INFO "hadoop-yarn资源管理器已安装"
|
||||
INSTALLED=1
|
||||
else
|
||||
LOG_INFO "hadoop-yarn资源管理器未安装"
|
||||
INSTALLED=0
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有hadoop-yarn软件包
|
||||
LOG_INFO "检查yum源中是否有hadoop-yarn软件包"
|
||||
if ! dnf list available hadoop-yarn &>/dev/null; then
|
||||
LOG_ERROR "yum源中没有hadoop-yarn软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装hadoop-yarn
|
||||
if [ $INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "安装hadoop-yarn资源管理器"
|
||||
dnf install -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "安装hadoop-yarn失败"
|
||||
fi
|
||||
|
||||
# 检查资源管理器启动命令参数
|
||||
LOG_INFO "检查资源管理器启动命令参数"
|
||||
if ! yarn resourcemanager --help &>/dev/null; then
|
||||
LOG_ERROR "资源管理器启动命令参数不存在或不支持"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 启动资源管理器服务
|
||||
LOG_INFO "启动资源管理器服务"
|
||||
systemctl start hadoop-yarn-resourcemanager
|
||||
CHECK_RESULT $? 0 0 "启动资源管理器服务失败"
|
||||
|
||||
# 检查资源管理器服务状态
|
||||
LOG_INFO "检查资源管理器服务状态"
|
||||
systemctl status hadoop-yarn-resourcemanager | grep -q "active (running)"
|
||||
CHECK_RESULT $? 0 0 "资源管理器服务未正常运行"
|
||||
|
||||
# 停止资源管理器服务
|
||||
LOG_INFO "停止资源管理器服务"
|
||||
systemctl stop hadoop-yarn-resourcemanager
|
||||
CHECK_RESULT $? 0 0 "停止资源管理器服务失败"
|
||||
|
||||
# 如果测试前未安装,则卸载hadoop-yarn
|
||||
if [ $INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "卸载hadoop-yarn资源管理器"
|
||||
dnf remove -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "卸载hadoop-yarn失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试启动资源管理器服务完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,150 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试提交YARN作业
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试:测试提交YARN作业"
|
||||
LOG_INFO "步骤1:检查YARN相关软件包是否已在系统中安装"
|
||||
rpm -qa | grep -E "^hadoop-yarn" > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "YARN相关软件包已安装,测试完成后将保持安装状态"
|
||||
INSTALLED=1
|
||||
else
|
||||
LOG_INFO "YARN相关软件包未安装,将在测试过程中安装,并在测试结束后卸载"
|
||||
INSTALLED=0
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤2:检查yum源中是否存在hadoop-yarn软件包"
|
||||
dnf list available hadoop-yarn 2>&1 | grep -E "^hadoop-yarn" > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到hadoop-yarn软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
if [ $INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "步骤3:安装hadoop-yarn软件包"
|
||||
dnf install -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "安装hadoop-yarn软件包失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤4:检查yarn命令是否可用"
|
||||
which yarn > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yarn命令不存在"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤5:检查yarn命令是否支持提交作业的参数"
|
||||
yarn jar --help 2>&1 | grep "Usage: yarn jar" > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yarn命令不支持提交作业的参数"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤6:准备一个简单的MapReduce作业JAR文件用于测试"
|
||||
cat > /tmp/TestWordCount.java << "EOF"
|
||||
import java.io.IOException;
|
||||
import java.util.StringTokenizer;
|
||||
import org.apache.hadoop.conf.Configuration;
|
||||
import org.apache.hadoop.fs.Path;
|
||||
import org.apache.hadoop.io.IntWritable;
|
||||
import org.apache.hadoop.io.Text;
|
||||
import org.apache.hadoop.mapreduce.Job;
|
||||
import org.apache.hadoop.mapreduce.Mapper;
|
||||
import org.apache.hadoop.mapreduce.Reducer;
|
||||
import org.apache.hadoop.mapreduce.lib.input.FileInputFormat;
|
||||
import org.apache.hadoop.mapreduce.lib.output.FileOutputFormat;
|
||||
|
||||
public class TestWordCount {
|
||||
public static class TokenizerMapper extends Mapper<Object, Text, Text, IntWritable> {
|
||||
private final static IntWritable one = new IntWritable(1);
|
||||
private Text word = new Text();
|
||||
public void map(Object key, Text value, Context context) throws IOException, InterruptedException {
|
||||
StringTokenizer itr = new StringTokenizer(value.toString());
|
||||
while (itr.hasMoreTokens()) {
|
||||
word.set(itr.nextToken());
|
||||
context.write(word, one);
|
||||
}
|
||||
}
|
||||
}
|
||||
public static class IntSumReducer extends Reducer<Text, IntWritable, Text, IntWritable> {
|
||||
private IntWritable result = new IntWritable();
|
||||
public void reduce(Text key, Iterable<IntWritable> values, Context context) throws IOException, InterruptedException {
|
||||
int sum = 0;
|
||||
for (IntWritable val : values) {
|
||||
sum += val.get();
|
||||
}
|
||||
result.set(sum);
|
||||
context.write(key, result);
|
||||
}
|
||||
}
|
||||
public static void main(String[] args) throws Exception {
|
||||
Configuration conf = new Configuration();
|
||||
Job job = Job.getInstance(conf, "word count");
|
||||
job.setJarByClass(TestWordCount.class);
|
||||
job.setMapperClass(TokenizerMapper.class);
|
||||
job.setCombinerClass(IntSumReducer.class);
|
||||
job.setReducerClass(IntSumReducer.class);
|
||||
job.setOutputKeyClass(Text.class);
|
||||
job.setOutputValueClass(IntWritable.class);
|
||||
FileInputFormat.addInputPath(job, new Path(args[0]));
|
||||
FileOutputFormat.setOutputPath(job, new Path(args[1]));
|
||||
System.exit(job.waitForCompletion(true) ? 0 : 1);
|
||||
}
|
||||
}
|
||||
EOF
|
||||
|
||||
javac -cp $(hadoop classpath) /tmp/TestWordCount.java
|
||||
CHECK_RESULT $? 0 0 "编译测试MapReduce作业失败"
|
||||
jar cf /tmp/TestWordCount.jar -C /tmp TestWordCount*.class
|
||||
CHECK_RESULT $? 0 0 "打包测试MapReduce作业JAR文件失败"
|
||||
|
||||
LOG_INFO "步骤7:准备测试数据"
|
||||
echo "hello world hello hadoop hello yarn" > /tmp/test_input.txt
|
||||
hadoop fs -mkdir -p /user/test/input > /dev/null 2>&1
|
||||
hadoop fs -put /tmp/test_input.txt /user/test/input/ > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "准备测试数据失败"
|
||||
|
||||
LOG_INFO "步骤8:提交YARN作业"
|
||||
yarn jar /tmp/TestWordCount.jar TestWordCount /user/test/input /user/test/output 2>&1 | tee /tmp/yarn_submit.log
|
||||
CHECK_RESULT $? 0 0 "提交YARN作业失败"
|
||||
|
||||
LOG_INFO "步骤9:检查作业是否成功完成"
|
||||
grep -E "Job .* completed successfully" /tmp/yarn_submit.log > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "YARN作业未成功完成"
|
||||
|
||||
LOG_INFO "步骤10:检查作业输出结果"
|
||||
hadoop fs -cat /user/test/output/part-r-00000 2>&1 | grep -E "hello\s+3" > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "作业输出结果不符合预期"
|
||||
|
||||
LOG_INFO "步骤11:清理测试数据"
|
||||
hadoop fs -rm -r -f /user/test/input /user/test/output > /dev/null 2>&1
|
||||
rm -f /tmp/TestWordCount.java /tmp/TestWordCount*.class /tmp/TestWordCount.jar /tmp/test_input.txt /tmp/yarn_submit.log
|
||||
|
||||
if [ $INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "步骤12:卸载测试过程中安装的hadoop-yarn软件包"
|
||||
dnf remove -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "卸载hadoop-yarn软件包失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成:提交YARN作业测试通过"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,83 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试软件包卸载功能
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
set -e
|
||||
|
||||
LOG_INFO "开始测试hadoop-yarn软件包卸载功能"
|
||||
|
||||
# 检查软件包是否在yum源中
|
||||
LOG_INFO "检查hadoop-yarn软件包是否在yum源中"
|
||||
if ! dnf list available hadoop-yarn &>/dev/null; then
|
||||
LOG_ERROR "yum源中未找到hadoop-yarn软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 检查当前是否已安装
|
||||
LOG_INFO "检查hadoop-yarn是否已安装"
|
||||
if rpm -q hadoop-yarn &>/dev/null; then
|
||||
LOG_INFO "hadoop-yarn已安装,测试后将保持安装状态"
|
||||
already_installed=true
|
||||
else
|
||||
LOG_INFO "hadoop-yarn未安装,将执行安装测试"
|
||||
already_installed=false
|
||||
fi
|
||||
|
||||
# 如果未安装,则执行安装
|
||||
if [ "$already_installed" = false ]; then
|
||||
LOG_INFO "开始安装hadoop-yarn"
|
||||
dnf install -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "hadoop-yarn安装失败"
|
||||
fi
|
||||
|
||||
# 验证安装
|
||||
LOG_INFO "验证hadoop-yarn安装"
|
||||
rpm -q hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "hadoop-yarn安装验证失败"
|
||||
|
||||
# 测试卸载功能
|
||||
LOG_INFO "开始测试卸载功能"
|
||||
dnf remove -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "hadoop-yarn卸载失败"
|
||||
|
||||
# 验证卸载
|
||||
LOG_INFO "验证hadoop-yarn卸载"
|
||||
if rpm -q hadoop-yarn &>/dev/null; then
|
||||
LOG_ERROR "hadoop-yarn卸载后仍存在"
|
||||
exit 1
|
||||
fi
|
||||
LOG_INFO "hadoop-yarn卸载验证成功"
|
||||
|
||||
# 环境恢复
|
||||
LOG_INFO "开始环境恢复"
|
||||
if [ "$already_installed" = true ]; then
|
||||
LOG_INFO "重新安装hadoop-yarn以恢复环境"
|
||||
dnf install -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "环境恢复安装hadoop-yarn失败"
|
||||
LOG_INFO "环境恢复完成,保持hadoop-yarn安装状态"
|
||||
else
|
||||
LOG_INFO "环境已恢复至未安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "hadoop-yarn卸载功能测试完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,103 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试查看作业容器日志
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试查看作业容器日志功能"
|
||||
LOG_INFO "步骤1:检查Hadoop YARN相关软件包是否已安装"
|
||||
if rpm -qa | grep -q hadoop-yarn; then
|
||||
LOG_INFO "Hadoop YARN已安装,测试结束后保持安装状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "Hadoop YARN未安装,将在测试过程中安装"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤2:检查yum源中是否有hadoop-yarn软件包"
|
||||
if ! dnf list available hadoop-yarn 2>/dev/null | grep -q hadoop-yarn; then
|
||||
LOG_ERROR "yum源中没有hadoop-yarn软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "步骤3:安装hadoop-yarn软件包"
|
||||
dnf install -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "安装hadoop-yarn失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤4:检查yarn logs命令是否支持"
|
||||
yarn logs --help > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yarn logs命令不支持或参数错误"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤5:启动YARN服务并提交一个测试作业"
|
||||
systemctl start hadoop-yarn-resourcemanager
|
||||
CHECK_RESULT $? 0 0 "启动ResourceManager失败"
|
||||
systemctl start hadoop-yarn-nodemanager
|
||||
CHECK_RESULT $? 0 0 "启动NodeManager失败"
|
||||
|
||||
LOG_INFO "提交一个简单的MapReduce作业"
|
||||
hadoop jar /usr/lib/hadoop-mapreduce/hadoop-mapreduce-examples.jar pi 2 1000 > /tmp/mr_test.log 2>&1 &
|
||||
MR_PID=$!
|
||||
sleep 30
|
||||
|
||||
LOG_INFO "步骤6:获取作业ID并测试查看日志功能"
|
||||
JOB_ID=$(yarn application -list 2>/dev/null | grep -i "pi" | awk "{print $1}" | head -1)
|
||||
if [ -z "$JOB_ID" ]; then
|
||||
LOG_ERROR "未找到测试作业ID"
|
||||
kill $MR_PID 2>/dev/null
|
||||
exit 1
|
||||
fi
|
||||
|
||||
LOG_INFO "测试查看作业容器日志"
|
||||
yarn logs -applicationId $JOB_ID > /tmp/yarn_logs_test.log 2>&1
|
||||
CHECK_RESULT $? 0 0 "查看作业容器日志失败"
|
||||
|
||||
LOG_INFO "步骤7:验证日志文件内容"
|
||||
if [ -s /tmp/yarn_logs_test.log ]; then
|
||||
LOG_INFO "成功获取作业容器日志"
|
||||
else
|
||||
LOG_ERROR "获取的日志文件为空"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤8:清理测试作业"
|
||||
kill $MR_PID 2>/dev/null
|
||||
yarn application -kill $JOB_ID 2>/dev/null
|
||||
|
||||
LOG_INFO "步骤9:停止YARN服务"
|
||||
systemctl stop hadoop-yarn-nodemanager
|
||||
systemctl stop hadoop-yarn-resourcemanager
|
||||
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "步骤10:卸载hadoop-yarn软件包"
|
||||
dnf remove -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "卸载hadoop-yarn失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤11:清理临时文件"
|
||||
rm -f /tmp/mr_test.log /tmp/yarn_logs_test.log
|
||||
|
||||
LOG_INFO "测试查看作业容器日志完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,99 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 使用-V参数运行oom-listener命令,验证其版本信息显示功能
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 检查是否以root用户运行
|
||||
if [[ $EUID -ne 0 ]]; then
|
||||
LOG_ERROR "请以root用户运行此脚本"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# 定义软件包名称
|
||||
PACKAGE_NAME="hadoop-yarn-oom-listener"
|
||||
|
||||
# 步骤1:检查yum源中是否存在指定软件包
|
||||
LOG_INFO "步骤1:检查yum源中是否存在${PACKAGE_NAME}软件包"
|
||||
dnf list available ${PACKAGE_NAME} > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到${PACKAGE_NAME}软件包"
|
||||
exit 255
|
||||
fi
|
||||
LOG_INFO "yum源中存在${PACKAGE_NAME}软件包"
|
||||
|
||||
# 步骤2:检查当前环境是否已安装该软件包
|
||||
LOG_INFO "步骤2:检查当前环境是否已安装${PACKAGE_NAME}软件包"
|
||||
rpm -q ${PACKAGE_NAME} > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
INSTALLED="true"
|
||||
LOG_INFO "${PACKAGE_NAME}软件包已安装"
|
||||
else
|
||||
INSTALLED="false"
|
||||
LOG_INFO "${PACKAGE_NAME}软件包未安装"
|
||||
fi
|
||||
|
||||
# 步骤3:如果未安装,则安装软件包
|
||||
if [ "${INSTALLED}" = "false" ]; then
|
||||
LOG_INFO "步骤3:安装${PACKAGE_NAME}软件包"
|
||||
dnf install -y ${PACKAGE_NAME} > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "安装${PACKAGE_NAME}软件包失败"
|
||||
LOG_INFO "${PACKAGE_NAME}软件包安装成功"
|
||||
fi
|
||||
|
||||
# 步骤4:检查oom-listener命令是否支持-V参数
|
||||
LOG_INFO "步骤4:检查oom-listener命令是否支持-V参数"
|
||||
oom-listener --help 2>&1 | grep -q "\-V"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "oom-listener命令不支持-V参数"
|
||||
# 如果之前未安装,则需要卸载
|
||||
if [ "${INSTALLED}" = "false" ]; then
|
||||
dnf remove -y ${PACKAGE_NAME} > /dev/null 2>&1
|
||||
LOG_INFO "已卸载${PACKAGE_NAME}软件包"
|
||||
fi
|
||||
exit 255
|
||||
fi
|
||||
LOG_INFO "oom-listener命令支持-V参数"
|
||||
|
||||
# 步骤5:使用-V参数运行oom-listener命令,验证版本信息显示功能
|
||||
LOG_INFO "步骤5:使用-V参数运行oom-listener命令,验证版本信息显示功能"
|
||||
VERSION_OUTPUT=$(oom-listener -V 2>&1)
|
||||
CHECK_RESULT $? 0 0 "执行oom-listener -V命令失败"
|
||||
LOG_INFO "命令输出:${VERSION_OUTPUT}"
|
||||
|
||||
# 检查版本信息是否包含预期内容
|
||||
echo "${VERSION_OUTPUT}" | grep -q "version\|Version"
|
||||
CHECK_RESULT $? 0 0 "版本信息显示不正确"
|
||||
LOG_INFO "版本信息显示功能验证成功"
|
||||
|
||||
# 步骤6:清理环境,恢复到之前的状态
|
||||
LOG_INFO "步骤6:清理环境,恢复到之前的状态"
|
||||
if [ "${INSTALLED}" = "false" ]; then
|
||||
LOG_INFO "卸载${PACKAGE_NAME}软件包"
|
||||
dnf remove -y ${PACKAGE_NAME} > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "卸载${PACKAGE_NAME}软件包失败"
|
||||
LOG_INFO "环境已恢复,${PACKAGE_NAME}软件包已卸载"
|
||||
else
|
||||
LOG_INFO "环境已保持安装状态,无需卸载${PACKAGE_NAME}软件包"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试脚本执行完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,61 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 使用-v参数运行oom-listener命令,验证其详细信息输出功能
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "测试开始:验证使用-v参数运行oom-listener命令的详细信息输出功能"
|
||||
LOG_INFO "步骤1:检查是否已安装hadoop-yarn-oom-listener软件包"
|
||||
if rpm -q hadoop-yarn-oom-listener &> /dev/null; then
|
||||
LOG_INFO "hadoop-yarn-oom-listener已安装,测试结束后将保持安装状态"
|
||||
INSTALLED=1
|
||||
else
|
||||
LOG_INFO "hadoop-yarn-oom-listener未安装,将在测试前安装,测试结束后卸载"
|
||||
INSTALLED=0
|
||||
LOG_INFO "步骤2:检查yum源中是否有hadoop-yarn-oom-listener软件包"
|
||||
if ! dnf list available hadoop-yarn-oom-listener &> /dev/null; then
|
||||
LOG_ERROR "yum源中没有hadoop-yarn-oom-listener软件包"
|
||||
exit 255
|
||||
fi
|
||||
LOG_INFO "步骤3:安装hadoop-yarn-oom-listener软件包"
|
||||
dnf install -y hadoop-yarn-oom-listener
|
||||
CHECK_RESULT $? 0 0 "安装hadoop-yarn-oom-listener失败"
|
||||
fi
|
||||
LOG_INFO "步骤4:检查oom-listener命令是否支持-v参数"
|
||||
if ! oom-listener -h 2>&1 | grep -q -- "-v"; then
|
||||
LOG_ERROR "oom-listener命令不支持-v参数"
|
||||
if [ $INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "步骤5:卸载hadoop-yarn-oom-listener软件包"
|
||||
dnf remove -y hadoop-yarn-oom-listener
|
||||
CHECK_RESULT $? 0 0 "卸载hadoop-yarn-oom-listener失败"
|
||||
fi
|
||||
exit 255
|
||||
fi
|
||||
LOG_INFO "步骤5:使用-v参数运行oom-listener命令"
|
||||
oom-listener -v
|
||||
CHECK_RESULT $? 0 0 "使用-v参数运行oom-listener命令失败"
|
||||
if [ $INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "步骤6:卸载hadoop-yarn-oom-listener软件包"
|
||||
dnf remove -y hadoop-yarn-oom-listener
|
||||
CHECK_RESULT $? 0 0 "卸载hadoop-yarn-oom-listener失败"
|
||||
fi
|
||||
LOG_INFO "测试结束:验证使用-v参数运行oom-listener命令的详细信息输出功能完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,71 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2025-11-30
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试 oom-listener 命令的默认行为
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
|
||||
# 检查软件包是否已安装
|
||||
if ! rpm -q hadoop-yarn-oom-listener &>/dev/null; then
|
||||
LOG_INFO "环境未安装hadoop-yarn-oom-listener,将进行安装"
|
||||
# 检查yum源中是否存在软件包
|
||||
if ! dnf list available hadoop-yarn-oom-listener &>/dev/null; then
|
||||
LOG_ERROR "yum源中未找到hadoop-yarn-oom-listener软件包"
|
||||
exit 255
|
||||
fi
|
||||
# 安装软件包
|
||||
dnf install -y hadoop-yarn-oom-listener
|
||||
CHECK_RESULT $? 0 0 "安装hadoop-yarn-oom-listener失败"
|
||||
# 标记需要卸载
|
||||
UNINSTALL_NEEDED=1
|
||||
else
|
||||
LOG_INFO "环境已安装hadoop-yarn-oom-listener"
|
||||
fi
|
||||
|
||||
# 测试oom-listener命令的默认行为
|
||||
LOG_INFO "测试oom-listener命令的默认行为"
|
||||
oom-listener --help &>/dev/null
|
||||
CHECK_RESULT $? 0 0 "oom-listener命令不支持--help参数"
|
||||
|
||||
# 执行默认命令并检查结果
|
||||
LOG_INFO "执行默认的oom-listener命令"
|
||||
oom-listener > /tmp/oom_listener_output.log 2>&1
|
||||
CHECK_RESULT $? 0 0 "oom-listener命令执行失败"
|
||||
|
||||
# 检查输出文件是否存在且非空
|
||||
if [ ! -s /tmp/oom_listener_output.log ]; then
|
||||
LOG_ERROR "oom-listener命令未生成有效输出"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# 清理临时文件
|
||||
rm -f /tmp/oom_listener_output.log
|
||||
|
||||
# 如果脚本安装了软件包,则在结束时卸载
|
||||
if [ "$UNINSTALL_NEEDED" -eq 1 ]; then
|
||||
LOG_INFO "卸载hadoop-yarn-oom-listener"
|
||||
dnf remove -y hadoop-yarn-oom-listener
|
||||
CHECK_RESULT $? 0 0 "卸载hadoop-yarn-oom-listener失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成,环境已恢复"
|
||||
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,64 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试使用-h参数显示帮助信息
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试hadoop-yarn-test-container-executor命令的-h参数帮助信息显示功能"
|
||||
LOG_INFO "步骤1:检查当前环境是否已安装hadoop-yarn-test-container-executor软件包"
|
||||
if dnf list installed hadoop-yarn-test-container-executor &>/dev/null; then
|
||||
LOG_INFO "hadoop-yarn-test-container-executor软件包已安装,测试完成后将保持安装状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "hadoop-yarn-test-container-executor软件包未安装,将在测试前安装并在测试后卸载"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "步骤2:检查yum源中是否存在hadoop-yarn-test-container-executor软件包"
|
||||
if ! dnf list available hadoop-yarn-test-container-executor &>/dev/null; then
|
||||
LOG_ERROR "yum源中未找到hadoop-yarn-test-container-executor软件包"
|
||||
exit 255
|
||||
fi
|
||||
LOG_INFO "步骤3:安装hadoop-yarn-test-container-executor软件包"
|
||||
dnf install -y hadoop-yarn-test-container-executor
|
||||
CHECK_RESULT $? 0 0 "安装hadoop-yarn-test-container-executor软件包失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤4:执行hadoop-yarn-test-container-executor -h命令显示帮助信息"
|
||||
hadoop-yarn-test-container-executor -h
|
||||
CHECK_RESULT $? 0 0 "执行hadoop-yarn-test-container-executor -h命令失败"
|
||||
|
||||
LOG_INFO "步骤5:验证-h参数输出的帮助信息是否包含预期内容"
|
||||
hadoop-yarn-test-container-executor -h | grep -q "usage:"
|
||||
CHECK_RESULT $? 0 0 "帮助信息中未找到"usage:"关键字"
|
||||
|
||||
LOG_INFO "步骤6:清理测试环境"
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "卸载hadoop-yarn-test-container-executor软件包"
|
||||
dnf remove -y hadoop-yarn-test-container-executor
|
||||
CHECK_RESULT $? 0 0 "卸载hadoop-yarn-test-container-executor软件包失败"
|
||||
else
|
||||
LOG_INFO "保持hadoop-yarn-test-container-executor软件包安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成,环境已恢复"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,64 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2025-12-01
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试 test-container-executor 命令的帮助文档功能
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试 test-container-executor 命令的帮助文档功能"
|
||||
|
||||
# 检查是否已安装hadoop-yarn
|
||||
LOG_INFO "检查是否已安装hadoop-yarn"
|
||||
if dnf list installed hadoop-yarn &>/dev/null; then
|
||||
LOG_INFO "hadoop-yarn已安装,无需重新安装"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "hadoop-yarn未安装,将进行安装"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有hadoop-yarn软件包
|
||||
LOG_INFO "检查yum源中是否有hadoop-yarn软件包"
|
||||
if ! dnf list available hadoop-yarn &>/dev/null; then
|
||||
LOG_ERROR "yum源中未找到hadoop-yarn软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装hadoop-yarn
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "正在安装hadoop-yarn"
|
||||
dnf install -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "安装hadoop-yarn失败"
|
||||
fi
|
||||
|
||||
# 测试test-container-executor命令的帮助文档功能
|
||||
LOG_INFO "测试test-container-executor命令的帮助文档功能"
|
||||
test-container-executor --help &>/dev/null
|
||||
CHECK_RESULT $? 0 0 "test-container-executor命令的帮助文档功能测试失败"
|
||||
|
||||
# 如果之前未安装,则卸载hadoop-yarn
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "正在卸载hadoop-yarn"
|
||||
dnf remove -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "卸载hadoop-yarn失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成,环境已恢复"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,65 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试使用-D参数指定配置属性
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试:测试使用-D参数指定配置属性"
|
||||
LOG_INFO "步骤1:检查环境是否已安装hadoop-yarn"
|
||||
if rpm -qa | grep -q "hadoop-yarn"; then
|
||||
LOG_INFO "hadoop-yarn已安装,将保持安装状态"
|
||||
ENV_INSTALLED="true"
|
||||
else
|
||||
LOG_INFO "hadoop-yarn未安装,将在测试过程中安装"
|
||||
ENV_INSTALLED="false"
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤2:检查yum源中是否有hadoop-yarn软件包"
|
||||
if ! dnf list available hadoop-yarn 2>/dev/null | grep -q "hadoop-yarn"; then
|
||||
LOG_ERROR "yum源中没有hadoop-yarn软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
if [ "$ENV_INSTALLED" = "false" ]; then
|
||||
LOG_INFO "步骤3:安装hadoop-yarn软件包"
|
||||
dnf install -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "安装hadoop-yarn失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤4:检查container-executor命令是否支持-D参数"
|
||||
container-executor --help 2>&1 | grep -q "\-D"
|
||||
CHECK_RESULT $? 0 0 "container-executor命令不支持-D参数"
|
||||
if [ $? -ne 0 ]; then
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤5:使用-D参数指定配置属性执行container-executor命令"
|
||||
container-executor -Dtest.property=testvalue
|
||||
CHECK_RESULT $? 0 0 "使用-D参数执行container-executor命令失败"
|
||||
|
||||
if [ "$ENV_INSTALLED" = "false" ]; then
|
||||
LOG_INFO "步骤6:卸载hadoop-yarn软件包"
|
||||
dnf remove -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "卸载hadoop-yarn失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成:测试使用-D参数指定配置属性"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,71 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试使用-R参数指定运行模式
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试使用-R参数指定运行模式"
|
||||
|
||||
# 检查环境是否已安装hadoop-yarn
|
||||
LOG_INFO "检查hadoop-yarn是否已安装"
|
||||
if dnf list installed hadoop-yarn &>/dev/null; then
|
||||
LOG_INFO "hadoop-yarn已安装"
|
||||
already_installed=true
|
||||
else
|
||||
LOG_INFO "hadoop-yarn未安装"
|
||||
already_installed=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有hadoop-yarn软件包
|
||||
LOG_INFO "检查yum源中是否有hadoop-yarn软件包"
|
||||
if ! dnf list available hadoop-yarn &>/dev/null; then
|
||||
LOG_ERROR "yum源中没有hadoop-yarn软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装则安装hadoop-yarn
|
||||
if [ "$already_installed" = false ]; then
|
||||
LOG_INFO "安装hadoop-yarn"
|
||||
dnf install -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "安装hadoop-yarn失败"
|
||||
fi
|
||||
|
||||
# 检查container-executor命令是否支持-R参数
|
||||
LOG_INFO "检查container-executor命令是否支持-R参数"
|
||||
if ! container-executor --help 2>&1 | grep -q "\-R"; then
|
||||
LOG_ERROR "container-executor命令不支持-R参数"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 测试使用-R参数指定运行模式
|
||||
LOG_INFO "测试使用-R参数指定运行模式"
|
||||
container-executor -R test_mode
|
||||
CHECK_RESULT $? 0 0 "使用-R参数执行失败"
|
||||
|
||||
# 清理环境:如果测试前未安装,则卸载hadoop-yarn
|
||||
if [ "$already_installed" = false ]; then
|
||||
LOG_INFO "卸载hadoop-yarn"
|
||||
dnf remove -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "卸载hadoop-yarn失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,85 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试使用-U参数指定用户
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试使用-U参数指定用户"
|
||||
|
||||
# 定义软件包名称
|
||||
PACKAGE_NAME="hadoop-yarn"
|
||||
|
||||
# 步骤1:检查yum源中是否有hadoop-yarn软件包
|
||||
LOG_INFO "步骤1:检查yum源中是否有hadoop-yarn软件包"
|
||||
if ! dnf list available "$PACKAGE_NAME" &> /dev/null; then
|
||||
LOG_ERROR "yum源中没有找到$PACKAGE_NAME软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 步骤2:检查当前是否已安装hadoop-yarn
|
||||
LOG_INFO "步骤2:检查当前是否已安装hadoop-yarn"
|
||||
if rpm -q "$PACKAGE_NAME" &> /dev/null; then
|
||||
LOG_INFO "$PACKAGE_NAME已安装,脚本结束时将保持安装状态"
|
||||
INSTALLED_BEFORE=true
|
||||
else
|
||||
LOG_INFO "$PACKAGE_NAME未安装,将在测试过程中安装"
|
||||
INSTALLED_BEFORE=false
|
||||
fi
|
||||
|
||||
# 步骤3:如果未安装,则安装软件包
|
||||
if [ "$INSTALLED_BEFORE" = false ]; then
|
||||
LOG_INFO "步骤3:安装hadoop-yarn软件包"
|
||||
dnf install -y "$PACKAGE_NAME"
|
||||
CHECK_RESULT $? 0 0 "安装hadoop-yarn失败"
|
||||
fi
|
||||
|
||||
# 步骤4:测试使用-U参数指定用户
|
||||
LOG_INFO "步骤4:测试使用-U参数指定用户"
|
||||
# 假设测试命令为container-executor,使用-U参数指定用户
|
||||
# 先检查命令是否存在
|
||||
if ! command -v container-executor &> /dev/null; then
|
||||
LOG_ERROR "container-executor命令不存在"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 检查-U参数是否被支持
|
||||
LOG_INFO "检查-U参数是否被支持"
|
||||
container-executor --help | grep -q "\-U"
|
||||
CHECK_RESULT $? 0 0 "container-executor命令不支持-U参数"
|
||||
|
||||
# 执行测试命令,使用-U参数指定一个测试用户(例如testuser)
|
||||
LOG_INFO "执行测试命令:container-executor -U testuser"
|
||||
container-executor -U testuser
|
||||
# 注意:这里假设命令执行成功返回0,失败返回非0
|
||||
# 实际应根据命令的具体行为调整检查逻辑
|
||||
CHECK_RESULT $? 0 0 "使用-U参数执行container-executor失败"
|
||||
|
||||
# 步骤5:清理环境,如果之前未安装则卸载软件包
|
||||
if [ "$INSTALLED_BEFORE" = false ]; then
|
||||
LOG_INFO "步骤5:卸载hadoop-yarn软件包"
|
||||
dnf remove -y "$PACKAGE_NAME"
|
||||
CHECK_RESULT $? 0 0 "卸载hadoop-yarn失败"
|
||||
else
|
||||
LOG_INFO "步骤5:保持hadoop-yarn安装状态,无需卸载"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,69 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试使用-V参数显示版本信息
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试使用-V参数显示版本信息"
|
||||
LOG_INFO "步骤1:检查环境是否已安装hadoop-yarn软件包"
|
||||
if rpm -q hadoop-yarn &>/dev/null; then
|
||||
LOG_INFO "hadoop-yarn软件包已安装,标记为保持安装状态"
|
||||
KEEP_INSTALLED=true
|
||||
else
|
||||
LOG_INFO "hadoop-yarn软件包未安装,标记为需要安装"
|
||||
KEEP_INSTALLED=false
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤2:检查yum源中是否有hadoop-yarn软件包"
|
||||
if ! dnf list available hadoop-yarn &>/dev/null; then
|
||||
LOG_ERROR "yum源中没有找到hadoop-yarn软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
if [ "$KEEP_INSTALLED" = false ]; then
|
||||
LOG_INFO "步骤3:安装hadoop-yarn软件包"
|
||||
dnf install -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "安装hadoop-yarn软件包失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤4:检查container-executor命令是否支持-V参数"
|
||||
container-executor --help 2>&1 | grep -q "\-V"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "container-executor命令不支持-V参数"
|
||||
if [ "$KEEP_INSTALLED" = false ]; then
|
||||
LOG_INFO "清理环境:卸载hadoop-yarn软件包"
|
||||
dnf remove -y hadoop-yarn
|
||||
fi
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤5:执行container-executor -V命令显示版本信息"
|
||||
container-executor -V
|
||||
CHECK_RESULT $? 0 0 "执行container-executor -V命令失败"
|
||||
|
||||
if [ "$KEEP_INSTALLED" = false ]; then
|
||||
LOG_INFO "步骤6:清理环境,卸载hadoop-yarn软件包"
|
||||
dnf remove -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "卸载hadoop-yarn软件包失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,55 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2025-11-30
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试帮助命令
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试hadoop-yarn_test-container-executor帮助命令"
|
||||
|
||||
# 检查是否已安装hadoop-yarn
|
||||
if ! dnf list installed hadoop-yarn &>/dev/null; then
|
||||
LOG_INFO "hadoop-yarn未安装,开始安装"
|
||||
if ! dnf list available hadoop-yarn &>/dev/null; then
|
||||
LOG_ERROR "yum源中未找到hadoop-yarn软件包"
|
||||
exit 255
|
||||
fi
|
||||
dnf install -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "安装hadoop-yarn失败"
|
||||
INSTALLED=1
|
||||
else
|
||||
LOG_INFO "hadoop-yarn已安装"
|
||||
INSTALLED=0
|
||||
fi
|
||||
|
||||
# 测试帮助命令
|
||||
LOG_INFO "测试hadoop-yarn_test-container-executor帮助命令"
|
||||
hadoop-yarn_test-container-executor --help
|
||||
CHECK_RESULT $? 0 0 "执行帮助命令失败"
|
||||
|
||||
# 清理环境
|
||||
if [ $INSTALLED -eq 1 ]; then
|
||||
LOG_INFO "卸载hadoop-yarn"
|
||||
dnf remove -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "卸载hadoop-yarn失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,59 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2025-11-30
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试 yarn 命令的 --config 参数,验证是否能正确指定 Hadoop 配置目录
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试 yarn 命令的 --config 参数,验证是否能正确指定 Hadoop 配置目录"
|
||||
|
||||
# 检查是否已安装 hadoop-yarn 软件包
|
||||
LOG_INFO "检查 hadoop-yarn 软件包是否已安装"
|
||||
if ! dnf list installed hadoop-yarn &> /dev/null; then
|
||||
LOG_INFO "hadoop-yarn 未安装,将进行安装"
|
||||
# 检查 yum 源中是否有 hadoop-yarn
|
||||
if ! dnf list available hadoop-yarn &> /dev/null; then
|
||||
LOG_ERROR "yum 源中未找到 hadoop-yarn 软件包"
|
||||
exit 255
|
||||
fi
|
||||
# 安装 hadoop-yarn
|
||||
dnf install -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "安装 hadoop-yarn 失败"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "hadoop-yarn 已安装"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 验证 --config 参数
|
||||
LOG_INFO "验证 yarn 命令的 --config 参数"
|
||||
CONFIG_DIR="/tmp/hadoop-config"
|
||||
mkdir -p $CONFIG_DIR
|
||||
CHECK_RESULT $? 0 0 "创建配置目录失败"
|
||||
|
||||
# 执行 yarn 命令并指定配置目录
|
||||
yarn --config $CONFIG_DIR
|
||||
CHECK_RESULT $? 0 0 "yarn --config $CONFIG_DIR 执行失败"
|
||||
|
||||
# 清理环境
|
||||
LOG_INFO "清理测试环境"
|
||||
rm -rf $CONFIG_DIR
|
||||
CHECK_RESULT $? 0
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,78 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2025-11-30
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试 yarn 命令的 --daemon start 参数,验证是否能正确启动守护进程
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 检查是否已安装hadoop-yarn
|
||||
LOG_INFO "检查是否已安装hadoop-yarn"
|
||||
rpm -q hadoop-yarn > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "hadoop-yarn已安装,脚本结束时将保持安装状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "hadoop-yarn未安装,脚本结束时将卸载"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有hadoop-yarn软件包
|
||||
LOG_INFO "检查yum源中是否有hadoop-yarn软件包"
|
||||
dnf list available hadoop-yarn > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中没有hadoop-yarn软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装hadoop-yarn
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "开始安装hadoop-yarn"
|
||||
dnf install -y hadoop-yarn > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "安装hadoop-yarn失败"
|
||||
fi
|
||||
|
||||
# 检查yarn命令是否支持--daemon start参数
|
||||
LOG_INFO "检查yarn命令是否支持--daemon start参数"
|
||||
yarn --help | grep -q "\-\-daemon start" > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yarn命令不支持--daemon start参数"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 执行yarn --daemon start命令
|
||||
LOG_INFO "执行yarn --daemon start命令"
|
||||
yarn --daemon start > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "启动守护进程失败"
|
||||
|
||||
# 检查守护进程是否已启动
|
||||
LOG_INFO "检查守护进程是否已启动"
|
||||
ps -ef | grep yarn | grep -v grep > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "守护进程未启动"
|
||||
|
||||
# 停止守护进程以清理环境
|
||||
LOG_INFO "停止守护进程以清理环境"
|
||||
yarn --daemon stop > /dev/null 2>&1
|
||||
|
||||
# 如果脚本开始时未安装,则卸载hadoop-yarn以恢复环境状态。否则保持原状。
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "卸载hadoop-yarn以恢复环境状态"
|
||||
dnf remove -y hadoop-yarn > /dev/null 2>&1
|
||||
fi
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,64 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2025-11-30
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试 yarn 命令的 --daemon status 参数,验证是否能正确查看守护进程状态
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
|
||||
# 检查是否已安装hadoop-yarn
|
||||
LOG_INFO "检查是否已安装hadoop-yarn"
|
||||
if rpm -q hadoop-yarn &>/dev/null; then
|
||||
LOG_INFO "hadoop-yarn已安装"
|
||||
installed=true
|
||||
else
|
||||
LOG_INFO "hadoop-yarn未安装"
|
||||
installed=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有hadoop-yarn软件包
|
||||
LOG_INFO "检查yum源中是否有hadoop-yarn软件包"
|
||||
if ! dnf list available hadoop-yarn &>/dev/null; then
|
||||
LOG_ERROR "yum源中未找到hadoop-yarn软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装hadoop-yarn
|
||||
if [ "$installed" = false ]; then
|
||||
LOG_INFO "开始安装hadoop-yarn"
|
||||
dnf install -y hadoop-yarn &>/dev/null
|
||||
CHECK_RESULT $? 0 0 "安装hadoop-yarn失败"
|
||||
fi
|
||||
|
||||
# 测试yarn命令的--daemon status参数
|
||||
LOG_INFO "测试yarn命令的--daemon status参数"
|
||||
yarn --daemon status &>/dev/null
|
||||
CHECK_RESULT $? 0 0 "yarn --daemon status执行失败"
|
||||
|
||||
# 恢复环境
|
||||
if [ "$installed" = false ]; then
|
||||
LOG_INFO "卸载hadoop-yarn"
|
||||
dnf remove -y hadoop-yarn &>/dev/null
|
||||
CHECK_RESULT $? 0 0 "卸载hadoop-yarn失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试脚本执行完毕"
|
||||
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,74 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2025-11-30
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试 yarn 命令的 --daemon stop 参数,验证是否能正确停止守护进程
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
|
||||
# 检查是否已安装hadoop-yarn软件包
|
||||
LOG_INFO "检查是否已安装hadoop-yarn软件包"
|
||||
rpm -q hadoop-yarn
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "hadoop-yarn已安装"
|
||||
installed=true
|
||||
else
|
||||
LOG_INFO "hadoop-yarn未安装"
|
||||
installed=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有hadoop-yarn软件包
|
||||
LOG_INFO "检查yum源中是否有hadoop-yarn软件包"
|
||||
dnf list available hadoop-yarn
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中没有hadoop-yarn软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装hadoop-yarn
|
||||
if [ "$installed" = false ]; then
|
||||
LOG_INFO "安装hadoop-yarn软件包"
|
||||
dnf install -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "安装hadoop-yarn失败"
|
||||
fi
|
||||
|
||||
# 检查yarn命令的--daemon stop参数是否存在
|
||||
LOG_INFO "检查yarn命令的--daemon stop参数是否存在"
|
||||
yarn --help | grep -- "--daemon stop"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yarn命令不支持--daemon stop参数"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 执行yarn --daemon stop命令并验证结果
|
||||
LOG_INFO "执行yarn --daemon stop命令"
|
||||
yarn --daemon stop
|
||||
CHECK_RESULT $? 0 0 "执行yarn --daemon stop失败"
|
||||
|
||||
# 清理环境
|
||||
if [ "$installed" = false ]; then
|
||||
LOG_INFO "卸载hadoop-yarn软件包"
|
||||
dnf remove -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "卸载hadoop-yarn失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试脚本执行完毕,环境已恢复"
|
||||
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,68 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2025-11-30
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试 yarn 命令的 --debug 参数,验证是否能正确开启调试模式
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
|
||||
LOG_INFO "开始测试 yarn 命令的 --debug 参数,验证是否能正确开启调试模式"
|
||||
|
||||
# 检查是否已安装hadoop-yarn软件包
|
||||
LOG_INFO "检查hadoop-yarn软件包是否已安装"
|
||||
if ! dnf list installed hadoop-yarn &>/dev/null; then
|
||||
LOG_INFO "hadoop-yarn未安装,将进行安装"
|
||||
# 检查yum源中是否有hadoop-yarn软件包
|
||||
if ! dnf list available hadoop-yarn &>/dev/null; then
|
||||
LOG_ERROR "yum源中未找到hadoop-yarn软件包"
|
||||
exit 255
|
||||
fi
|
||||
# 安装hadoop-yarn
|
||||
dnf install -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "安装hadoop-yarn失败"
|
||||
# 标记为需要卸载
|
||||
UNINSTALL_NEEDED=1
|
||||
else
|
||||
LOG_INFO "hadoop-yarn已安装,无需重新安装"
|
||||
UNINSTALL_NEEDED=0
|
||||
fi
|
||||
|
||||
# 测试yarn --debug命令
|
||||
LOG_INFO "执行yarn --debug命令"
|
||||
output=$(yarn --debug 2>&1)
|
||||
CHECK_RESULT $? 0 0 "yarn --debug命令执行失败"
|
||||
|
||||
# 验证输出是否包含调试信息
|
||||
LOG_INFO "验证输出是否包含调试信息"
|
||||
if [[ "$output" == *"debug"* ]]; then
|
||||
LOG_INFO "调试模式已正确开启"
|
||||
else
|
||||
LOG_ERROR "调试模式未正确开启"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# 清理环境
|
||||
if [ "$UNINSTALL_NEEDED" -eq 1 ]; then
|
||||
LOG_INFO "卸载hadoop-yarn软件包"
|
||||
dnf remove -y hadoop-yarn &>/dev/null
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成,环境已恢复"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,76 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2025-12-01
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试 yarn 命令的 --hosts 参数,指定工作模式下的主机文件列表
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
|
||||
# 检查yarn是否已安装
|
||||
LOG_INFO "检查yarn是否已安装"
|
||||
if ! dnf list installed hadoop-yarn &>/dev/null; then
|
||||
LOG_INFO "yarn未安装,开始安装"
|
||||
# 检查yum源中是否有hadoop-yarn包
|
||||
if ! dnf list available hadoop-yarn &>/dev/null; then
|
||||
LOG_ERROR "yum源中未找到hadoop-yarn包"
|
||||
exit 255
|
||||
fi
|
||||
# 安装hadoop-yarn
|
||||
dnf install -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "安装hadoop-yarn失败"
|
||||
# 标记为需要卸载
|
||||
NEED_UNINSTALL=1
|
||||
else
|
||||
LOG_INFO "yarn已安装,跳过安装步骤"
|
||||
NEED_UNINSTALL=0
|
||||
fi
|
||||
|
||||
# 测试yarn命令的--hosts参数
|
||||
LOG_INFO "测试yarn命令的--hosts参数"
|
||||
# 检查--hosts参数是否支持
|
||||
if ! yarn --help | grep -q -- "--hosts"; then
|
||||
LOG_ERROR "yarn命令不支持--hosts参数"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 创建临时主机文件
|
||||
LOG_INFO "创建临时主机文件"
|
||||
echo "node1" > /tmp/hosts_file
|
||||
echo "node2" >> /tmp/hosts_file
|
||||
|
||||
# 执行yarn命令
|
||||
LOG_INFO "执行yarn命令"
|
||||
yarn --hosts /tmp/hosts_file
|
||||
CHECK_RESULT $? 0 0 "yarn命令执行失败"
|
||||
|
||||
# 清理临时文件
|
||||
LOG_INFO "清理临时文件"
|
||||
rm -f /tmp/hosts_file
|
||||
|
||||
# 恢复环境
|
||||
if [ $NEED_UNINSTALL -eq 1 ]; then
|
||||
LOG_INFO "卸载hadoop-yarn"
|
||||
dnf remove -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "卸载hadoop-yarn失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成"
|
||||
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,75 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2025-11-30
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试 yarn 命令的 --loglevel 参数,验证是否能正确设置日志级别
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试 yarn 命令的 --loglevel 参数,验证是否能正确设置日志级别"
|
||||
|
||||
# 检查是否已安装 hadoop-yarn
|
||||
if ! dnf list installed hadoop-yarn &> /dev/null; then
|
||||
LOG_INFO "hadoop-yarn 未安装,开始安装"
|
||||
if ! dnf list available hadoop-yarn &> /dev/null; then
|
||||
LOG_ERROR "yum 源中未找到 hadoop-yarn 软件包"
|
||||
exit 255
|
||||
fi
|
||||
dnf install -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "安装 hadoop-yarn 失败"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "hadoop-yarn 已安装,跳过安装步骤"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 测试 --loglevel 参数
|
||||
LOG_INFO "测试 yarn --loglevel 参数"
|
||||
yarn --loglevel DEBUG &> /dev/null
|
||||
CHECK_RESULT $? 0 0 "yarn --loglevel DEBUG 执行失败"
|
||||
|
||||
yarn --loglevel INFO &> /dev/null
|
||||
CHECK_RESULT $? 0 0 "yarn --loglevel INFO 执行失败"
|
||||
|
||||
yarn --loglevel WARN &> /dev/null
|
||||
CHECK_RESULT $? 0 0 "yarn --loglevel WARN 执行失败"
|
||||
|
||||
yarn --loglevel ERROR &> /dev/null
|
||||
CHECK_RESULT $? 0 0 "yarn --loglevel ERROR 执行失败"
|
||||
|
||||
yarn --loglevel FATAL &> /dev/null
|
||||
CHECK_RESULT $? 0 0 "yarn --loglevel FATAL 执行失败"
|
||||
|
||||
# 测试不支持的参数值(预期失败)
|
||||
LOG_INFO "测试不支持的日志级别参数值"
|
||||
yarn --loglevel INVALID &> /dev/null
|
||||
if [ $? -ne 255 ]; then
|
||||
LOG_ERROR "不支持的日志级别参数值未触发退出码255"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 清理环境(如果脚本安装了软件包)
|
||||
if [ "$INSTALLED" = true ]; then
|
||||
LOG_INFO "卸载 hadoop-yarn"
|
||||
dnf remove -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 -1 "卸载 hadoop-yarn failed" # 允许卸载失败(如依赖问题)
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成,环境已恢复"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,82 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试指定Hadoop配置目录
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
set -e
|
||||
|
||||
LOG_INFO "开始测试指定Hadoop配置目录功能"
|
||||
|
||||
# 定义软件包名称
|
||||
PACKAGE_NAME="hadoop-yarn"
|
||||
|
||||
# 步骤1: 检查软件包是否在yum源中
|
||||
LOG_INFO "检查yum源中是否存在${PACKAGE_NAME}软件包"
|
||||
if ! dnf list available ${PACKAGE_NAME} &>/dev/null; then
|
||||
LOG_ERROR "yum源中未找到${PACKAGE_NAME}软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 步骤2: 检查当前环境是否已安装
|
||||
LOG_INFO "检查当前环境是否已安装${PACKAGE_NAME}"
|
||||
if rpm -q ${PACKAGE_NAME} &>/dev/null; then
|
||||
LOG_INFO "检测到${PACKAGE_NAME}已安装,标记为已存在安装"
|
||||
ALREADY_INSTALLED=true
|
||||
else
|
||||
LOG_INFO "未检测到${PACKAGE_NAME}安装,标记为未安装"
|
||||
ALREADY_INSTALLED=false
|
||||
fi
|
||||
|
||||
# 步骤3: 如果未安装,则进行安装
|
||||
if [ "${ALREADY_INSTALLED}" = "false" ]; then
|
||||
LOG_INFO "开始安装${PACKAGE_NAME}软件包"
|
||||
dnf install -y ${PACKAGE_NAME}
|
||||
CHECK_RESULT $? 0 0 "安装${PACKAGE_NAME}失败"
|
||||
fi
|
||||
|
||||
# 步骤4: 验证yarn命令的--config参数是否存在
|
||||
LOG_INFO "验证yarn命令是否支持--config参数"
|
||||
yarn --help 2>&1 | grep -q -- "--config"
|
||||
CHECK_RESULT $? 0 0 "yarn命令不支持--config参数"
|
||||
|
||||
# 步骤5: 测试指定配置目录功能
|
||||
LOG_INFO "测试指定配置目录功能"
|
||||
TEST_CONFIG_DIR="/tmp/test_hadoop_config_$(date +%s)"
|
||||
mkdir -p ${TEST_CONFIG_DIR}
|
||||
yarn --config ${TEST_CONFIG_DIR} version 2>&1 | grep -q "Hadoop"
|
||||
CHECK_RESULT $? 0 0 "使用--config指定目录执行yarn命令失败"
|
||||
|
||||
# 步骤6: 清理测试目录
|
||||
LOG_INFO "清理测试创建的临时目录"
|
||||
rm -rf ${TEST_CONFIG_DIR}
|
||||
|
||||
# 步骤7: 环境恢复
|
||||
if [ "${ALREADY_INSTALLED}" = "false" ]; then
|
||||
LOG_INFO "卸载测试安装的${PACKAGE_NAME}软件包"
|
||||
dnf remove -y ${PACKAGE_NAME}
|
||||
CHECK_RESULT $? 0 0 "卸载${PACKAGE_NAME}失败"
|
||||
else
|
||||
LOG_INFO "保持${PACKAGE_NAME}原有安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "指定Hadoop配置目录测试完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,62 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试以守护进程模式启动yarn
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试以守护进程模式启动yarn"
|
||||
LOG_INFO "检查环境是否已安装hadoop-yarn"
|
||||
if dnf list installed hadoop-yarn &> /dev/null; then
|
||||
LOG_INFO "hadoop-yarn已安装,跳过安装步骤"
|
||||
INSTALLED="true"
|
||||
else
|
||||
LOG_INFO "hadoop-yarn未安装,开始安装"
|
||||
if ! dnf list available hadoop-yarn &> /dev/null; then
|
||||
LOG_ERROR "yum源中不存在hadoop-yarn软件包"
|
||||
exit 255
|
||||
fi
|
||||
dnf install -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "安装hadoop-yarn失败"
|
||||
INSTALLED="false"
|
||||
fi
|
||||
LOG_INFO "检查yarn命令是否支持--daemon参数"
|
||||
yarn --help 2>&1 | grep -q "\-\-daemon"
|
||||
CHECK_RESULT $? 0 0 "yarn命令不支持--daemon参数"
|
||||
LOG_INFO "以守护进程模式启动yarn"
|
||||
yarn --daemon start
|
||||
CHECK_RESULT $? 0 0 "启动yarn守护进程失败"
|
||||
LOG_INFO "检查yarn守护进程是否运行"
|
||||
sleep 2
|
||||
if ! pgrep -f "yarn" &> /dev/null; then
|
||||
LOG_ERROR "yarn守护进程未运行"
|
||||
exit 1
|
||||
fi
|
||||
LOG_INFO "停止yarn守护进程"
|
||||
yarn --daemon stop
|
||||
CHECK_RESULT $? 0 0 "停止yarn守护进程失败"
|
||||
LOG_INFO "清理环境"
|
||||
if [ "$INSTALLED" = "false" ]; then
|
||||
LOG_INFO "卸载hadoop-yarn"
|
||||
dnf remove -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "卸载hadoop-yarn失败"
|
||||
fi
|
||||
LOG_INFO "测试完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,98 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试查看yarn守护进程状态
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 定义变量
|
||||
PACKAGE_NAME="hadoop-yarn"
|
||||
SERVICE_NAME="yarn"
|
||||
TEST_COMMAND="yarn-daemon.sh"
|
||||
|
||||
# 步骤1: 检查yum源中是否存在hadoop-yarn软件包
|
||||
LOG_INFO "检查yum源中是否存在${PACKAGE_NAME}软件包"
|
||||
dnf list available ${PACKAGE_NAME} &>/dev/null
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中不存在${PACKAGE_NAME}软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 步骤2: 检查是否已安装hadoop-yarn
|
||||
LOG_INFO "检查是否已安装${PACKAGE_NAME}"
|
||||
rpm -q ${PACKAGE_NAME} &>/dev/null
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "${PACKAGE_NAME}已安装"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "${PACKAGE_NAME}未安装"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 步骤3: 如果未安装,则安装软件包
|
||||
if [ "${INSTALLED}" = "false" ]; then
|
||||
LOG_INFO "安装${PACKAGE_NAME}软件包"
|
||||
dnf install -y ${PACKAGE_NAME}
|
||||
CHECK_RESULT $? 0 0 "安装${PACKAGE_NAME}失败"
|
||||
fi
|
||||
|
||||
# 步骤4: 检查yarn-daemon.sh命令是否存在
|
||||
LOG_INFO "检查${TEST_COMMAND}命令是否存在"
|
||||
which ${TEST_COMMAND} &>/dev/null
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "${TEST_COMMAND}命令不存在"
|
||||
# 如果是新安装的,需要卸载
|
||||
if [ "${INSTALLED}" = "false" ]; then
|
||||
LOG_INFO "卸载${PACKAGE_NAME}软件包"
|
||||
dnf remove -y ${PACKAGE_NAME}
|
||||
fi
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 步骤5: 测试查看yarn守护进程状态命令的参数支持
|
||||
LOG_INFO "测试${TEST_COMMAND}命令的参数支持"
|
||||
${TEST_COMMAND} --help 2>&1 | grep -q "status"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "${TEST_COMMAND}命令不支持status参数"
|
||||
# 如果是新安装的,需要卸载
|
||||
if [ "${INSTALLED}" = "false" ]; then
|
||||
LOG_INFO "卸载${PACKAGE_NAME}软件包"
|
||||
dnf remove -y ${PACKAGE_NAME}
|
||||
fi
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 步骤6: 测试查看yarn守护进程状态
|
||||
LOG_INFO "测试查看yarn守护进程状态"
|
||||
${TEST_COMMAND} status resourcemanager 2>&1
|
||||
CHECK_RESULT $? 0 1 "查看yarn守护进程状态失败"
|
||||
|
||||
# 步骤7: 环境恢复
|
||||
LOG_INFO "环境恢复"
|
||||
if [ "${INSTALLED}" = "false" ]; then
|
||||
LOG_INFO "卸载${PACKAGE_NAME}软件包"
|
||||
dnf remove -y ${PACKAGE_NAME}
|
||||
CHECK_RESULT $? 0 0 "卸载${PACKAGE_NAME}失败"
|
||||
else
|
||||
LOG_INFO "保持${PACKAGE_NAME}安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,155 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试停止yarn守护进程
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 定义颜色输出函数(如果LOG_INFO/LOG_ERROR未定义)
|
||||
if ! command -v LOG_INFO &> /dev/null; then
|
||||
LOG_INFO() {
|
||||
echo -e "\033[32m[INFO]\033[0m $*"
|
||||
}
|
||||
fi
|
||||
|
||||
if ! command -v LOG_ERROR &> /dev/null; then
|
||||
LOG_ERROR() {
|
||||
echo -e "\033[31m[ERROR]\033[0m $*" >&2
|
||||
}
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有指定软件包
|
||||
check_package_in_repo() {
|
||||
local pkg=$1
|
||||
LOG_INFO "检查yum源中是否存在软件包: $pkg"
|
||||
if ! dnf list available "$pkg" &> /dev/null; then
|
||||
LOG_ERROR "yum源中不存在软件包: $pkg"
|
||||
exit 255
|
||||
fi
|
||||
LOG_INFO "软件包 $pkg 存在于yum源中"
|
||||
}
|
||||
|
||||
# 检查命令参数是否支持
|
||||
check_command_param() {
|
||||
local cmd=$1
|
||||
local param=$2
|
||||
LOG_INFO "检查命令 $cmd 是否支持参数: $param"
|
||||
if ! $cmd --help 2>&1 | grep -q "\<$param\>"; then
|
||||
LOG_ERROR "命令 $cmd 不支持参数: $param"
|
||||
exit 255
|
||||
fi
|
||||
LOG_INFO "命令 $cmd 支持参数: $param"
|
||||
}
|
||||
|
||||
# 检查环境是否已安装hadoop-yarn
|
||||
check_hadoop_yarn_installed() {
|
||||
LOG_INFO "检查hadoop-yarn是否已安装"
|
||||
if rpm -q hadoop-yarn &> /dev/null; then
|
||||
LOG_INFO "hadoop-yarn已安装"
|
||||
return 0
|
||||
else
|
||||
LOG_INFO "hadoop-yarn未安装"
|
||||
return 1
|
||||
fi
|
||||
}
|
||||
|
||||
# 安装hadoop-yarn
|
||||
install_hadoop_yarn() {
|
||||
LOG_INFO "开始安装hadoop-yarn"
|
||||
check_package_in_repo "hadoop-yarn"
|
||||
dnf install -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "安装hadoop-yarn失败"
|
||||
LOG_INFO "hadoop-yarn安装成功"
|
||||
}
|
||||
|
||||
# 卸载hadoop-yarn
|
||||
uninstall_hadoop_yarn() {
|
||||
LOG_INFO "开始卸载hadoop-yarn"
|
||||
dnf remove -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "卸载hadoop-yarn失败"
|
||||
LOG_INFO "hadoop-yarn卸载成功"
|
||||
}
|
||||
|
||||
# 测试停止yarn守护进程
|
||||
test_yarn_daemon_stop() {
|
||||
LOG_INFO "测试停止yarn守护进程"
|
||||
|
||||
# 检查yarn命令是否存在
|
||||
if ! command -v yarn &> /dev/null; then
|
||||
LOG_ERROR "yarn命令不存在"
|
||||
return 1
|
||||
fi
|
||||
|
||||
# 检查--daemon参数是否支持
|
||||
check_command_param "yarn" "--daemon"
|
||||
|
||||
# 尝试停止yarn守护进程
|
||||
LOG_INFO "执行命令: yarn --daemon stop"
|
||||
yarn --daemon stop
|
||||
local yarn_exit_code=$?
|
||||
|
||||
# 检查命令执行结果
|
||||
if [ $yarn_exit_code -eq 0 ]; then
|
||||
LOG_INFO "yarn守护进程停止成功"
|
||||
return 0
|
||||
elif [ $yarn_exit_code -eq 255 ]; then
|
||||
LOG_ERROR "命令参数错误"
|
||||
exit 255
|
||||
else
|
||||
LOG_ERROR "yarn守护进程停止失败,退出码: $yarn_exit_code"
|
||||
return $yarn_exit_code
|
||||
fi
|
||||
}
|
||||
|
||||
# 主函数
|
||||
main() {
|
||||
LOG_INFO "开始测试: 测试停止yarn守护进程"
|
||||
|
||||
# 记录初始安装状态
|
||||
local originally_installed=false
|
||||
if check_hadoop_yarn_installed; then
|
||||
originally_installed=true
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装
|
||||
if ! $originally_installed; then
|
||||
install_hadoop_yarn
|
||||
fi
|
||||
|
||||
# 执行测试
|
||||
test_yarn_daemon_stop
|
||||
local test_result=$?
|
||||
|
||||
# 环境恢复
|
||||
LOG_INFO "开始环境恢复"
|
||||
if ! $originally_installed; then
|
||||
uninstall_hadoop_yarn
|
||||
else
|
||||
LOG_INFO "保持hadoop-yarn安装状态"
|
||||
fi
|
||||
|
||||
# 检查最终结果
|
||||
CHECK_RESULT $test_result 0 0 "测试停止yarn守护进程失败"
|
||||
LOG_INFO "测试停止yarn守护进程成功"
|
||||
}
|
||||
|
||||
# 执行主函数
|
||||
main
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,78 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试开启shell脚本调试模式
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
set -x
|
||||
LOG_INFO "开始测试:测试开启shell脚本调试模式"
|
||||
|
||||
LOG_INFO "步骤1:检查yum源中是否存在hadoop-yarn-debug软件包"
|
||||
dnf list available hadoop-yarn-debug 2>/dev/null | grep -q hadoop-yarn-debug
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中不存在hadoop-yarn-debug软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤2:检查当前环境是否已安装hadoop-yarn-debug"
|
||||
rpm -q hadoop-yarn-debug >/dev/null 2>&1
|
||||
is_installed=$?
|
||||
|
||||
if [ $is_installed -eq 0 ]; then
|
||||
LOG_INFO "环境已安装hadoop-yarn-debug,测试期间保持安装状态"
|
||||
need_uninstall=false
|
||||
else
|
||||
LOG_INFO "环境未安装hadoop-yarn-debug,将进行安装"
|
||||
need_uninstall=true
|
||||
fi
|
||||
|
||||
if [ "$need_uninstall" = true ]; then
|
||||
LOG_INFO "步骤3:安装hadoop-yarn-debug软件包"
|
||||
dnf install -y hadoop-yarn-debug
|
||||
CHECK_RESULT $? 0 0 "安装hadoop-yarn-debug失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤4:测试yarn debug命令的基本参数"
|
||||
yarn debug -help >/dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "yarn debug命令不支持-help参数"
|
||||
|
||||
LOG_INFO "步骤5:测试不支持的参数"
|
||||
yarn debug --nonexistent-param 2>/dev/null
|
||||
if [ $? -ne 255 ]; then
|
||||
LOG_ERROR "yarn debug命令未正确处理不存在的参数"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤6:执行实际调试命令测试"
|
||||
yarn debug -list 2>&1 | grep -q "ApplicationId"
|
||||
CHECK_RESULT $? 0 0 "yarn debug -list命令执行失败"
|
||||
|
||||
LOG_INFO "步骤7:清理测试环境"
|
||||
if [ "$need_uninstall" = true ]; then
|
||||
LOG_INFO "卸载测试期间安装的hadoop-yarn-debug软件包"
|
||||
dnf remove -y hadoop-yarn-debug
|
||||
CHECK_RESULT $? 0 0 "卸载hadoop-yarn-debug失败"
|
||||
else
|
||||
LOG_INFO "测试前已安装hadoop-yarn-debug,保持安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成:shell脚本调试模式测试通过"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,87 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试yarn命令的帮助信息
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 判断是否已安装hadoop-yarn软件包
|
||||
LOG_INFO "检查hadoop-yarn是否已安装"
|
||||
rpm -q hadoop-yarn > /dev/null 2>&1
|
||||
installed=$?
|
||||
|
||||
# 记录初始安装状态
|
||||
if [ $installed -eq 0 ]; then
|
||||
LOG_INFO "hadoop-yarn已安装,脚本结束时将保持安装状态"
|
||||
else
|
||||
LOG_INFO "hadoop-yarn未安装,将在测试后卸载"
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有hadoop-yarn软件包
|
||||
LOG_INFO "检查yum源中是否有hadoop-yarn软件包"
|
||||
dnf list available hadoop-yarn > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "yum源中没有hadoop-yarn软件包"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中没有hadoop-yarn软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装软件包
|
||||
if [ $installed -ne 0 ]; then
|
||||
LOG_INFO "安装hadoop-yarn软件包"
|
||||
dnf install -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "安装hadoop-yarn失败"
|
||||
fi
|
||||
|
||||
# 检查yarn命令是否存在
|
||||
LOG_INFO "检查yarn命令是否存在"
|
||||
which yarn > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "yarn命令不存在"
|
||||
|
||||
# 测试yarn命令的帮助参数
|
||||
LOG_INFO "测试yarn命令的help参数"
|
||||
yarn --help > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "yarn --help命令执行失败"
|
||||
|
||||
# 测试yarn命令的-h参数
|
||||
LOG_INFO "测试yarn命令的-h参数"
|
||||
yarn -h > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "yarn -h命令执行失败"
|
||||
|
||||
# 测试yarn命令的无效参数
|
||||
LOG_INFO "测试yarn命令的无效参数"
|
||||
yarn --invalid-param > /dev/null 2>&1
|
||||
if [ $? -eq 255 ]; then
|
||||
LOG_ERROR "yarn命令不支持--invalid-param参数"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 清理环境:如果最初未安装,则卸载软件包
|
||||
if [ $installed -ne 0 ]; then
|
||||
LOG_INFO "卸载hadoop-yarn软件包"
|
||||
dnf remove -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "卸载hadoop-yarn失败"
|
||||
LOG_INFO "环境已恢复到初始状态"
|
||||
else
|
||||
LOG_INFO "保持hadoop-yarn安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试yarn命令的帮助信息完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,75 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试指定工作节点模式下的主机列表
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试指定工作节点模式下的主机列表功能"
|
||||
|
||||
LOG_INFO "1. 检查hadoop-yarn软件包是否在yum源中"
|
||||
dnf list hadoop-yarn 2>&1 | grep -q "可用软件包"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到hadoop-yarn软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "2. 检查是否已安装hadoop-yarn"
|
||||
rpm -q hadoop-yarn > /dev/null 2>&1
|
||||
installed=$?
|
||||
|
||||
if [ $installed -ne 0 ]; then
|
||||
LOG_INFO "未检测到hadoop-yarn安装,开始安装"
|
||||
dnf install -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "安装hadoop-yarn失败"
|
||||
else
|
||||
LOG_INFO "检测到hadoop-yarn已安装"
|
||||
fi
|
||||
|
||||
LOG_INFO "3. 检查yarn命令的hostnames参数支持"
|
||||
yarn --help 2>&1 | grep -q "hostnames"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yarn命令不支持hostnames参数"
|
||||
if [ $installed -ne 0 ]; then
|
||||
LOG_INFO "清理安装的软件包"
|
||||
dnf remove -y hadoop-yarn
|
||||
fi
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "4. 执行yarn hostnames --list命令测试"
|
||||
yarn hostnames --list
|
||||
CHECK_RESULT $? 0 0 "执行yarn hostnames --list命令失败"
|
||||
|
||||
LOG_INFO "5. 测试指定工作节点模式"
|
||||
yarn hostnames --list --workers
|
||||
CHECK_RESULT $? 0 0 "执行yarn hostnames --list --workers命令失败"
|
||||
|
||||
LOG_INFO "6. 环境恢复"
|
||||
if [ $installed -ne 0 ]; then
|
||||
LOG_INFO "卸载测试安装的hadoop-yarn软件包"
|
||||
dnf remove -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "卸载hadoop-yarn失败"
|
||||
else
|
||||
LOG_INFO "保持原有安装状态,不卸载软件包"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,90 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试指定包含工作节点主机列表的文件
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试:测试指定包含工作节点主机列表的文件"
|
||||
LOG_INFO "步骤1:检查是否已安装hadoop-yarn软件包"
|
||||
rpm -q hadoop-yarn > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "hadoop-yarn已安装,标记为已安装状态"
|
||||
INSTALLED="true"
|
||||
else
|
||||
LOG_INFO "hadoop-yarn未安装,标记为未安装状态"
|
||||
INSTALLED="false"
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤2:检查yum源中是否有hadoop-yarn软件包"
|
||||
dnf list available hadoop-yarn > /dev/null 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中没有hadoop-yarn软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤3:如果未安装则安装hadoop-yarn"
|
||||
if [ "$INSTALLED" = "false" ]; then
|
||||
dnf install -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "安装hadoop-yarn失败"
|
||||
LOG_INFO "hadoop-yarn安装成功"
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤4:检查yarn命令的hosts参数是否支持"
|
||||
yarn --help 2>&1 | grep -q "\-\-hosts"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yarn命令不支持hosts参数"
|
||||
if [ "$INSTALLED" = "false" ]; then
|
||||
LOG_INFO "清理环境:卸载hadoop-yarn"
|
||||
dnf remove -y hadoop-yarn
|
||||
fi
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤5:创建测试用的主机列表文件"
|
||||
echo "node1.example.com" > /tmp/test_hosts.txt
|
||||
echo "node2.example.com" >> /tmp/test_hosts.txt
|
||||
CHECK_RESULT $? 0 0 "创建主机列表文件失败"
|
||||
|
||||
LOG_INFO "步骤6:执行yarn命令指定hosts文件测试"
|
||||
yarn --hosts /tmp/test_hosts.txt node -list > /tmp/yarn_output.txt 2>&1
|
||||
CHECK_RESULT $? 0 0 "执行yarn命令失败"
|
||||
LOG_INFO "yarn命令执行成功"
|
||||
|
||||
LOG_INFO "步骤7:检查命令输出是否符合预期"
|
||||
grep -q "Total Nodes" /tmp/yarn_output.txt
|
||||
CHECK_RESULT $? 0 0 "yarn命令输出不符合预期"
|
||||
|
||||
LOG_INFO "步骤8:清理临时文件"
|
||||
rm -f /tmp/test_hosts.txt /tmp/yarn_output.txt
|
||||
CHECK_RESULT $? 0 0 "清理临时文件失败"
|
||||
|
||||
LOG_INFO "步骤9:根据初始状态恢复环境"
|
||||
if [ "$INSTALLED" = "false" ]; then
|
||||
LOG_INFO "卸载hadoop-yarn软件包"
|
||||
dnf remove -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "卸载hadoop-yarn失败"
|
||||
LOG_INFO "环境已恢复至未安装状态"
|
||||
else
|
||||
LOG_INFO "保持hadoop-yarn已安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,97 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试设置命令的日志级别
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 定义日志打印函数(实际环境中可能已定义,这里为防止未定义而提供)
|
||||
LOG_INFO() {
|
||||
echo "[INFO] $*"
|
||||
}
|
||||
LOG_ERROR() {
|
||||
echo "[ERROR] $*"
|
||||
}
|
||||
|
||||
# 测试脚本:测试设置命令的日志级别
|
||||
LOG_INFO "开始测试:测试设置命令的日志级别"
|
||||
|
||||
# 步骤1:检查yarn命令是否已安装
|
||||
LOG_INFO "步骤1:检查yarn命令是否已安装"
|
||||
if command -v yarn > /dev/null 2>&1; then
|
||||
LOG_INFO "yarn命令已安装,无需重新安装"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "yarn命令未安装,将在后续步骤安装"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 步骤2:检查yum源中是否有hadoop-yarn软件包
|
||||
LOG_INFO "步骤2:检查yum源中是否有hadoop-yarn软件包"
|
||||
if ! dnf list available hadoop-yarn 2>/dev/null | grep -q hadoop-yarn; then
|
||||
LOG_ERROR "yum源中未找到hadoop-yarn软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 步骤3:如果未安装,则安装hadoop-yarn软件包
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "步骤3:安装hadoop-yarn软件包"
|
||||
dnf install -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "安装hadoop-yarn软件包失败"
|
||||
fi
|
||||
|
||||
# 步骤4:测试设置日志级别命令的参数是否存在
|
||||
LOG_INFO "步骤4:测试设置日志级别命令的参数是否存在"
|
||||
if ! yarn --help 2>&1 | grep -q "\-\-loglevel"; then
|
||||
LOG_ERROR "yarn命令不支持--loglevel参数"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 步骤5:测试设置日志级别为info
|
||||
LOG_INFO "步骤5:测试设置日志级别为info"
|
||||
yarn --loglevel info
|
||||
CHECK_RESULT $? 0 0 "设置日志级别为info失败"
|
||||
|
||||
# 步骤6:测试设置日志级别为debug
|
||||
LOG_INFO "步骤6:测试设置日志级别为debug"
|
||||
yarn --loglevel debug
|
||||
CHECK_RESULT $? 0 0 "设置日志级别为debug失败"
|
||||
|
||||
# 步骤7:测试设置日志级别为error
|
||||
LOG_INFO "步骤7:测试设置日志级别为error"
|
||||
yarn --loglevel error
|
||||
CHECK_RESULT $? 0 0 "设置日志级别为error失败"
|
||||
|
||||
# 步骤8:测试设置日志级别为warn
|
||||
LOG_INFO "步骤8:测试设置日志级别为warn"
|
||||
yarn --loglevel warn
|
||||
CHECK_RESULT $? 0 0 "设置日志级别为warn失败"
|
||||
|
||||
# 步骤9:清理环境,如果之前未安装则卸载软件包
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "步骤9:清理环境,卸载hadoop-yarn软件包"
|
||||
dnf remove -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "卸载hadoop-yarn软件包失败"
|
||||
else
|
||||
LOG_INFO "步骤9:保持hadoop-yarn软件包安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成:测试设置命令的日志级别"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,97 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试开启工作节点模式
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 测试开启工作节点模式
|
||||
LOG_INFO "开始测试开启工作节点模式"
|
||||
|
||||
# 定义软件包名称
|
||||
PACKAGE_NAME="hadoop-yarn"
|
||||
|
||||
# 步骤1: 检查环境是否已安装
|
||||
LOG_INFO "步骤1: 检查环境是否已安装"
|
||||
if rpm -q $PACKAGE_NAME &>/dev/null; then
|
||||
LOG_INFO "$PACKAGE_NAME 已经安装,测试结束后将保持安装状态"
|
||||
ALREADY_INSTALLED=1
|
||||
else
|
||||
LOG_INFO "$PACKAGE_NAME 未安装,将在测试过程中安装"
|
||||
ALREADY_INSTALLED=0
|
||||
fi
|
||||
|
||||
# 步骤2: 检查yum源中是否有该软件包
|
||||
LOG_INFO "步骤2: 检查yum源中是否有该软件包"
|
||||
if ! dnf list available $PACKAGE_NAME &>/dev/null; then
|
||||
LOG_ERROR "yum源中没有找到 $PACKAGE_NAME 软件包"
|
||||
exit 255
|
||||
fi
|
||||
LOG_INFO "yum源中存在 $PACKAGE_NAME 软件包"
|
||||
|
||||
# 步骤3: 如果未安装则安装软件包
|
||||
if [ $ALREADY_INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "步骤3: 安装 $PACKAGE_NAME 软件包"
|
||||
dnf install -y $PACKAGE_NAME
|
||||
CHECK_RESULT $? 0 0 "安装 $PACKAGE_NAME 失败"
|
||||
LOG_INFO "$PACKAGE_NAME 安装成功"
|
||||
fi
|
||||
|
||||
# 步骤4: 检查yarn命令是否存在
|
||||
LOG_INFO "步骤4: 检查yarn命令是否存在"
|
||||
if ! command -v yarn &>/dev/null; then
|
||||
LOG_ERROR "yarn命令不存在"
|
||||
if [ $ALREADY_INSTALLED -eq 0 ]; then
|
||||
dnf remove -y $PACKAGE_NAME
|
||||
fi
|
||||
exit 255
|
||||
fi
|
||||
LOG_INFO "yarn命令存在"
|
||||
|
||||
# 步骤5: 检查yarn workers命令是否支持
|
||||
LOG_INFO "步骤5: 检查yarn workers命令是否支持"
|
||||
if ! yarn --help 2>&1 | grep -q "workers"; then
|
||||
LOG_ERROR "yarn命令不支持workers参数"
|
||||
if [ $ALREADY_INSTALLED -eq 0 ]; then
|
||||
dnf remove -y $PACKAGE_NAME
|
||||
fi
|
||||
exit 255
|
||||
fi
|
||||
LOG_INFO "yarn命令支持workers参数"
|
||||
|
||||
# 步骤6: 执行yarn workers命令
|
||||
LOG_INFO "步骤6: 执行yarn workers命令"
|
||||
yarn workers
|
||||
CHECK_RESULT $? 0 0 "执行yarn workers命令失败"
|
||||
LOG_INFO "yarn workers命令执行成功"
|
||||
|
||||
# 步骤7: 环境恢复
|
||||
LOG_INFO "步骤7: 环境恢复"
|
||||
if [ $ALREADY_INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "卸载测试期间安装的软件包"
|
||||
dnf remove -y $PACKAGE_NAME
|
||||
CHECK_RESULT $? 0 0 "卸载 $PACKAGE_NAME 失败"
|
||||
LOG_INFO "$PACKAGE_NAME 卸载成功"
|
||||
else
|
||||
LOG_INFO "保持原有安装状态,不卸载软件包"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试开启工作节点模式完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,70 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试查看应用程序报告
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
set -e
|
||||
|
||||
LOG_INFO "开始测试查看应用程序报告功能"
|
||||
|
||||
LOG_INFO "步骤1:检查Hadoop YARN相关软件包是否已在yum源中"
|
||||
if ! dnf list available hadoop-yarn 2>/dev/null | grep -q hadoop-yarn; then
|
||||
LOG_ERROR "yum源中未找到hadoop-yarn软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤2:检查系统是否已安装Hadoop YARN"
|
||||
if rpm -q hadoop-yarn &>/dev/null; then
|
||||
LOG_INFO "Hadoop YARN已安装,测试结束后将保持安装状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "Hadoop YARN未安装,将在测试过程中安装并在结束后卸载"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
if [ "$INSTALLED" = "false" ]; then
|
||||
LOG_INFO "步骤3:安装Hadoop YARN软件包"
|
||||
dnf install -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "安装Hadoop YARN失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤4:检查yarn命令是否支持application命令"
|
||||
if ! yarn --help 2>&1 | grep -q "application"; then
|
||||
LOG_ERROR "yarn命令不支持application参数"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤5:尝试查看应用程序报告"
|
||||
yarn application -list
|
||||
CHECK_RESULT $? 0 0 "查看应用程序报告失败"
|
||||
|
||||
LOG_INFO "步骤6:环境清理"
|
||||
if [ "$INSTALLED" = "false" ]; then
|
||||
LOG_INFO "卸载Hadoop YARN软件包"
|
||||
dnf remove -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "卸载Hadoop YARN失败"
|
||||
else
|
||||
LOG_INFO "保持Hadoop YARN安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,99 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试查看应用程序报告(长格式)
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试:查看应用程序报告(长格式)"
|
||||
|
||||
# 检查环境是否已安装Hadoop YARN
|
||||
LOG_INFO "检查Hadoop YARN是否已安装"
|
||||
if dnf list installed hadoop-yarn &>/dev/null; then
|
||||
LOG_INFO "Hadoop YARN已安装,测试后保持安装状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "Hadoop YARN未安装,将在测试过程中安装"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有hadoop-yarn软件包
|
||||
LOG_INFO "检查yum源中是否有hadoop-yarn软件包"
|
||||
if ! dnf list available hadoop-yarn &>/dev/null; then
|
||||
LOG_ERROR "yum源中未找到hadoop-yarn软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装hadoop-yarn
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "安装hadoop-yarn软件包"
|
||||
dnf install -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "安装hadoop-yarn失败"
|
||||
fi
|
||||
|
||||
# 检查yarn命令是否支持application -status参数
|
||||
LOG_INFO "检查yarn命令是否支持application -status参数"
|
||||
if ! yarn application -help 2>&1 | grep -q "\-status"; then
|
||||
LOG_ERROR "yarn命令不支持-application -status参数"
|
||||
# 如果之前未安装,需要卸载已安装的软件包
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "卸载hadoop-yarn软件包"
|
||||
dnf remove -y hadoop-yarn
|
||||
fi
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 模拟一个YARN应用程序ID用于测试
|
||||
TEST_APP_ID="application_1234567890_0001"
|
||||
LOG_INFO "使用测试应用程序ID: $TEST_APP_ID 查看应用程序报告(长格式)"
|
||||
|
||||
# 尝试查看应用程序报告(长格式)
|
||||
LOG_INFO "执行yarn application -status $TEST_APP_ID命令"
|
||||
yarn application -status "$TEST_APP_ID"
|
||||
CMD_EXIT_CODE=$?
|
||||
|
||||
# 检查命令执行结果
|
||||
# 由于是测试环境,可能没有真实的应用程序,我们主要检查命令是否能正常执行
|
||||
# 如果返回码是0或非255,我们认为命令执行成功(参数支持)
|
||||
if [ $CMD_EXIT_CODE -eq 255 ]; then
|
||||
LOG_ERROR "yarn application -status命令执行失败,参数可能不存在或不支持"
|
||||
# 如果之前未安装,需要卸载已安装的软件包
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "卸载hadoop-yarn软件包"
|
||||
dnf remove -y hadoop-yarn
|
||||
fi
|
||||
exit 255
|
||||
elif [ $CMD_EXIT_CODE -ne 0 ]; then
|
||||
LOG_INFO "yarn application -status命令执行返回非零退出码: $CMD_EXIT_CODE"
|
||||
LOG_INFO "这可能是由于测试环境中没有真实的应用程序ID,但命令参数支持性测试通过"
|
||||
# 继续执行,不退出
|
||||
fi
|
||||
|
||||
# 如果之前未安装,测试完成后卸载软件包
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "测试完成,卸载hadoop-yarn软件包"
|
||||
dnf remove -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "卸载hadoop-yarn失败"
|
||||
else
|
||||
LOG_INFO "测试完成,保持Hadoop YARN安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试查看应用程序报告(长格式)完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,87 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试查看应用程序尝试报告
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 环境检查:检查hadoop-yarn是否已安装
|
||||
LOG_INFO "检查hadoop-yarn是否已安装"
|
||||
rpm -q hadoop-yarn &>/dev/null
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "hadoop-yarn已安装,脚本结束后将保持安装状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "hadoop-yarn未安装,将在测试步骤中安装"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有hadoop-yarn软件包
|
||||
LOG_INFO "检查yum源中是否有hadoop-yarn软件包"
|
||||
dnf list available hadoop-yarn &>/dev/null
|
||||
CHECK_RESULT $? 0 0 "yum源中没有hadoop-yarn软件包"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中没有hadoop-yarn软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装hadoop-yarn
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "安装hadoop-yarn软件包"
|
||||
dnf install -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "安装hadoop-yarn失败"
|
||||
fi
|
||||
|
||||
# 测试查看应用程序尝试报告
|
||||
LOG_INFO "测试查看应用程序尝试报告"
|
||||
# 检查yarn命令是否存在
|
||||
command -v yarn &>/dev/null
|
||||
CHECK_RESULT $? 0 0 "yarn命令不存在"
|
||||
|
||||
# 检查yarn命令是否支持applicationattempt参数
|
||||
LOG_INFO "检查yarn命令是否支持applicationattempt参数"
|
||||
yarn applicationattempt --help 2>&1 | grep -q "applicationattempt"
|
||||
CHECK_RESULT $? 0 0 "yarn命令不支持applicationattempt参数"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yarn命令不支持applicationattempt参数"
|
||||
# 如果之前未安装,需要卸载已安装的软件包
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "清理环境:卸载hadoop-yarn软件包"
|
||||
dnf remove -y hadoop-yarn
|
||||
fi
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 执行查看应用程序尝试报告命令
|
||||
LOG_INFO "执行yarn applicationattempt -list命令"
|
||||
yarn applicationattempt -list 2>&1
|
||||
CHECK_RESULT $? 0 0 "查看应用程序尝试报告失败"
|
||||
|
||||
# 环境清理
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "清理环境:卸载hadoop-yarn软件包"
|
||||
dnf remove -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "卸载hadoop-yarn失败"
|
||||
else
|
||||
LOG_INFO "hadoop-yarn已安装,保持安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,89 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试打印运行hadoop jar所需的类路径
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 定义变量
|
||||
PACKAGE_NAME="hadoop-yarn"
|
||||
TEST_CMD="yarn"
|
||||
TEST_ARG="classpath"
|
||||
|
||||
# 步骤1: 检查yum源中是否存在指定软件包
|
||||
LOG_INFO "步骤1: 检查yum源中是否存在${PACKAGE_NAME}软件包"
|
||||
dnf list available ${PACKAGE_NAME} &> /dev/null
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到${PACKAGE_NAME}软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 步骤2: 检查系统是否已安装指定软件包
|
||||
LOG_INFO "步骤2: 检查系统是否已安装${PACKAGE_NAME}软件包"
|
||||
rpm -q ${PACKAGE_NAME} &> /dev/null
|
||||
if [ $? -eq 0 ]; then
|
||||
INSTALLED="true"
|
||||
LOG_INFO "系统已安装${PACKAGE_NAME}软件包"
|
||||
else
|
||||
INSTALLED="false"
|
||||
LOG_INFO "系统未安装${PACKAGE_NAME}软件包,将进行安装"
|
||||
fi
|
||||
|
||||
# 步骤3: 如果未安装,则安装软件包
|
||||
if [ "${INSTALLED}" = "false" ]; then
|
||||
LOG_INFO "步骤3: 安装${PACKAGE_NAME}软件包"
|
||||
dnf install -y ${PACKAGE_NAME} &> /dev/null
|
||||
CHECK_RESULT $? 0 0 "安装${PACKAGE_NAME}软件包失败"
|
||||
fi
|
||||
|
||||
# 步骤4: 检查yarn命令是否支持classpath参数
|
||||
LOG_INFO "步骤4: 检查${TEST_CMD}命令是否支持${TEST_ARG}参数"
|
||||
${TEST_CMD} --help 2>&1 | grep -q "\-\-${TEST_ARG}"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "${TEST_CMD}命令不支持${TEST_ARG}参数"
|
||||
# 如果之前未安装,需要卸载已安装的软件包
|
||||
if [ "${INSTALLED}" = "false" ]; then
|
||||
dnf remove -y ${PACKAGE_NAME} &> /dev/null
|
||||
fi
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 步骤5: 执行yarn classpath命令
|
||||
LOG_INFO "步骤5: 执行${TEST_CMD} ${TEST_ARG}命令"
|
||||
${TEST_CMD} ${TEST_ARG} &> /dev/null
|
||||
CHECK_RESULT $? 0 0 "执行${TEST_CMD} ${TEST_ARG}命令失败"
|
||||
|
||||
# 步骤6: 验证输出结果包含类路径信息
|
||||
LOG_INFO "步骤6: 验证${TEST_CMD} ${TEST_ARG}输出包含类路径信息"
|
||||
${TEST_CMD} ${TEST_ARG} | grep -q ".*\.jar.*"
|
||||
CHECK_RESULT $? 0 0 "${TEST_CMD} ${TEST_ARG}输出未包含类路径信息"
|
||||
|
||||
# 步骤7: 环境清理
|
||||
LOG_INFO "步骤7: 环境清理"
|
||||
if [ "${INSTALLED}" = "false" ]; then
|
||||
LOG_INFO "卸载${PACKAGE_NAME}软件包"
|
||||
dnf remove -y ${PACKAGE_NAME} &> /dev/null
|
||||
CHECK_RESULT $? 0 0 "卸载${PACKAGE_NAME}软件包失败"
|
||||
else
|
||||
LOG_INFO "系统原本已安装${PACKAGE_NAME}软件包,保持安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,104 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试打印集群信息
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 定义日志函数
|
||||
LOG_INFO() {
|
||||
echo "[INFO] $*"
|
||||
}
|
||||
|
||||
LOG_ERROR() {
|
||||
echo "[ERROR] $*"
|
||||
}
|
||||
|
||||
# 定义检查函数
|
||||
CHECK_RESULT() {
|
||||
local actual=$1
|
||||
local expect=$2
|
||||
shift 2
|
||||
if [ "$actual" -ne "$expect" ]; then
|
||||
LOG_ERROR "$*"
|
||||
exit 255
|
||||
fi
|
||||
}
|
||||
|
||||
# 定义SSH命令函数
|
||||
SSH_CMD() {
|
||||
local cmd=$1
|
||||
local node_ip=$2
|
||||
local node_password=$3
|
||||
local node_user=$4
|
||||
sshpass -p "$node_password" ssh -o StrictHostKeyChecking=no "$node_user"@"$node_ip" "$cmd"
|
||||
}
|
||||
|
||||
# 定义软件包名称
|
||||
PACKAGE_NAME="hadoop-yarn"
|
||||
|
||||
# 步骤1:检查yum源中是否有指定软件包
|
||||
LOG_INFO "步骤1:检查yum源中是否有 $PACKAGE_NAME 软件包"
|
||||
dnf list available "$PACKAGE_NAME" &> /dev/null
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到 $PACKAGE_NAME 软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 步骤2:检查环境是否已安装
|
||||
LOG_INFO "步骤2:检查环境是否已安装 $PACKAGE_NAME"
|
||||
rpm -q "$PACKAGE_NAME" &> /dev/null
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "环境已安装 $PACKAGE_NAME,测试后保持安装状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "环境未安装 $PACKAGE_NAME,将安装并测试后卸载"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
# 步骤3:如果未安装,则安装软件包
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "步骤3:安装 $PACKAGE_NAME 软件包"
|
||||
dnf install -y "$PACKAGE_NAME"
|
||||
CHECK_RESULT $? 0 0 "安装 $PACKAGE_NAME 失败"
|
||||
fi
|
||||
|
||||
# 步骤4:测试打印集群信息
|
||||
LOG_INFO "步骤4:测试打印集群信息"
|
||||
yarn cluster --list &> /dev/null
|
||||
CHECK_RESULT $? 0 0 "yarn cluster 命令不支持或参数不存在"
|
||||
|
||||
# 步骤5:执行具体的集群信息打印命令
|
||||
LOG_INFO "步骤5:执行 yarn cluster -status 命令"
|
||||
yarn cluster -status
|
||||
CHECK_RESULT $? 0 0 "执行 yarn cluster -status 失败"
|
||||
|
||||
# 步骤6:清理环境,恢复到之前状态
|
||||
LOG_INFO "步骤6:清理环境,恢复到之前状态"
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "卸载 $PACKAGE_NAME 软件包"
|
||||
dnf remove -y "$PACKAGE_NAME"
|
||||
CHECK_RESULT $? 0 0 "卸载 $PACKAGE_NAME 失败"
|
||||
else
|
||||
LOG_INFO "环境已安装 $PACKAGE_NAME,保持安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试脚本执行完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,89 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试打印容器报告
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 测试脚本:测试打印容器报告
|
||||
LOG_INFO "开始测试:测试打印容器报告"
|
||||
|
||||
# 检查环境是否已安装Hadoop YARN相关软件包
|
||||
LOG_INFO "步骤1:检查Hadoop YARN相关软件包是否已安装"
|
||||
if dnf list installed hadoop-yarn &> /dev/null; then
|
||||
LOG_INFO "Hadoop YARN已安装,测试结束后将保持安装状态"
|
||||
ENV_INSTALLED=true
|
||||
else
|
||||
LOG_INFO "Hadoop YARN未安装,将在测试过程中安装并在结束后卸载"
|
||||
ENV_INSTALLED=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有hadoop-yarn软件包
|
||||
LOG_INFO "步骤2:检查yum源中是否有hadoop-yarn软件包"
|
||||
if ! dnf search hadoop-yarn &> /dev/null; then
|
||||
LOG_ERROR "yum源中未找到hadoop-yarn软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果环境未安装,则安装软件包
|
||||
if [ "$ENV_INSTALLED" = false ]; then
|
||||
LOG_INFO "步骤3:安装hadoop-yarn软件包"
|
||||
dnf install -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "安装hadoop-yarn失败"
|
||||
fi
|
||||
|
||||
# 检查yarn命令是否存在
|
||||
LOG_INFO "步骤4:检查yarn命令是否存在"
|
||||
if ! command -v yarn &> /dev/null; then
|
||||
LOG_ERROR "yarn命令不存在"
|
||||
if [ "$ENV_INSTALLED" = false ]; then
|
||||
LOG_INFO "清理环境:卸载hadoop-yarn软件包"
|
||||
dnf remove -y hadoop-yarn
|
||||
fi
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 检查yarn container命令是否支持
|
||||
LOG_INFO "步骤5:检查yarn container命令是否支持"
|
||||
if ! yarn container --help &> /dev/null; then
|
||||
LOG_ERROR "yarn container命令不支持或参数错误"
|
||||
if [ "$ENV_INSTALLED" = false ]; then
|
||||
LOG_INFO "清理环境:卸载hadoop-yarn软件包"
|
||||
dnf remove -y hadoop-yarn
|
||||
fi
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 测试打印容器报告
|
||||
LOG_INFO "步骤6:执行yarn container -status命令打印容器报告"
|
||||
yarn container -status
|
||||
CHECK_RESULT $? 0 0 "执行yarn container -status命令失败"
|
||||
|
||||
# 清理环境:如果测试前未安装,则卸载软件包
|
||||
if [ "$ENV_INSTALLED" = false ]; then
|
||||
LOG_INFO "步骤7:清理环境,卸载hadoop-yarn软件包"
|
||||
dnf remove -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "卸载hadoop-yarn软件包失败"
|
||||
else
|
||||
LOG_INFO "环境保持安装状态,无需清理"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成:测试打印容器报告"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,68 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试获取/设置每个守护进程的日志级别
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试:测试获取/设置每个守护进程的日志级别"
|
||||
LOG_INFO "步骤1:检查是否已安装hadoop-yarn软件包"
|
||||
if dnf list installed hadoop-yarn &>/dev/null; then
|
||||
LOG_INFO "hadoop-yarn已安装,跳过安装步骤"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "hadoop-yarn未安装,开始安装"
|
||||
LOG_INFO "检查yum源中是否存在hadoop-yarn软件包"
|
||||
if ! dnf list available hadoop-yarn &>/dev/null; then
|
||||
LOG_ERROR "yum源中未找到hadoop-yarn软件包"
|
||||
exit 255
|
||||
fi
|
||||
dnf install -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "安装hadoop-yarn失败"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤2:测试获取守护进程的日志级别"
|
||||
yarn daemonlog -getlevel
|
||||
CHECK_RESULT $? 0 0 "获取守护进程日志级别失败"
|
||||
|
||||
LOG_INFO "步骤3:测试设置守护进程的日志级别"
|
||||
yarn daemonlog -setlevel DEBUG
|
||||
CHECK_RESULT $? 0 0 "设置守护进程日志级别失败"
|
||||
|
||||
LOG_INFO "步骤4:验证设置是否生效"
|
||||
yarn daemonlog -getlevel | grep -q "DEBUG"
|
||||
CHECK_RESULT $? 0 0 "验证日志级别设置失败"
|
||||
|
||||
LOG_INFO "步骤5:恢复日志级别到默认值"
|
||||
yarn daemonlog -setlevel INFO
|
||||
CHECK_RESULT $? 0 0 "恢复日志级别失败"
|
||||
|
||||
LOG_INFO "步骤6:环境清理"
|
||||
if [ "$INSTALLED" = "false" ]; then
|
||||
LOG_INFO "卸载hadoop-yarn软件包"
|
||||
dnf remove -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "卸载hadoop-yarn失败"
|
||||
else
|
||||
LOG_INFO "保持hadoop-yarn安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,77 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试显示计算出的Hadoop环境变量
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 检查是否已安装hadoop-yarn软件包
|
||||
LOG_INFO "步骤1:检查hadoop-yarn软件包是否已安装"
|
||||
if rpm -q hadoop-yarn &>/dev/null; then
|
||||
LOG_INFO "hadoop-yarn软件包已安装,脚本结束时将保持安装状态"
|
||||
INSTALLED_BEFORE=true
|
||||
else
|
||||
LOG_INFO "hadoop-yarn软件包未安装,将在测试过程中安装"
|
||||
INSTALLED_BEFORE=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有hadoop-yarn软件包
|
||||
LOG_INFO "步骤2:检查yum源中是否有hadoop-yarn软件包"
|
||||
dnf list available hadoop-yarn &>/dev/null
|
||||
CHECK_RESULT $? 0 0 "yum源中没有hadoop-yarn软件包"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中没有hadoop-yarn软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装hadoop-yarn软件包
|
||||
if [ "$INSTALLED_BEFORE" = false ]; then
|
||||
LOG_INFO "步骤3:安装hadoop-yarn软件包"
|
||||
dnf install -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "安装hadoop-yarn软件包失败"
|
||||
fi
|
||||
|
||||
# 测试显示计算出的Hadoop环境变量
|
||||
LOG_INFO "步骤4:测试显示计算出的Hadoop环境变量"
|
||||
# 检查yarn命令是否支持envvars参数
|
||||
LOG_INFO "步骤4.1:检查yarn命令是否支持envvars参数"
|
||||
yarn --help 2>&1 | grep -q "envvars"
|
||||
CHECK_RESULT $? 0 0 "yarn命令不支持envvars参数"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yarn命令不支持envvars参数"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 执行yarn envvars命令
|
||||
LOG_INFO "步骤4.2:执行yarn envvars命令"
|
||||
yarn envvars
|
||||
CHECK_RESULT $? 0 0 "执行yarn envvars命令失败"
|
||||
|
||||
# 清理环境:如果之前未安装,则卸载hadoop-yarn软件包
|
||||
if [ "$INSTALLED_BEFORE" = false ]; then
|
||||
LOG_INFO "步骤5:清理环境,卸载hadoop-yarn软件包"
|
||||
dnf remove -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "卸载hadoop-yarn软件包失败"
|
||||
else
|
||||
LOG_INFO "步骤5:环境已安装hadoop-yarn软件包,保持安装状态,无需卸载"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成,环境已恢复到初始状态"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,102 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试将公平调度器配置转换为容量调度器配置(实验性)
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试:将公平调度器配置转换为容量调度器配置(实验性)"
|
||||
LOG_INFO "步骤1:检查是否已安装hadoop-yarn软件包"
|
||||
if dnf list installed hadoop-yarn &> /dev/null; then
|
||||
LOG_INFO "hadoop-yarn已安装,测试结束后将保持安装状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "hadoop-yarn未安装,将在测试中安装,并在结束前卸载"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤2:检查yum源中是否有hadoop-yarn软件包"
|
||||
if ! dnf list available hadoop-yarn &> /dev/null; then
|
||||
LOG_ERROR "yum源中未找到hadoop-yarn软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "步骤3:安装hadoop-yarn软件包"
|
||||
dnf install -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "安装hadoop-yarn失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤4:检查yarn fs2cs命令是否存在"
|
||||
if ! yarn fs2cs --help &> /dev/null; then
|
||||
LOG_ERROR "yarn fs2cs命令不存在或不支持"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤5:创建测试用的公平调度器配置文件"
|
||||
cat > /tmp/fair-scheduler.xml << "EOF"
|
||||
<?xml version="1.0"?>
|
||||
<allocations>
|
||||
<queue name="root">
|
||||
<queue name="queue1">
|
||||
<minResources>1024 mb,1 vcores</minResources>
|
||||
<maxResources>4096 mb,2 vcores</maxResources>
|
||||
</queue>
|
||||
<queue name="queue2">
|
||||
<minResources>1024 mb,1 vcores</minResources>
|
||||
<maxResources>4096 mb,2 vcores</maxResources>
|
||||
</queue>
|
||||
</queue>
|
||||
</allocations>
|
||||
EOF
|
||||
CHECK_RESULT $? 0 0 "创建公平调度器配置文件失败"
|
||||
|
||||
LOG_INFO "步骤6:执行yarn fs2cs命令进行转换"
|
||||
yarn fs2cs /tmp/fair-scheduler.xml /tmp/capacity-scheduler.xml
|
||||
CHECK_RESULT $? 0 0 "转换公平调度器配置为容量调度器配置失败"
|
||||
|
||||
LOG_INFO "步骤7:检查生成的容量调度器配置文件是否存在"
|
||||
if [ -f /tmp/capacity-scheduler.xml ]; then
|
||||
LOG_INFO "容量调度器配置文件生成成功"
|
||||
else
|
||||
LOG_ERROR "容量调度器配置文件未生成"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤8:验证生成的配置文件内容"
|
||||
if grep -q "yarn.scheduler.capacity.root.queues" /tmp/capacity-scheduler.xml; then
|
||||
LOG_INFO "容量调度器配置文件内容验证通过"
|
||||
else
|
||||
LOG_ERROR "容量调度器配置文件内容验证失败"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤9:清理临时文件"
|
||||
rm -f /tmp/fair-scheduler.xml /tmp/capacity-scheduler.xml
|
||||
CHECK_RESULT $? 0 0 "清理临时文件失败"
|
||||
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "步骤10:卸载hadoop-yarn软件包"
|
||||
dnf remove -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "卸载hadoop-yarn失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成:将公平调度器配置转换为容量调度器配置(实验性)"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,201 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试运行一个jar文件
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 定义颜色和日志函数
|
||||
LOG_INFO() {
|
||||
echo -e "\033[32m[INFO]\033[0m $1"
|
||||
}
|
||||
LOG_ERROR() {
|
||||
echo -e "\033[31m[ERROR]\033[0m $1"
|
||||
}
|
||||
|
||||
# 检查软件包是否在yum源中
|
||||
check_package_in_repo() {
|
||||
local package_name=$1
|
||||
LOG_INFO "检查yum源中是否存在软件包: $package_name"
|
||||
dnf list available "$package_name" &> /dev/null
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中不存在软件包: $package_name"
|
||||
exit 255
|
||||
fi
|
||||
}
|
||||
|
||||
# 检查命令参数是否存在
|
||||
check_command_option() {
|
||||
local cmd=$1
|
||||
local option=$2
|
||||
LOG_INFO "检查命令 $cmd 是否支持参数: $option"
|
||||
if ! $cmd --help 2>&1 | grep -q "$option"; then
|
||||
LOG_ERROR "命令 $cmd 不支持参数: $option"
|
||||
exit 255
|
||||
fi
|
||||
}
|
||||
|
||||
# 检查环境是否已安装hadoop-yarn
|
||||
check_hadoop_yarn_installed() {
|
||||
LOG_INFO "检查hadoop-yarn是否已安装"
|
||||
rpm -q hadoop-yarn &> /dev/null
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "hadoop-yarn已安装"
|
||||
HADOOP_INSTALLED=true
|
||||
else
|
||||
LOG_INFO "hadoop-yarn未安装"
|
||||
HADOOP_INSTALLED=false
|
||||
fi
|
||||
}
|
||||
|
||||
# 安装hadoop-yarn
|
||||
install_hadoop_yarn() {
|
||||
LOG_INFO "开始安装hadoop-yarn"
|
||||
check_package_in_repo "hadoop-yarn"
|
||||
dnf install -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "安装hadoop-yarn失败"
|
||||
LOG_INFO "hadoop-yarn安装成功"
|
||||
}
|
||||
|
||||
# 卸载hadoop-yarn
|
||||
uninstall_hadoop_yarn() {
|
||||
LOG_INFO "开始卸载hadoop-yarn"
|
||||
dnf remove -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "卸载hadoop-yarn失败"
|
||||
LOG_INFO "hadoop-yarn卸载成功"
|
||||
}
|
||||
|
||||
# 测试运行jar文件
|
||||
test_run_jar() {
|
||||
LOG_INFO "测试运行jar文件"
|
||||
|
||||
# 创建测试jar文件
|
||||
LOG_INFO "创建测试jar文件"
|
||||
cat > /tmp/TestYarn.jar << "EOF"
|
||||
import java.io.IOException;
|
||||
import org.apache.hadoop.conf.Configuration;
|
||||
import org.apache.hadoop.yarn.conf.YarnConfiguration;
|
||||
import org.apache.hadoop.yarn.client.api.YarnClient;
|
||||
import org.apache.hadoop.yarn.client.api.YarnClientFactory;
|
||||
|
||||
public class TestYarn {
|
||||
public static void main(String[] args) {
|
||||
System.out.println("TestYarn jar is running!");
|
||||
System.out.println("YARN test completed successfully!");
|
||||
System.exit(0);
|
||||
}
|
||||
}
|
||||
EOF
|
||||
|
||||
# 编译测试jar文件(简化版本,实际可能需要更多依赖)
|
||||
LOG_INFO "编译测试jar文件"
|
||||
javac -cp $(hadoop classpath) /tmp/TestYarn.java 2>/tmp/compile_error.log || {
|
||||
LOG_INFO "使用简化测试方法"
|
||||
# 使用一个简单的测试jar
|
||||
jar -cvf /tmp/TestYarn.jar -C /tmp TestYarn.class 2>/dev/null || {
|
||||
# 如果上面的方法失败,使用yarn自带的示例jar
|
||||
find /usr -name "*example*.jar" 2>/dev/null | head -1 > /tmp/test_jar_path.txt
|
||||
TEST_JAR=$(cat /tmp/test_jar_path.txt)
|
||||
if [ -n "$TEST_JAR" ] && [ -f "$TEST_JAR" ]; then
|
||||
LOG_INFO "使用找到的示例jar: $TEST_JAR"
|
||||
TEST_JAR_PATH="$TEST_JAR"
|
||||
else
|
||||
LOG_INFO "创建最简单的测试jar"
|
||||
echo "public class Test { public static void main(String[] args) { System.out.println("Test passed!"); } }" > /tmp/Test.java
|
||||
javac /tmp/Test.java
|
||||
jar cvf /tmp/TestYarn.jar -C /tmp Test.class
|
||||
TEST_JAR_PATH="/tmp/TestYarn.jar"
|
||||
fi
|
||||
}
|
||||
}
|
||||
|
||||
# 检查yarn命令是否可用
|
||||
LOG_INFO "检查yarn命令是否可用"
|
||||
command -v yarn >/dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "yarn命令不可用"
|
||||
|
||||
# 检查yarn jar命令参数
|
||||
check_command_option "yarn" "jar"
|
||||
|
||||
# 启动YARN服务(如果需要)
|
||||
LOG_INFO "检查YARN服务状态"
|
||||
systemctl status yarn-resourcemanager 2>/dev/null || {
|
||||
LOG_INFO "尝试启动YARN服务"
|
||||
systemctl start yarn-resourcemanager 2>/dev/null || true
|
||||
systemctl start yarn-nodemanager 2>/dev/null || true
|
||||
}
|
||||
|
||||
# 等待服务启动
|
||||
sleep 3
|
||||
|
||||
# 测试运行jar文件
|
||||
LOG_INFO "执行yarn jar命令"
|
||||
if [ -n "$TEST_JAR_PATH" ] && [ -f "$TEST_JAR_PATH" ]; then
|
||||
yarn jar "$TEST_JAR_PATH" 2>&1 | tee /tmp/yarn_jar_test.log
|
||||
YARN_RESULT=${PIPESTATUS[0]}
|
||||
else
|
||||
# 尝试使用hadoop自带的示例
|
||||
yarn jar /usr/share/hadoop/mapreduce/hadoop-mapreduce-examples*.jar pi 1 1 2>&1 | tee /tmp/yarn_jar_test.log
|
||||
YARN_RESULT=${PIPESTATUS[0]}
|
||||
fi
|
||||
|
||||
# 检查结果
|
||||
if [ $YARN_RESULT -eq 0 ] || grep -q "Test passed\|completed successfully" /tmp/yarn_jar_test.log; then
|
||||
LOG_INFO "jar文件运行测试成功"
|
||||
CHECK_RESULT 0 0 0 "jar文件运行测试失败"
|
||||
else
|
||||
LOG_ERROR "jar文件运行测试失败"
|
||||
CHECK_RESULT 1 0 0 "jar文件运行测试失败"
|
||||
fi
|
||||
}
|
||||
|
||||
# 主函数
|
||||
main() {
|
||||
LOG_INFO "开始测试:运行一个jar文件"
|
||||
|
||||
# 记录初始安装状态
|
||||
check_hadoop_yarn_installed
|
||||
|
||||
# 如果未安装,则安装
|
||||
if [ "$HADOOP_INSTALLED" = "false" ]; then
|
||||
install_hadoop_yarn
|
||||
NEED_UNINSTALL=true
|
||||
else
|
||||
NEED_UNINSTALL=false
|
||||
fi
|
||||
|
||||
# 执行测试
|
||||
test_run_jar
|
||||
|
||||
# 清理测试文件
|
||||
LOG_INFO "清理测试文件"
|
||||
rm -f /tmp/TestYarn.* /tmp/Test.* /tmp/yarn_jar_test.log /tmp/compile_error.log /tmp/test_jar_path.txt 2>/dev/null
|
||||
|
||||
# 如果测试前未安装,则卸载
|
||||
if [ "$NEED_UNINSTALL" = "true" ]; then
|
||||
uninstall_hadoop_yarn
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成"
|
||||
}
|
||||
|
||||
# 执行主函数
|
||||
main
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,81 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试转储容器日志
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试:测试转储容器日志"
|
||||
LOG_INFO "步骤1:检查hadoop-yarn软件包是否已在yum源中"
|
||||
dnf list available hadoop-yarn 2>/dev/null | grep -q hadoop-yarn
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到hadoop-yarn软件包"
|
||||
exit 255
|
||||
fi
|
||||
LOG_INFO "hadoop-yarn软件包在yum源中存在"
|
||||
|
||||
LOG_INFO "步骤2:检查hadoop-yarn是否已安装"
|
||||
rpm -q hadoop-yarn >/dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "hadoop-yarn已安装,测试后保持安装状态"
|
||||
INSTALLED=1
|
||||
else
|
||||
LOG_INFO "hadoop-yarn未安装,将安装作为测试步骤"
|
||||
INSTALLED=0
|
||||
LOG_INFO "步骤3:安装hadoop-yarn软件包"
|
||||
dnf install -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "安装hadoop-yarn失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤4:检查yarn logs命令是否支持-containerId参数"
|
||||
yarn logs --help 2>&1 | grep -q -- "-containerId"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yarn logs命令不支持-containerId参数"
|
||||
if [ $INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "步骤5:卸载hadoop-yarn软件包"
|
||||
dnf remove -y hadoop-yarn
|
||||
fi
|
||||
exit 255
|
||||
fi
|
||||
LOG_INFO "yarn logs命令支持-containerId参数"
|
||||
|
||||
LOG_INFO "步骤5:尝试使用yarn logs命令转储容器日志"
|
||||
LOG_INFO "模拟一个不存在的容器ID,预期命令执行失败"
|
||||
yarn logs -containerId container_123456789_1234_01_000001 2>&1
|
||||
EXPECTED_EXIT_CODE=$?
|
||||
if [ $EXPECTED_EXIT_CODE -eq 0 ]; then
|
||||
LOG_ERROR "yarn logs命令意外成功,但预期应失败"
|
||||
CHECK_RESULT 1 0 0 "命令退出码检查失败"
|
||||
else
|
||||
LOG_INFO "yarn logs命令按预期失败,退出码为$EXPECTED_EXIT_CODE"
|
||||
CHECK_RESULT $EXPECTED_EXIT_CODE 0 1 "命令退出码检查通过"
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤6:清理测试环境"
|
||||
if [ $INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "卸载hadoop-yarn软件包"
|
||||
dnf remove -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "卸载hadoop-yarn失败"
|
||||
else
|
||||
LOG_INFO "测试前已安装hadoop-yarn,保持安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成:测试转储容器日志"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,71 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试打印节点报告
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试:测试打印节点报告"
|
||||
LOG_INFO "步骤1:检查yarn软件包是否在yum源中"
|
||||
dnf list available hadoop-yarn 2>/dev/null | grep -q hadoop-yarn
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到hadoop-yarn软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤2:检查hadoop-yarn是否已经安装"
|
||||
rpm -q hadoop-yarn > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "hadoop-yarn已经安装,标记为已安装状态"
|
||||
ALREADY_INSTALLED=true
|
||||
else
|
||||
LOG_INFO "hadoop-yarn未安装,标记为未安装状态"
|
||||
ALREADY_INSTALLED=false
|
||||
fi
|
||||
|
||||
if [ "$ALREADY_INSTALLED" = "false" ]; then
|
||||
LOG_INFO "步骤3:安装hadoop-yarn软件包"
|
||||
dnf install -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "安装hadoop-yarn失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤4:检查yarn命令的node参数是否支持"
|
||||
yarn node --help 2>&1 | grep -q -- "--help"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yarn命令不支持node参数"
|
||||
if [ "$ALREADY_INSTALLED" = "false" ]; then
|
||||
LOG_INFO "清理环境:卸载hadoop-yarn"
|
||||
dnf remove -y hadoop-yarn
|
||||
fi
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤5:执行yarn node -list命令打印节点报告"
|
||||
yarn node -list
|
||||
CHECK_RESULT $? 0 0 "执行yarn node -list命令失败"
|
||||
|
||||
if [ "$ALREADY_INSTALLED" = "false" ]; then
|
||||
LOG_INFO "步骤6:清理环境,卸载hadoop-yarn"
|
||||
dnf remove -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "卸载hadoop-yarn失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,87 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试节点属性命令行客户端
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试节点属性命令行客户端"
|
||||
LOG_INFO "步骤1: 检查是否已安装hadoop-yarn软件包"
|
||||
if dnf list installed hadoop-yarn &>/dev/null; then
|
||||
LOG_INFO "hadoop-yarn已安装,跳过安装步骤"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "hadoop-yarn未安装,将进行安装"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤2: 检查yum源中是否有hadoop-yarn软件包"
|
||||
if ! dnf list available hadoop-yarn &>/dev/null; then
|
||||
LOG_ERROR "yum源中没有hadoop-yarn软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
if [ "$INSTALLED" = "false" ]; then
|
||||
LOG_INFO "步骤3: 安装hadoop-yarn软件包"
|
||||
dnf install -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "安装hadoop-yarn失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤4: 测试节点属性命令行客户端的基本功能"
|
||||
LOG_INFO "检查yarn nodeattributes命令是否支持"
|
||||
if ! yarn nodeattributes --help &>/dev/null; then
|
||||
LOG_ERROR "yarn nodeattributes命令不存在或不支持"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤5: 执行yarn nodeattributes命令查看节点属性"
|
||||
yarn nodeattributes -list
|
||||
CHECK_RESULT $? 0 0 "执行yarn nodeattributes命令失败"
|
||||
|
||||
LOG_INFO "步骤6: 测试添加节点属性"
|
||||
yarn nodeattributes -add "testattribute=testvalue"
|
||||
CHECK_RESULT $? 0 0 "添加节点属性失败"
|
||||
|
||||
LOG_INFO "步骤7: 验证节点属性是否添加成功"
|
||||
yarn nodeattributes -list | grep -q "testattribute=testvalue"
|
||||
CHECK_RESULT $? 0 0 "验证节点属性添加失败"
|
||||
|
||||
LOG_INFO "步骤8: 测试删除节点属性"
|
||||
yarn nodeattributes -remove "testattribute"
|
||||
CHECK_RESULT $? 0 0 "删除节点属性失败"
|
||||
|
||||
LOG_INFO "步骤9: 验证节点属性是否删除成功"
|
||||
if yarn nodeattributes -list | grep -q "testattribute"; then
|
||||
LOG_ERROR "节点属性删除失败"
|
||||
exit 1
|
||||
fi
|
||||
CHECK_RESULT $? 0 0 "验证节点属性删除失败"
|
||||
|
||||
LOG_INFO "步骤10: 清理测试环境"
|
||||
if [ "$INSTALLED" = "false" ]; then
|
||||
LOG_INFO "卸载hadoop-yarn软件包"
|
||||
dnf remove -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "卸载hadoop-yarn失败"
|
||||
else
|
||||
LOG_INFO "保持hadoop-yarn安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "节点属性命令行客户端测试完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,91 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试在每个工作节点上运行节点管理器
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 检查是否已经安装了hadoop-yarn-nodemanager
|
||||
LOG_INFO "检查hadoop-yarn-nodemanager是否已安装"
|
||||
rpm -q hadoop-yarn-nodemanager > /dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "hadoop-yarn-nodemanager已安装,测试结束后保持安装状态"
|
||||
INSTALLED=1
|
||||
else
|
||||
LOG_INFO "hadoop-yarn-nodemanager未安装,将在测试过程中安装"
|
||||
INSTALLED=0
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有hadoop-yarn-nodemanager包
|
||||
LOG_INFO "检查yum源中是否有hadoop-yarn-nodemanager包"
|
||||
dnf list available hadoop-yarn-nodemanager > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 255 "yum源中没有hadoop-yarn-nodemanager包"
|
||||
|
||||
# 安装hadoop-yarn-nodemanager(如果未安装)
|
||||
if [ $INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "安装hadoop-yarn-nodemanager"
|
||||
dnf install -y hadoop-yarn-nodemanager
|
||||
CHECK_RESULT $? 0 0 "安装hadoop-yarn-nodemanager失败"
|
||||
fi
|
||||
|
||||
# 检查nodemanager命令是否存在
|
||||
LOG_INFO "检查nodemanager命令是否存在"
|
||||
which nodemanager > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 255 "nodemanager命令不存在"
|
||||
|
||||
# 测试nodemanager命令的基本参数
|
||||
LOG_INFO "测试nodemanager命令的--help参数"
|
||||
nodemanager --help > /dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "nodemanager --help命令执行失败"
|
||||
|
||||
# 测试nodemanager命令的无效参数
|
||||
LOG_INFO "测试nodemanager命令的无效参数"
|
||||
nodemanager --invalid-param > /dev/null 2>&1
|
||||
if [ $? -ne 255 ]; then
|
||||
LOG_ERROR "nodemanager命令不支持--invalid-param参数时应退出码为255"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 测试启动nodemanager服务
|
||||
LOG_INFO "测试启动nodemanager服务"
|
||||
systemctl start hadoop-yarn-nodemanager
|
||||
CHECK_RESULT $? 0 0 "启动nodemanager服务失败"
|
||||
|
||||
# 检查nodemanager服务状态
|
||||
LOG_INFO "检查nodemanager服务状态"
|
||||
systemctl status hadoop-yarn-nodemanager --no-pager | grep -q "active (running)"
|
||||
CHECK_RESULT $? 0 0 "nodemanager服务未正常运行"
|
||||
|
||||
# 测试停止nodemanager服务
|
||||
LOG_INFO "测试停止nodemanager服务"
|
||||
systemctl stop hadoop-yarn-nodemanager
|
||||
CHECK_RESULT $? 0 0 "停止nodemanager服务失败"
|
||||
|
||||
# 如果测试前未安装,则卸载hadoop-yarn-nodemanager
|
||||
if [ $INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "卸载hadoop-yarn-nodemanager"
|
||||
dnf remove -y hadoop-yarn-nodemanager
|
||||
CHECK_RESULT $? 0 0 "卸载hadoop-yarn-nodemanager失败"
|
||||
else
|
||||
LOG_INFO "测试前已安装hadoop-yarn-nodemanager,保持安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,73 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试运行Web应用程序代理服务器
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试运行Web应用程序代理服务器"
|
||||
LOG_INFO "步骤1: 检查环境是否已安装hadoop-yarn-proxyserver软件包"
|
||||
rpm -q hadoop-yarn-proxyserver
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "hadoop-yarn-proxyserver已安装,脚本结束时将保持安装状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "hadoop-yarn-proxyserver未安装,将在测试过程中安装"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤2: 检查yum源中是否有hadoop-yarn-proxyserver软件包"
|
||||
dnf list available hadoop-yarn-proxyserver
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到hadoop-yarn-proxyserver软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "步骤3: 安装hadoop-yarn-proxyserver软件包"
|
||||
dnf install -y hadoop-yarn-proxyserver
|
||||
CHECK_RESULT $? 0 0 "安装hadoop-yarn-proxyserver失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "步骤4: 检查hadoop-yarn-proxyserver命令参数"
|
||||
yarn proxyserver --help
|
||||
CHECK_RESULT $? 0 0 "hadoop-yarn-proxyserver命令参数检查失败"
|
||||
|
||||
LOG_INFO "步骤5: 启动Web应用程序代理服务器"
|
||||
yarn proxyserver &
|
||||
PROXY_PID=$!
|
||||
sleep 5
|
||||
|
||||
LOG_INFO "步骤6: 检查Web应用程序代理服务器进程是否运行"
|
||||
ps -p $PROXY_PID
|
||||
CHECK_RESULT $? 0 0 "Web应用程序代理服务器进程未运行"
|
||||
|
||||
LOG_INFO "步骤7: 停止Web应用程序代理服务器"
|
||||
kill $PROXY_PID
|
||||
CHECK_RESULT $? 0 0 "停止Web应用程序代理服务器失败"
|
||||
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "步骤8: 卸载hadoop-yarn-proxyserver软件包"
|
||||
dnf remove -y hadoop-yarn-proxyserver
|
||||
CHECK_RESULT $? 0 0 "卸载hadoop-yarn-proxyserver失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试运行Web应用程序代理服务器完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,79 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试打印队列信息
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试:测试打印队列信息"
|
||||
|
||||
# 检查是否已安装hadoop-yarn
|
||||
LOG_INFO "步骤1:检查hadoop-yarn是否已安装"
|
||||
if dnf list installed hadoop-yarn &>/dev/null; then
|
||||
LOG_INFO "hadoop-yarn已安装"
|
||||
already_installed=true
|
||||
else
|
||||
LOG_INFO "hadoop-yarn未安装"
|
||||
already_installed=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有hadoop-yarn软件包
|
||||
LOG_INFO "步骤2:检查yum源中是否有hadoop-yarn软件包"
|
||||
if ! dnf list available hadoop-yarn &>/dev/null; then
|
||||
LOG_ERROR "yum源中没有hadoop-yarn软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装hadoop-yarn
|
||||
if [ "$already_installed" = false ]; then
|
||||
LOG_INFO "步骤3:安装hadoop-yarn"
|
||||
dnf install -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "安装hadoop-yarn失败"
|
||||
fi
|
||||
|
||||
# 检查yarn命令是否支持queue参数
|
||||
LOG_INFO "步骤4:检查yarn命令是否支持queue参数"
|
||||
if ! yarn queue --help &>/dev/null; then
|
||||
LOG_ERROR "yarn命令不支持queue参数"
|
||||
# 如果是新安装的,需要卸载
|
||||
if [ "$already_installed" = false ]; then
|
||||
LOG_INFO "清理:卸载新安装的hadoop-yarn"
|
||||
dnf remove -y hadoop-yarn
|
||||
fi
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 执行测试:打印队列信息
|
||||
LOG_INFO "步骤5:执行测试 - 打印队列信息"
|
||||
yarn queue -list
|
||||
CHECK_RESULT $? 0 0 "打印队列信息失败"
|
||||
|
||||
# 环境恢复
|
||||
LOG_INFO "步骤6:环境恢复"
|
||||
if [ "$already_installed" = false ]; then
|
||||
LOG_INFO "卸载新安装的hadoop-yarn"
|
||||
dnf remove -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "卸载hadoop-yarn失败"
|
||||
else
|
||||
LOG_INFO "保持原有安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,77 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试运行注册表DNS服务器
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试运行注册表DNS服务器"
|
||||
|
||||
# 定义软件包名称
|
||||
PACKAGE_NAME="hadoop-yarn-yarn_registrydns"
|
||||
|
||||
# 检查环境是否已安装
|
||||
LOG_INFO "检查环境是否已安装软件包:$PACKAGE_NAME"
|
||||
if dnf list installed "$PACKAGE_NAME" &>/dev/null; then
|
||||
LOG_INFO "环境已安装软件包:$PACKAGE_NAME,测试结束后将保持安装状态"
|
||||
INSTALLED_BEFORE_TEST=true
|
||||
else
|
||||
LOG_INFO "环境未安装软件包:$PACKAGE_NAME,测试过程中将进行安装"
|
||||
INSTALLED_BEFORE_TEST=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有该软件包
|
||||
LOG_INFO "检查yum源中是否有软件包:$PACKAGE_NAME"
|
||||
if ! dnf list available "$PACKAGE_NAME" &>/dev/null; then
|
||||
LOG_ERROR "yum源中未找到软件包:$PACKAGE_NAME"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装软件包
|
||||
if [ "$INSTALLED_BEFORE_TEST" = false ]; then
|
||||
LOG_INFO "安装软件包:$PACKAGE_NAME"
|
||||
dnf install -y "$PACKAGE_NAME"
|
||||
CHECK_RESULT $? 0 0 "安装软件包失败"
|
||||
fi
|
||||
|
||||
# 测试运行注册表DNS服务器
|
||||
LOG_INFO "测试运行注册表DNS服务器"
|
||||
yarn_registrydns --help &>/dev/null
|
||||
CHECK_RESULT $? 0 0 "运行注册表DNS服务器失败"
|
||||
|
||||
# 检查命令参数是否存在或不支持
|
||||
LOG_INFO "检查命令参数是否存在或不支持"
|
||||
if ! yarn_registrydns --help 2>&1 | grep -q "usage"; then
|
||||
LOG_ERROR "命令参数不存在或不支持"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果需要多个服务器并在第二个服务器上执行命令,使用SSH_CMD
|
||||
# 示例:SSH_CMD "ls" "$NODE2_IPV4" "$NODE2_PASSWORD" "$NODE2_USER"
|
||||
|
||||
# 清理环境:如果测试前未安装,则卸载软件包
|
||||
if [ "$INSTALLED_BEFORE_TEST" = false ]; then
|
||||
LOG_INFO "卸载软件包:$PACKAGE_NAME"
|
||||
dnf remove -y "$PACKAGE_NAME"
|
||||
CHECK_RESULT $? 0 0 "卸载软件包失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成,环境已恢复"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,90 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试运行资源管理器
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 检查环境是否已安装hadoop-yarn-resourcemanager
|
||||
LOG_INFO "检查hadoop-yarn-resourcemanager是否已安装"
|
||||
rpm -q hadoop-yarn-resourcemanager &> /dev/null
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "hadoop-yarn-resourcemanager已安装,测试结束后保持安装状态"
|
||||
ALREADY_INSTALLED=1
|
||||
else
|
||||
LOG_INFO "hadoop-yarn-resourcemanager未安装,将在测试前安装"
|
||||
ALREADY_INSTALLED=0
|
||||
fi
|
||||
|
||||
# 检查yum源中是否存在hadoop-yarn-resourcemanager软件包
|
||||
LOG_INFO "检查yum源中是否存在hadoop-yarn-resourcemanager软件包"
|
||||
dnf list available hadoop-yarn-resourcemanager &> /dev/null
|
||||
CHECK_RESULT $? 0 255 "yum源中不存在hadoop-yarn-resourcemanager软件包"
|
||||
|
||||
# 如果未安装则安装软件包
|
||||
if [ $ALREADY_INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "安装hadoop-yarn-resourcemanager软件包"
|
||||
dnf install -y hadoop-yarn-resourcemanager
|
||||
CHECK_RESULT $? 0 0 "安装hadoop-yarn-resourcemanager失败"
|
||||
fi
|
||||
|
||||
# 检查yarn命令是否存在
|
||||
LOG_INFO "检查yarn命令是否存在"
|
||||
which yarn &> /dev/null
|
||||
CHECK_RESULT $? 0 255 "yarn命令不存在"
|
||||
|
||||
# 检查yarn resourcemanager命令是否支持
|
||||
LOG_INFO "检查yarn resourcemanager命令是否支持"
|
||||
yarn resourcemanager --help &> /dev/null
|
||||
CHECK_RESULT $? 0 255 "yarn resourcemanager命令不支持"
|
||||
|
||||
# 启动资源管理器
|
||||
LOG_INFO "启动资源管理器"
|
||||
yarn resourcemanager &
|
||||
RM_PID=$!
|
||||
sleep 5
|
||||
|
||||
# 检查资源管理器进程是否运行
|
||||
LOG_INFO "检查资源管理器进程是否运行"
|
||||
ps -p $RM_PID &> /dev/null
|
||||
CHECK_RESULT $? 0 0 "资源管理器进程未运行"
|
||||
|
||||
# 检查资源管理器服务端口
|
||||
LOG_INFO "检查资源管理器服务端口"
|
||||
netstat -tlnp | grep :8032 &> /dev/null
|
||||
CHECK_RESULT $? 0 0 "资源管理器服务端口未监听"
|
||||
|
||||
# 停止资源管理器
|
||||
LOG_INFO "停止资源管理器"
|
||||
kill $RM_PID
|
||||
wait $RM_PID 2>/dev/null
|
||||
|
||||
# 清理环境
|
||||
LOG_INFO "清理环境"
|
||||
if [ $ALREADY_INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "卸载hadoop-yarn-resourcemanager软件包"
|
||||
dnf remove -y hadoop-yarn-resourcemanager
|
||||
CHECK_RESULT $? 0 0 "卸载hadoop-yarn-resourcemanager失败"
|
||||
else
|
||||
LOG_INFO "保持hadoop-yarn-resourcemanager安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试运行资源管理器完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,91 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试运行资源管理器管理工具
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试运行资源管理器管理工具"
|
||||
|
||||
# 检查环境是否已安装hadoop-yarn软件包
|
||||
LOG_INFO "检查hadoop-yarn软件包是否已安装"
|
||||
rpm -q hadoop-yarn >/dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "hadoop-yarn软件包已安装,测试后保持安装状态"
|
||||
installed=true
|
||||
else
|
||||
LOG_INFO "hadoop-yarn软件包未安装,将在测试过程中安装"
|
||||
installed=false
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有hadoop-yarn软件包
|
||||
LOG_INFO "检查yum源中是否存在hadoop-yarn软件包"
|
||||
dnf list available hadoop-yarn >/dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "yum源中没有hadoop-yarn软件包"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中没有hadoop-yarn软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果未安装,则安装软件包
|
||||
if [ "$installed" = false ]; then
|
||||
LOG_INFO "安装hadoop-yarn软件包"
|
||||
dnf install -y hadoop-yarn >/dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "安装hadoop-yarn软件包失败"
|
||||
fi
|
||||
|
||||
# 测试yarn rmadmin命令的基本功能
|
||||
LOG_INFO "测试yarn rmadmin命令的基本功能"
|
||||
yarn rmadmin -help >/dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "yarn rmadmin命令执行失败"
|
||||
|
||||
# 测试yarn rmadmin命令的特定参数
|
||||
LOG_INFO "测试yarn rmadmin命令的-refreshNodes参数"
|
||||
yarn rmadmin -refreshNodes >/dev/null 2>&1
|
||||
# 注意:这里不检查结果,因为-refreshNodes可能需要特定配置
|
||||
# 我们只是测试命令是否能识别该参数
|
||||
|
||||
# 测试不支持的参数
|
||||
LOG_INFO "测试yarn rmadmin命令的不支持参数"
|
||||
yarn rmadmin -invalidParam >/dev/null 2>&1
|
||||
if [ $? -eq 255 ]; then
|
||||
LOG_INFO "不支持参数测试通过"
|
||||
else
|
||||
LOG_ERROR "不支持参数测试失败"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 如果需要多服务器测试,可以这样使用(示例)
|
||||
# LOG_INFO "在第二个节点上测试yarn rmadmin命令"
|
||||
# SSH_CMD "yarn rmadmin -help" $NODE2_IPV4 $NODE2_PASSWORD $NODE2_USER
|
||||
# CHECK_RESULT $? 0 0 "在第二个节点上执行yarn rmadmin命令失败"
|
||||
|
||||
# 清理环境:如果测试前未安装,则卸载软件包
|
||||
if [ "$installed" = false ]; then
|
||||
LOG_INFO "卸载hadoop-yarn软件包"
|
||||
dnf remove -y hadoop-yarn >/dev/null 2>&1
|
||||
CHECK_RESULT $? 0 0 "卸载hadoop-yarn软件包失败"
|
||||
LOG_INFO "已恢复到测试前的环境状态"
|
||||
else
|
||||
LOG_INFO "保持hadoop-yarn软件包安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试运行资源管理器管理工具完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,73 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试运行路由器守护进程
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试运行路由器守护进程"
|
||||
|
||||
LOG_INFO "检查环境是否已安装hadoop-yarn-yarn-router软件包"
|
||||
if rpm -q hadoop-yarn-yarn-router &> /dev/null; then
|
||||
LOG_INFO "hadoop-yarn-yarn-router已安装,测试完成后保持安装状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "hadoop-yarn-yarn-router未安装,将在测试过程中安装并在结束后卸载"
|
||||
INSTALLED=false
|
||||
fi
|
||||
|
||||
LOG_INFO "检查yum源中是否存在hadoop-yarn-yarn-router软件包"
|
||||
if ! dnf list available hadoop-yarn-yarn-router &> /dev/null; then
|
||||
LOG_ERROR "yum源中未找到hadoop-yarn-yarn-router软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "安装hadoop-yarn-yarn-router软件包"
|
||||
dnf install -y hadoop-yarn-yarn-router
|
||||
CHECK_RESULT $? 0 0 "安装hadoop-yarn-yarn-router失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "检查yarn router命令参数是否支持"
|
||||
yarn router --help &> /dev/null
|
||||
CHECK_RESULT $? 0 255 "yarn router命令参数不支持或不存在"
|
||||
|
||||
LOG_INFO "启动yarn router守护进程"
|
||||
yarn router &
|
||||
ROUTER_PID=$!
|
||||
sleep 3
|
||||
|
||||
LOG_INFO "检查yarn router进程是否正在运行"
|
||||
ps -p $ROUTER_PID &> /dev/null
|
||||
CHECK_RESULT $? 0 0 "yarn router进程启动失败"
|
||||
|
||||
LOG_INFO "停止yarn router守护进程"
|
||||
kill $ROUTER_PID
|
||||
CHECK_RESULT $? 0 0 "停止yarn router进程失败"
|
||||
wait $ROUTER_PID 2>/dev/null
|
||||
|
||||
if [ "$INSTALLED" = false ]; then
|
||||
LOG_INFO "卸载hadoop-yarn-yarn-router软件包"
|
||||
dnf remove -y hadoop-yarn-yarn-router
|
||||
CHECK_RESULT $? 0 0 "卸载hadoop-yarn-yarn-router失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试运行路由器守护进程完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,90 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试更新调度器配置
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试更新调度器配置"
|
||||
LOG_INFO "检查环境是否已安装Hadoop YARN相关软件包"
|
||||
rpm -qa | grep -E "^hadoop-yarn-|^hadoop-"
|
||||
if [ $? -eq 0 ]; then
|
||||
LOG_INFO "Hadoop YARN已安装,脚本结束时将保持安装状态"
|
||||
INSTALLED=true
|
||||
else
|
||||
LOG_INFO "Hadoop YARN未安装,将在测试过程中安装"
|
||||
INSTALLED=false
|
||||
fi
|
||||
LOG_INFO "检查yum源中是否存在hadoop-yarn软件包"
|
||||
dnf list available hadoop-yarn 2>/dev/null | grep -q "^hadoop-yarn"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yum源中未找到hadoop-yarn软件包"
|
||||
exit 255
|
||||
fi
|
||||
if [ "$INSTALLED" = "false" ]; then
|
||||
LOG_INFO "安装hadoop-yarn软件包"
|
||||
dnf install -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "安装hadoop-yarn失败"
|
||||
fi
|
||||
LOG_INFO "检查yarn命令是否支持更新调度器配置参数"
|
||||
yarn schedulerconf -help 2>&1 | grep -q "\-\-update"
|
||||
if [ $? -ne 0 ]; then
|
||||
LOG_ERROR "yarn schedulerconf命令不支持--update参数"
|
||||
if [ "$INSTALLED" = "false" ]; then
|
||||
LOG_INFO "卸载hadoop-yarn软件包"
|
||||
dnf remove -y hadoop-yarn
|
||||
fi
|
||||
exit 255
|
||||
fi
|
||||
LOG_INFO "备份当前调度器配置"
|
||||
yarn schedulerconf -list > /tmp/scheduler_backup.conf 2>/dev/null
|
||||
BACKUP_RESULT=$?
|
||||
if [ $BACKUP_RESULT -ne 0 ]; then
|
||||
LOG_ERROR "备份当前调度器配置失败"
|
||||
if [ "$INSTALLED" = "false" ]; then
|
||||
LOG_INFO "卸载hadoop-yarn软件包"
|
||||
dnf remove -y hadoop-yarn
|
||||
fi
|
||||
exit $BACKUP_RESULT
|
||||
fi
|
||||
LOG_INFO "测试更新调度器配置"
|
||||
yarn schedulerconf -update -addQueue root.testQueue
|
||||
CHECK_RESULT $? 0 0 "更新调度器配置失败"
|
||||
LOG_INFO "验证调度器配置是否更新成功"
|
||||
yarn schedulerconf -list | grep -q "root.testQueue"
|
||||
CHECK_RESULT $? 0 0 "调度器配置更新后未找到root.testQueue"
|
||||
LOG_INFO "恢复调度器配置"
|
||||
if [ -f /tmp/scheduler_backup.conf ]; then
|
||||
while read -r line; do
|
||||
if [ -n "$line" ]; then
|
||||
yarn schedulerconf -update -addQueue "$line" 2>/dev/null
|
||||
fi
|
||||
done < /tmp/scheduler_backup.conf
|
||||
yarn schedulerconf -removeQueue root.testQueue 2>/dev/null
|
||||
fi
|
||||
LOG_INFO "清理临时文件"
|
||||
rm -f /tmp/scheduler_backup.conf
|
||||
if [ "$INSTALLED" = "false" ]; then
|
||||
LOG_INFO "卸载hadoop-yarn软件包"
|
||||
dnf remove -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "卸载hadoop-yarn失败"
|
||||
fi
|
||||
LOG_INFO "测试更新调度器配置完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,80 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试共享缓存管理器管理工具
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 检查是否已安装hadoop-yarn
|
||||
LOG_INFO "检查hadoop-yarn是否已安装"
|
||||
if dnf list installed hadoop-yarn &>/dev/null; then
|
||||
LOG_INFO "hadoop-yarn已安装,脚本结束后将保持安装状态"
|
||||
ALREADY_INSTALLED=1
|
||||
else
|
||||
LOG_INFO "hadoop-yarn未安装,将在测试中安装并在结束后卸载"
|
||||
ALREADY_INSTALLED=0
|
||||
fi
|
||||
|
||||
# 检查yum源中是否有hadoop-yarn软件包
|
||||
LOG_INFO "检查yum源中是否有hadoop-yarn软件包"
|
||||
if ! dnf list available hadoop-yarn &>/dev/null; then
|
||||
LOG_ERROR "yum源中没有hadoop-yarn软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 安装hadoop-yarn(如果未安装)
|
||||
if [ $ALREADY_INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "安装hadoop-yarn"
|
||||
dnf install -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "安装hadoop-yarn失败"
|
||||
fi
|
||||
|
||||
# 测试共享缓存管理器管理工具
|
||||
LOG_INFO "测试共享缓存管理器管理工具:yarn scmadmin"
|
||||
# 检查yarn scmadmin命令是否存在
|
||||
if ! command -v yarn &>/dev/null; then
|
||||
LOG_ERROR "yarn命令不存在"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 检查scmadmin参数是否支持
|
||||
LOG_INFO "检查scmadmin参数是否支持"
|
||||
yarn scmadmin --help &>/dev/null
|
||||
CHECK_RESULT $? 0 0 "scmadmin参数不存在或不支持"
|
||||
|
||||
# 执行scmadmin命令进行测试
|
||||
LOG_INFO "执行yarn scmadmin -help命令"
|
||||
yarn scmadmin -help
|
||||
CHECK_RESULT $? 0 0 "执行yarn scmadmin -help失败"
|
||||
|
||||
LOG_INFO "测试共享缓存管理器管理工具完成"
|
||||
|
||||
# 环境清理
|
||||
LOG_INFO "开始环境清理"
|
||||
if [ $ALREADY_INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "卸载hadoop-yarn"
|
||||
dnf remove -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "卸载hadoop-yarn失败"
|
||||
else
|
||||
LOG_INFO "保持hadoop-yarn安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "环境清理完成,测试脚本结束"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,81 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试运行共享缓存管理器守护进程
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
LOG_INFO "开始测试运行共享缓存管理器守护进程"
|
||||
LOG_INFO "检查环境是否已安装hadoop-yarn相关软件包"
|
||||
if dnf list installed hadoop-yarn > /dev/null 2>&1; then
|
||||
LOG_INFO "环境已安装hadoop-yarn软件包,测试后将保持安装状态"
|
||||
INSTALLED=1
|
||||
else
|
||||
LOG_INFO "环境未安装hadoop-yarn软件包,将在测试过程中安装"
|
||||
INSTALLED=0
|
||||
fi
|
||||
|
||||
LOG_INFO "检查yum源中是否存在hadoop-yarn软件包"
|
||||
if ! dnf list available hadoop-yarn > /dev/null 2>&1; then
|
||||
LOG_ERROR "yum源中不存在hadoop-yarn软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
if [ $INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "安装hadoop-yarn软件包"
|
||||
dnf install -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "安装hadoop-yarn软件包失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "检查共享缓存管理器守护进程命令参数"
|
||||
if ! yarn sharedcachemanager --help > /dev/null 2>&1; then
|
||||
LOG_ERROR "共享缓存管理器守护进程命令参数不存在或不支持"
|
||||
if [ $INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "卸载hadoop-yarn软件包"
|
||||
dnf remove -y hadoop-yarn
|
||||
fi
|
||||
exit 255
|
||||
fi
|
||||
|
||||
LOG_INFO "启动共享缓存管理器守护进程"
|
||||
yarn sharedcachemanager &
|
||||
PID=$!
|
||||
sleep 5
|
||||
|
||||
LOG_INFO "检查共享缓存管理器守护进程是否运行"
|
||||
if ps -p $PID > /dev/null 2>&1; then
|
||||
LOG_INFO "共享缓存管理器守护进程正在运行"
|
||||
else
|
||||
LOG_ERROR "共享缓存管理器守护进程启动失败"
|
||||
CHECK_RESULT 1 0 0 "共享缓存管理器守护进程未运行"
|
||||
fi
|
||||
|
||||
LOG_INFO "停止共享缓存管理器守护进程"
|
||||
kill $PID
|
||||
CHECK_RESULT $? 0 0 "停止共享缓存管理器守护进程失败"
|
||||
|
||||
if [ $INSTALLED -eq 0 ]; then
|
||||
LOG_INFO "卸载hadoop-yarn软件包"
|
||||
dnf remove -y hadoop-yarn
|
||||
CHECK_RESULT $? 0 0 "卸载hadoop-yarn软件包失败"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试运行共享缓存管理器守护进程完成"
|
||||
}
|
||||
|
||||
main "$@"
|
||||
@@ -1,112 +0,0 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
# Copyright (c) 2024 ISCAS .ALL rights reserved.
|
||||
# This program is licensed under Mulan PSL v2.
|
||||
# You can use it according to the terms and conditions of the Mulan PSL v2.
|
||||
# http://license.coscl.org.cn/MulanPSL2
|
||||
# THIS PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND,
|
||||
# EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT,
|
||||
# MERCHANTABILITY OR FIT FOR A PARTICULAR PURPOSE.
|
||||
# See the Mulan PSL v2 for more details.
|
||||
|
||||
# #############################################
|
||||
# @Author : honghua
|
||||
# @Contact : honghua@iscas.ac.cn
|
||||
# @Date : 2026-03-18
|
||||
# @License : Mulan PSL v2
|
||||
# @Desc : 测试运行时间轴读取器服务器
|
||||
# ############################################
|
||||
|
||||
source "$OET_PATH/libs/locallibs/common_lib.sh"
|
||||
|
||||
function run_test() {
|
||||
# 定义日志函数
|
||||
LOG_INFO() {
|
||||
echo "[INFO] $*"
|
||||
}
|
||||
|
||||
LOG_ERROR() {
|
||||
echo "[ERROR] $*" >&2
|
||||
}
|
||||
|
||||
# 定义检查结果函数
|
||||
CHECK_RESULT() {
|
||||
local actual=$1
|
||||
local expect=$2
|
||||
local exit_code=$3
|
||||
local error_msg=$4
|
||||
|
||||
if [ $actual -ne $expect ]; then
|
||||
LOG_ERROR "$error_msg"
|
||||
exit $exit_code
|
||||
fi
|
||||
}
|
||||
|
||||
# 定义SSH命令函数
|
||||
SSH_CMD() {
|
||||
local cmd=$1
|
||||
local node_ip=$2
|
||||
local node_password=$3
|
||||
local node_user=$4
|
||||
|
||||
# 这里假设SSH_CMD已经实现,直接调用
|
||||
sshpass -p "$node_password" ssh -o StrictHostKeyChecking=no "$node_user@$node_ip" "$cmd"
|
||||
}
|
||||
|
||||
# 测试脚本主逻辑
|
||||
main() {
|
||||
# 步骤1:检查环境是否已安装hadoop-yarn-yarn-timelinereader
|
||||
LOG_INFO "步骤1:检查hadoop-yarn-yarn-timelinereader是否已安装"
|
||||
if dnf list installed hadoop-yarn-yarn-timelinereader &>/dev/null; then
|
||||
LOG_INFO "hadoop-yarn-yarn-timelinereader已安装,测试结束后保持安装状态"
|
||||
already_installed=true
|
||||
else
|
||||
LOG_INFO "hadoop-yarn-yarn-timelinereader未安装,将在测试中安装"
|
||||
already_installed=false
|
||||
fi
|
||||
|
||||
# 步骤2:检查yum源中是否有该软件包
|
||||
LOG_INFO "步骤2:检查yum源中是否有hadoop-yarn-yarn-timelinereader软件包"
|
||||
if ! dnf search hadoop-yarn-yarn-timelinereader &>/dev/null; then
|
||||
LOG_ERROR "yum源中未找到hadoop-yarn-yarn-timelinereader软件包"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 步骤3:如果未安装,则安装软件包
|
||||
if [ "$already_installed" = false ]; then
|
||||
LOG_INFO "步骤3:安装hadoop-yarn-yarn-timelinereader软件包"
|
||||
dnf install -y hadoop-yarn-yarn-timelinereader
|
||||
CHECK_RESULT $? 0 255 "安装hadoop-yarn-yarn-timelinereader失败"
|
||||
fi
|
||||
|
||||
# 步骤4:测试运行时间轴读取器服务器
|
||||
LOG_INFO "步骤4:测试运行时间轴读取器服务器"
|
||||
# 假设启动命令为hadoop-yarn-yarn-timelinereader,实际命令可能需要调整
|
||||
if ! command -v hadoop-yarn-yarn-timelinereader &>/dev/null; then
|
||||
LOG_ERROR "hadoop-yarn-yarn-timelinereader命令不存在"
|
||||
exit 255
|
||||
fi
|
||||
|
||||
# 测试命令执行,假设--version参数存在
|
||||
LOG_INFO "测试hadoop-yarn-yarn-timelinereader --version命令"
|
||||
hadoop-yarn-yarn-timelinereader --version
|
||||
CHECK_RESULT $? 0 1 "hadoop-yarn-yarn-timelinereader --version执行失败"
|
||||
|
||||
# 步骤5:清理环境
|
||||
LOG_INFO "步骤5:清理环境"
|
||||
if [ "$already_installed" = false ]; then
|
||||
LOG_INFO "卸载hadoop-yarn-yarn-timelinereader软件包"
|
||||
dnf remove -y hadoop-yarn-yarn-timelinereader
|
||||
CHECK_RESULT $? 0 1 "卸载hadoop-yarn-yarn-timelinereader失败"
|
||||
else
|
||||
LOG_INFO "保持hadoop-yarn-yarn-timelinereader安装状态"
|
||||
fi
|
||||
|
||||
LOG_INFO "测试完成"
|
||||
}
|
||||
|
||||
# 执行主函数
|
||||
main
|
||||
}
|
||||
|
||||
main "$@"
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user