如何通过Jenkins Pipeline的YML文件每小时自动运行自动化脚本?
Jenkins Pipeline 实现每小时自动运行脚本的配置修正
你的核心需求是每小时触发Pipeline运行,当前代码的cron表达式是正确的(0 * * * *代表每小时整点执行),但有两处细节需要修正才能正常工作:
- Agent标签格式问题:包含空格的节点标签必须用引号包裹,否则Jenkins会解析出错
- 补充脚本执行步骤:当前
Test阶段仅输出日志,需要添加实际运行自动化脚本的命令
修正后的完整Pipeline代码如下:
pipeline{ agent{ label 'BMTC AVLS' // 带空格的标签需用引号包裹 } triggers{ cron('0 * * * *') // 每小时整点触发,该表达式配置正确 } stages{ stage('运行自动化脚本') { steps { script{ echo "开始执行AVLS自动化脚本..." // 替换为你的实际脚本执行命令,示例: // sh './automation/run_test.sh' # Linux/macOS环境执行shell脚本 // bat 'automation\\run_test.bat' # Windows环境执行批处理脚本 } } } } post { always { echo 'Pipeline执行完成' } } }
额外注意事项:
- 确保标签为
BMTC AVLS的Jenkins节点已配置好脚本运行所需的依赖环境(如Python、测试框架等) - 脚本路径需使用节点上的绝对路径或相对于Workspace的相对路径
- 保存Pipeline后,可手动触发一次运行,或等待下一个整点,Jenkins才会正式启用定时触发器
内容的提问来源于stack exchange,提问作者Pooja Khandelwal
相关产品推荐
相关产品推荐

