jenkins - 在 Jenkins 远程 API 作业触发中提供用户名和简短描述

标签 jenkins

我知道如何提供构建参数:

wget --post-data='json={"parameter": {"name": "testparam", "value": "HELLO"}}' http://jenkins/job/Job1/build?delay=0sec

但是,是否可以通过 wget/curl 在 Jenkins 远程 API 构建请求中提供简短的描述和用户名?

它在 json 或 xml 中应该是什么样子?网上有任何手册/指南吗?

我将使用它来解决Trigger dynamic set of jobs中描述的问题。 。我想提供触发作业以及调用作业名称和内部版本号。

最佳答案

您可以考虑使用 Jenkins CLI(http://[jenkins-host]/cli 在浏览器中获取帮助)。您可以为 build CLI 命令指定用户。不过,我不确定开始构建时的简短描述是什么意思。

更新:请参阅 Jenkins Wiki Authenticating Scripted Clients 。我创建了一个用户 foobar (“全名”Foo Bar)并尝试了以下操作:

wget --auth-no-challenge --http-user=foobar --http-password=[apiToken] http://jenkins.yourcompany.com/job/your_job/build

从用户配置页面获取 token 的位置:http://localhost:8081/user/foobar/configure。有效。但用户必须存在。另外,您必须指定 --auth-no-challenge 选项,否则它将以匿名方式启动构建。状态描述为由用户 Foo Bar 启动

另一个更新如果其他一切都失败,您可以考虑以下解决方法:通过 Parameterized Trigger Plugin 启动所有构建带有一个附加的 bool 参数,告诉触发的作业是否运行。如果作业被要求不要运行,它将立即失败并调用“清理”作业,并将构建信息传递给它;然后清理作业将从系统中删除该构建。

关于jenkins - 在 Jenkins 远程 API 作业触发中提供用户名和简短描述,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9228450/

相关文章:

jenkins - 如何从 SCM 中的管道刷新作业配置

java - Tomcat 启动挂起

jenkins - 如何将 Jenkins 中的项目复制到文件夹中?

jenkins - 如何使用 Hudson 类和 groovy 从 jenkins 工作中获得最后一次成功构建

jenkins - Artifactory - 使用 Jenkins Pipeline 脚本上传

performance - AWS EC2 t2.micro 无限 | Jenkins Maven |很慢|构建挂起

azure - 在 Azure 上设置 Jenkins、Docker、Kubernetes ci/cd

jenkins - 为 Jenkins 安装和配置 SonarQube Scanner - 需要澄清

git - 使用 Grunt 构建和使用 Capistrano 部署的 Jenkins 最佳实践是什么?

groovy - Jenkins/Hudson Groovy 脚本控制台 : Flexibility