当前位置: 首页 > 知识库问答 >
问题:

如何将詹金斯用户身份验证详细信息“传递”到使用詹金斯应用编程接口创建作业的脚本?

武向文
2023-03-14

我有一个脚本,通过卷曲HTTP调用删除和重新创建作业,我想摆脱任何硬编码的“用户名:密码”。例如curl-X POST$url--user用户名:密码

考虑事项:

>

API令牌。无法找到如何获取用户令牌,然后将其作为参数传递给脚本,但这可能是一个解决方案。。

共有3个答案

子车新立
2023-03-14

>

  • 使用Jenkins CLI,您不必重新加载所有内容—只需加载作业(更新作业命令)。您不能在CLI、AFAIK中使用令牌-您必须使用密码或密码文件。

    用户的令牌名称可以通过http获得://

    这里有一个关于如何使用API标记的链接(它使用wget,但是curl非常类似)。

  • 公孙和怡
    2023-03-14

    这对我很有用:

    curl -u $username:$api_token -FSubmit=Build 'http://<jenkins-server>/job/<job-name>/buildWithParameters?environment='
    

    API令牌可以从Jenkins用户配置中获得。

    袁阿苏
    2023-03-14

    尝试以下方法:(例如删除作业)

    curl --silent --show-error http://<username>:<api-token>@<jenkins-server>/job/<job-name>/doDelete
    

    api令牌可从http://

     类似资料:
    • 问题内容: 我正在使用ansible在centos7上部署jenkins CI服务器的项目,并且在使用ansible从xml模板创建jenkins作业时遇到了问题。 到目前为止,一切工作正常,但现在我希望能够创建作业,并使用ansible从xml文件为它们提供一些基本配置。我的解决方案是jenkins-cli的以下命令: 在centos7框中手动输入时,此方法非常有效,但是当我将其放入ansibl

    • 有没有可能让詹金斯使用真正的浏览器而不是无头浏览器?我正在运行一些用TestNG编写的测试(使用Selenium webdriver)。当我运行testng时。在Eclipse中,浏览器启动并运行测试。但当我使用Jenkins并用maven运行测试时,它不会启动任何浏览器。

    • 我有一个 Jenkins Job DSL 种子作业,它调用了几个管道作业,例如 job1.groovy和job2.groovy是标准的Jenkinsfile样式管道。 我想在这些作业中传递一些常用的地图。这些内容可能因环境而异,例如目标服务器、凭据名称。 类似于: 我可以在我的种子作业中定义一个映射,然后在我的管道作业中作为映射进行传递和访问吗?

    • 问题内容: 我正在考虑最近使用Jenkins管道脚本,一个问题是我不知道创建内部可重用utils代码的明智方法,想象一下,我有一个通用功能,该功能将被许多管道作业使用,所以我希望创建一个可以将其注入作业类路径的容器。 我注意到詹金斯(Jenkins)在全局库中有一个类似的概念,但是我对此插件的关注是: 由于它是一个插件,因此我们需要通过jenkins插件管理器进行安装/升级,然后可能需要重新启动才

    • 我试图从流水线步骤中运行一个job-dsl脚本。一般来说,这应该是可能的,正如这里所描述的,在管道步骤中添加了以下代码片段: null 我如何知道脚本的真实位置,以及如何指定一个jobDsl作为目标,它本身位于不同的repo中?还是我完全走错了方向? 编辑 经过进一步的研究,共享库存储库被签出到“真实”工作区旁边的一个目录中,后缀为@libs,这似乎是事实。所以我认为使用以下方法是个好主意: 与此

    • 问题内容: 如何轻松地将Jenkins与qUnit集成?我将使用真正的浏览器(如firefox和chrome)运行测试。我的服务器在RedHat 6.1 Linux上运行。我想我都需要插件/库,但我仍然不知道如何使其工作。我第一次与Jenkins合作(在服务器端)。 //编辑: 如果有人也可以共享想法如何构建覆盖率报告,那将是很棒的。 提前致谢 :)。 问题答案: 说詹金斯和QUnit只是难题的一