jenkins - 检查 Jenkins 节点是否为作业在线,否则发送电子邮件警报
问题描述
让 Jenkins 作业专门用于特殊节点,如果由于节点脱机而无法运行作业,我希望收到通知。是否可以设置此功能?
换句话说,如果在节点离线(“待定”作业状态)时已启动作业,则默认的 Jenkins 行为是等待节点。在这种情况下,我想使工作失败(或根本不开始)并发送“节点离线”邮件。
该节点检查内容应该在作业内部,因为该作业很少执行,并且我不在乎该节点在不需要该作业时是否处于脱机状态。我已经尝试过外部节点监视插件,但它并不能完全满足我的要求 - 每次节点离线时它都会触发电子邮件,在我的情况下它是多余的。
解决方案
我在这里找到了答案。您可以添加调用curl命令并处理结果的命令行或 PowerShell 块
curl --silent $JENKINS_URL/computer/$JENKINS_NODENAME/api/json
结果 json 包含具有 true/false 值的离线属性
推荐阅读
- asp.net-core - ASP.NET Core 3.1 - OData 循环
- css - Bookdown bs4_book - 更改 h3 颜色
- angular - Angular/Typescript/grpc-web:如何通过 Https/SSL 传输使用 grpc 服务
- sql-server - EF Core - 设计属于其他实体A的数据库实体A
- python - 使用 PYROSM 迭代和附加每个多边形的节点和边
- java - 无法实现 org.eclipse.persistence.internal.libraries.asm.ClassVisitor
- css - 如何在 vuejs 范围样式中使用 ::before 之类的伪选择器
- php - Vimeo App 使用 PHP 从客户端设备直接上传
- ssh - Vault 的 SSH-CA - 仅限于特定目标主机的签名证书
- c++ - c ++导出具有dll代理的特定地址