jenkins远程触发构建

jenkins远程触发构建的方法介绍

方式一

设置API Token,其它Basic Auth调用任务构建,此方式适用于脚本调用和代码调用

设置API Token

指定用户->用户页面->设置->API Token

curl调用

1
2
3
4
# jobName就是点进jenkins任务页面,地址栏url里的
curl http://hostname/jobName/build -u userName:APIToken
# 带参数
curl http://hostname/jobName/buildWithParameters -u userName:APIToken

方式二

使用Build Authorization Token Root插件,适合webhook之类的

  • 安装Build Authorization Token Root插件
  • 设置API Token
  • job页面,勾选“触发远程构建 (例如,使用脚本)”,身份验证令牌中填入API Token

直接浏览器输入测试:

1
2
http://hostname/buildByToken/build?job=jobName&token=APIToken
http://hostname/buildByToken/buildWithParameters?job=jobName&token=APIToken

centos安装jenkins遇到的问题

官方网站https://pkg.jenkins.io/redhat-stable/,按着步骤来

第一步

1
sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo

不成功,提示错误是

1
2
3
4
5
Resolving pkg.jenkins.io (pkg.jenkins.io)... 151.101.74.133, 2a04:4e42:1a::645
Connecting to pkg.jenkins.io (pkg.jenkins.io)|151.101.74.133|:443... connected.
ERROR: cannot verify pkg.jenkins.io's certificate, issued by ‘/C=US/O=Let's Encrypt/CN=R3’:
Issued certificate has expired.
To connect to pkg.jenkins.io insecurely, use `--no-check-certificate'.

加上--no-check-certificate再试

1
2
3
sudo wget --no-check-certificate -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
// jenkins.repo会添加到/etc/yum.repos.d/中
cat /etc/yum.repos.d/jenkins.repo

第二步

1
sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key

不成功,提示错误

1
Peer reports incompatible or unsupported protocol version.

需要升级curl包,后再执行

1
yum update -y nss curl libcurl 

安装java

java已安装,跳过

1
2
yum install epel-release
yum install java-1.8.0-openjdk-devel

安装jenkins

1
yum install jenkins

不成功,提示

1
Delta RPMs disabled because /usr/bin/applydeltarpm not installed.

查找applydeltarpm的包

1
yum provides '*/applydeltarpm'
1
2
3
4
5
6
7
Loaded plugins: langpacks                                                                                                                                                                                                                                                                                                                                     
updates/7/x86_64/filelists_db
webtatic/x86_64/filelists_db
deltarpm-3.6-3.el7.x86_64 : Create deltas between rpms
Repo : base
Matched from:
Filename : /usr/bin/applydeltarpm

安装deltarpm

1
yum install -y deltarpm