开发者社区> 千往> 正文

通过jenkins API去build一个job

简介: 背景 查看jenkins的api 直接访问 JENKINS_URL/job/JOB_NAME/api/ 就可以查看jenkins的api build一个job的话,是POST请求 JENKINS_URL/job/JOB_NAME/build 会提示: 这是jenkins的安全策略导致的,需要传递一个crumb    解决方法 有两个方案, 第一种方案: 1.
+关注继续查看

背景

查看jenkins的api

直接访问 JENKINS_URL/job/JOB_NAME/api/ 就可以查看jenkins的api

build一个job的话,是POST请求 JENKINS_URL/job/JOB_NAME/build

会提示:

这是jenkins的安全策略导致的,需要传递一个crumb

 

 解决方法

有两个方案,

第一种方案:

1. 先去掉jenkins的安全策略设置,如图,去掉勾选

在jenkins全局安全设置中 取消勾选 “防止跨站点请求伪造(Prevent Cross Site Request Forgery exploits)”

2. 允许anonymous 访问,如下图,勾选上

3. 设置token,token是针对指定job的,所以去到job中去设置

那么就可以通过POST请求访问 JENKINS_URL/job/test1/build?token=TOKEN_NAME 触发这个job了

 

 

第二种方案: 安全这块不用去掉防止跨站点请求伪造,通过传递crumb来实现;但允许anonymous 访问还是要设置的

 POST请求的时候带上这个Jenkins-Crumb(推荐这种方法)

 访问 JENKINS_URL/crumbIssuer/api/json 就可以获取到你的crumb,当然不同的客户端去访问得到的不一样

 

备注

将文中的JENKINS_URL替换成你自己的jenkins地址,

JOB_NAME替换成job的名字;

TOKEN_NAME 替换成你自己写的token值,如我上面的jwentest1

虽千万人,吾往矣!

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Jenkins创建多分支job
Jenkins创建多分支job
37 0
Jenkins 踩坑 | job 创建、参数化、定时构建及时区偏差问题解决
Jenkins 踩坑 | job 创建、参数化、定时构建及时区偏差问题解决
87 0
Jenkins(5)- 新建一个job并快速体验完整流程
Jenkins(5)- 新建一个job并快速体验完整流程
73 0
Jenkins 踩坑 | job 创建、参数化、定时构建及时区偏差问题解决
1)启动 Jenkins 后在首页点击"开始创建一个新任务"。 2)输入任务名称,选择自由风格,点击“确定”。 1) 任意输入描述,然后勾选"丢弃旧的构建", 在"保持构建的最大个数中"输入 3。 1)勾选"参数化构建过程",选择添加"字符参数" 2)设置参数名称、默认值和描述 1)在"构建触发器"中勾选"定时构建",日程表中输入H2/ * * * *,表示每两分钟构建一次。 1)在构建中选择执
103 0
Jenkins 踩坑 | job 创建、参数化、定时构建及时区偏差问题解决
1)启动 Jenkins 后在首页点击"开始创建一个新任务"。 2)输入任务名称,选择自由风格,点击“确定”。 1) 任意输入描述,然后勾选"丢弃旧的构建", 在"保持构建的最大个数中"输入 3。 1)勾选"参数化构建过程",选择添加"字符参数" 2)设置参数名称、默认值和描述 1)在"构建触发器"中勾选"定时构建",日程表中输入H2/ * * * *,表示每两分钟构建一次。 1)在构建中选择执
56 0
Jenkins 踩坑 | job 创建、参数化、定时构建及时区偏差问题解决
1)启动 Jenkins 后在首页点击"开始创建一个新任务"。 2)输入任务名称,选择自由风格,点击“确定”。 1) 任意输入描述,然后勾选"丢弃旧的构建", 在"保持构建的最大个数中"输入 3。 1)勾选"参数化构建过程",选择添加"字符参数" 2)设置参数名称、默认值和描述 1)在"构建触发器"中勾选"定时构建",日程表中输入H2/ * * * *,表示每两分钟构建一次。 1)在构建中选择执
100 0
jenkins 批量添加任务job
最近重构一个Scrapy爬虫项目,需要将300个spider的调度任务在jenkins中添加。这已经超过了手动一个一个添加任务的极限,是时候要借助工具批量添加了。
8322 0
Java 调用Jenkins API远程触发部署
第一步:引入相关的包 // Jenkins-client compile group: 'com.offbytwo.jenkins', name: 'jenkins-client', version: '0.
4929 0
Jenkins- job之间传参
前言: 本文介绍插件: Parameterized Trigger plugin的具体使用方法。 一、插件介绍 Parameterized Trigger plugin插件可以让你在构建完成时触发新的Job构建,并以各种方式为新Job构建指定参数。
1474 0
+关注
千往
不想当开发的产品不是好测试
文章
问答
文章排行榜
最热
最新
相关电子书
更多
CUDA Math API
立即下载
阿里云 API 精选手册(Alibaba Cloud API Playbook)
立即下载
重保场景及API安全指南
立即下载