标签: jenkins-api

Jenkins API - 使用特定 GIT 存储库查找所有工作

知道如何查询 jenkins 来获取运行特定 GIT 存储库的所有作业的列表吗?或者列出所有作业以及他们正在使用的 GIT 源代码?

谢谢,

git jenkins jenkins-api

5
推荐指数
1
解决办法
3882
查看次数

如何将 Jenkins REST API 与 JENKINS_SERVER_COOKIE 一起使用?

我的目标是在 Jenkins 运行的脚本中询问 Jenkins 服务器的问题(特别是当它在远程代理上运行时)。我想在 REST API 中使用 Perl 或 Python 脚本。我想问一下Jenkins服务器知道的数据。

在我的特定情况下,我想要一个不同项目的最近成功构建的构建显示名称。我想在没有用户名/密码凭据的情况下执行此操作。JENKINS_SERVER_COOKIE当我将 Jenkins REST API 用于基于 GET 的请求时,我希望能够将环境变量用作凭据作为 cookie 或标头。

那可能吗?如果不是,环境变量是做什么JENKINS_SERVER_COOKIE用的?

谢谢!

jenkins jenkins-api

5
推荐指数
1
解决办法
914
查看次数

如何通过API检索Jenkins作业的所有先前构建?

我正在构建一个python脚本来为Jenkins作业提取构建历史数据.我已成功使用Requests库来检索json输出,输入数据帧并报告.

我注意到它只是拉动了最后的100个版本,看起来像默认版本.我正在测试一个基本的curl调用,它可以很好地检索最后100个,看看我如何检索所有构建.我一直在搜索谷歌并找到一个说要添加fetch_all_builds = True,但仍然只有100.

有谁知道如何通过API调用从作业中请求所有构建?

谢谢

python jenkins jenkins-api

5
推荐指数
1
解决办法
2841
查看次数

如何通过任何脚本获取 Jenkins 中的管理员用户列表?

我正在尝试获取管理员用户列表的列表以及 Jenkins 中的用户及其权限级别。

任何人都可以帮我提供任何可用的脚本吗?

automation jenkins jenkins-cli jenkins-api

5
推荐指数
1
解决办法
5486
查看次数

如何获取在特定时间运行的 Jenkins 构建列表?

我现在的詹金斯有很多工作。不同的文件夹,每个文件夹都有多个作业。我最近看到一个 Jenkins slave(它是自动缩放的)在特定时间向另一台服务器发送了太多请求。但是,如果不手动检查它们,我无法找到在特定时间运行哪些构建。有没有办法使用 API/Groovy 脚本获取这些信息?

jobs jenkins jenkins-slave jenkins-api

5
推荐指数
1
解决办法
4911
查看次数

请澄清:带有 CSRF 的 Jenkins REST API 需要 user:PASSWORD 的碎屑,但不需要 user:API_TOKEN 的碎屑?

我发现启用 CSRF 保护后,我可以发出带有 crumbs 标头的发布请求并用于username:PASSWORD基本身份验证标头:

String basic = "<username>:<PASSWORD>";
HttpURLConnection c = (HttpURLConnection) new URL("https://host.com/jenkins/quietDown").openConnection();
c.setInstanceFollowRedirects(false);
c.setRequestMethod("POST");
c.addRequestProperty("Jenkins-Crumb", "<CRUMB>");
c.addRequestProperty("Authorization", "Basic " + Base64.getEncoder().encodeToString(basic.getBytes()));
c.getInputStream().close();
Run Code Online (Sandbox Code Playgroud)

或用于username:APITOKEN基本身份验证标头,在这种情况下,不需要 crumbs 标头:

String basic = "<username>:<APITOKEN>";
HttpURLConnection c = (HttpURLConnection) new URL("https://host.com/jenkins/quietDown").openConnection();
c.setInstanceFollowRedirects(false);
c.setRequestMethod("POST");
c.addRequestProperty("Authorization", "Basic " + Base64.getEncoder().encodeToString(basic.getBytes()));
c.getInputStream().close();
Run Code Online (Sandbox Code Playgroud)

问题:

  • 这是预期用途吗(用户名:APITOKEN,不带面包屑标头)?文档和现有的 SO 答案很模糊。

使用 Jenkins 2.164.3 和 Java 8。

csrf jenkins jenkins-api csrf-token

5
推荐指数
0
解决办法
704
查看次数

如何以编程方式列出 jenkins 作业脚本路径

我想创建一个在 jenkins 控制台上运行的 groovy 脚本,以列出作业定义以及使用的存储库和脚本路径(jenkinsfile),输出如下:

作业名称 -> git 仓库 -> 脚本路径

到目前为止,我能够列出作业名称和 git 存储库,但找不到获取脚本路径的方法。它似乎没有包含在 GitSCM 插件中,但我找不到通过 WorkflowJob 获取它的方法。这是我当前的代码:

Jenkins.instance.getAllItems(Job.class).each{
  jobName = it.getName()
  if(it instanceof FreeStyleProject){
   return
  }
  scm = it.getTypicalSCM();
  if (scm instanceof hudson.plugins.git.GitSCM) {
    scm.getRepositories().each{
        it.getURIs().each{
            println(jobName +"-> "+ it.toString());
        }
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

如何检索脚本路径?

jenkins jenkins-groovy jenkins-pipeline jenkins-api

5
推荐指数
1
解决办法
287
查看次数

Python jenkinsapi忽略证书

最近,我将詹金斯变成了https。这是我使用jenkinsapi的代码:

import jenkinsapi
from jenkinsapi.jenkins import Jenkins
from jenkinsapi.utils.requester import Requester
import requests
url = 'https://jenkinsd:443'
username = 'MyUser'
password = '123'
requests.packages.urllib3.disable_warnings()
jenkins = Jenkins(url, username, password)
jobs = jenkins.get_jobs()
for jobName in jobs:
    print(jobName)
Run Code Online (Sandbox Code Playgroud)

我收到此错误:

requests.exceptions.SSLError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:600)
Run Code Online (Sandbox Code Playgroud)

我试过了:

jenkins = Jenkins(url, requester=Requester(username, password, baseurl=url, ssl_verify=False))
Run Code Online (Sandbox Code Playgroud)

要么:

jenkins = jenkinsapi.jenkins.Jenkins(url, username, password, requester =Requester(username, password, ssl_verify=False))
Run Code Online (Sandbox Code Playgroud)

我收到此错误:

File "D:\Python34\lib\site-packages\requests-2.7.0-py3.4.egg\requests\adapters.py", line 415, in send
raise ConnectionError(err, request=request)
requests.exceptions.ConnectionError: ('Connection aborted.', ConnectionRefusedError(10061, 'No connection could be …
Run Code Online (Sandbox Code Playgroud)

python jenkins-api

3
推荐指数
1
解决办法
3820
查看次数

Jenkins:是否有API可以远程查看测试报告?

我正在使用詹金斯作为CI工具。我使用Restful api远程构建作业,但我也不知道如何远程获取测试结果。如果有人知道解决方案,我将不胜感激

java junit jenkins jenkins-api

3
推荐指数
1
解决办法
7714
查看次数

如何通过api获取所有jenkins用户

我正在尝试使用 api 获取 jenkins 中的所有用户。

例如,我在 postman 中输入以下命令,它向我显示 jenkins 中的所有作业。

网址 =192.168.195.150:8080/api/json?pretty=true

结果:

{

    "_class": "hudson.model.Hudson",

    "assignedLabels": [

        {
            "name": "master"
        }
    ],
    "mode": "NORMAL",
    "nodeDescription": "the master Jenkins node",
    "nodeName": "",
    "numExecutors": 2,
    "description": null,
    "jobs": [
        {
            "_class": "hudson.model.FreeStyleProject",
            "name": "Apache_kafka_Consumer_Info",
            "url": "http://192.168.192.198:8080/job/Apache_kafka_Consumer_Info/",
            "color": "blue"
        },
        {
            "_class": "hudson.model.FreeStyleProject",
            "name": "Apache_Kafka_Zookeeper_Start",
            "url": "http://192.168.192.198:8080/job/Apache_Kafka_Zookeeper_Start/",
            "color": "red"
        },
        {
            "_class": "hudson.model.FreeStyleProject",
            "name": "Apache_Kafka_Zookeeper_Status",
            "url": "http://192.168.192.198:8080/job/Apache_Kafka_Zookeeper_Status/",
            "color": "blue"
        },
        {
            "_class": "hudson.model.FreeStyleProject",
            "name": "AWS_Lambda",
            "url": "http://192.168.192.198:8080/job/AWS_Lambda/",
            "color": "blue"
        },
        { …
Run Code Online (Sandbox Code Playgroud)

api jenkins jenkins-plugins postman jenkins-api

2
推荐指数
1
解决办法
1万
查看次数

访问Jenkins v2.73.1 crumbIssuer REST API时获取404

我尝试调用Jenkins crumIssuer API,但出现以下错误。使用Jenkins 2.19.1版,而不使用2.73.1版

<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8"/>
<title>Error 404 Not Found</title>
</head>
<body><h2>HTTP ERROR 404</h2>
<p>Problem accessing /crumbIssuer/api/json. Reason:
<pre>    Not Found</pre></p><hr><a href="http://eclipse.org/jetty">Powered by Jetty:// 9.4.z-SNAPSHOT</a><hr/>

</body>
</html>
Run Code Online (Sandbox Code Playgroud)

jenkins jenkins-api

1
推荐指数
1
解决办法
3420
查看次数

Java泛型:此模式的意图是什么?

我已经在Jenkins API中看到了这一点,并且我想了解这种模式的目的。我无法掌握的意义JobTRunT

Class Run<JobT extends Job<JobT,RunT>,RunT extends Run<JobT,RunT>>

来自:https : //javadoc.jenkins.io/hudson/model/Run.html

java generics jenkins-api

1
推荐指数
1
解决办法
70
查看次数

使用 Javascript 启动 Jenkins 工作

有没有人有使用身份验证和 Java Script 参数化开始 jenkins 工作的示例?

它就像一个 curl 帖子,但我不确定如何准确地做到这一点,而且我找不到任何传递用户名和令牌以及参数的示例。

javascript jenkins jenkins-api

-1
推荐指数
1
解决办法
1789
查看次数