jenkins - Jenkins:在 groovy scrpt 中运行 curl 命令
问题描述
我有一个要求,我需要将 jenkins 从站的状态发送到 influxdb。为此,我需要从 Jenkins Groovy 脚本运行 curl 命令。
我的脚本如下所示:
int value=0;
for (Node node in Jenkins.instance.nodes) {
if (!node.toComputer().online){
value=1;
}
else{
value=0;
}
curl -i -XPOST http://localhost:8086/write?db=jenkins_db&u=user&p=pass --data-binary 'mymeas,tag=$node.nodeName status=$value'
但是运行脚本后的值不会出现在 influxdb 中。知道这里可能有什么问题吗?
PS我也试过
def response = [ 'bash', '-c', "curl", "-i", "-XPOST", "http:/localhost:8086/write?db=jenkins_db&u=user&p=pass", "--data-binary", "\'mymeas tag=$node.nodeName status=$value"\' ].execute().text
解决方案
你只需要回显你的 curl 命令
echo curl -i -XPOST http://localhost:8086/write?db=jenkins_db&u=user&p=pass --data-binary 'mymeas,tag=$node.nodeName status=$value'
推荐阅读
- python-3.x - 如何抓取 pdf 文件以制作 DF
- sapui5 - 何时加载 Component.js?
- python-3.x - 如何在 sklearn LogisticRegression 函数中计算 L2(岭)惩罚?
- pug - 玉的时候怎么放两个链接?
- android - 如何将领域数据同步到 Amazon Dynamo Db(云)
- c# - 为什么要执行一个新线程而不创建一个新线程?
- android - 回收站视图中的黑色圆边
- java - How to Export user libraries with project files to be able to compile the project on another pc
- shell - 如何在运行 shell 脚本时摆脱“= 0”文件的创建?
- c# - 如何以 DRY 方式使用合并运算符;当赋值为空时,保留自己的值