Jenkins远程构建
通过URL进行远程构建
通过URL进行触发
JENKINS_URL/job/job名称/build?token=TOKEN_NAME (不带参数)
JENKINS_URL/job/job名称/buildWithParameters?token=TOKEN_NAME(带参数)
解决CSRF保护导致无法访问URL问题
1、关闭CSRF保护
2、获取crumb作为header访问URL
为通过CSRF保护,需要获取一个 CSRF protection token,然后再将这个token作为HTTP请求的header发送过去
CSRF token获取地址:
http://Jenkins地址/crumbIssuer/api/xml?xpath=(//crumb)
http://Jenkins地址/crumbIssuer/api/json
使用以下shell脚本可以进行远程触发
CRUMB=$(curl -u jenkins用户名:api_token ‘获取CSRF_crumb地址’)
curl -u Jenkins用户名:api_token –H "$CRUMB" –X POST "远程构建地址"
3、使用python-selenium模拟浏览器登录获取cookies,带cookies访问链接
import sys
import os
import urllib.request
import requests,json,time,traceback
from selenium import webdriver
def login(url, user, pwd