终端curl调用jenkins自动化持续集成
1.curl
curl是利用URL语法在命令行方式下工作的开源文件传输工具。它被广泛应用在Unix、多种Linux发行版中,并且有DOS和Win32、Win64下的移植版本。
1.1 获取url指向的页面/资源文件;如果URL指向的是文件或者图片等资源文件,资源文件可以直接下载到本地
curl http://www.baidu.com
1.2提交GET请求
curl "wwww.baidu.com?wd=jenkins”
1.3提交POST请求
curl -d "wd=jenkins” www.baidu.com
2.jenkins
2.1运行job
2.1.1无参任务
curl -X POST http://localhost:8080/jenkins/job/plugin%20demo/build --user admin:admin
2.1.2含参任务
不设置参数/使用默认参数
curl -X POST http://localhost:8080/jenkins/job/commandTest/buildWithParameters --user admin:admin
2.1.3设置参数方法1
curl -X POST http://localhost:8080/jenkins/job/commandTest/buildWithParameters -d port=80
2.1.4设置参数方法2
curl -X POST http://localhost:8080/jenkins/job/commandTest/buildWithParameters -d port=80 --data-urlencode json='"{\"parameter\": [{\"name\": \"port\", \"value\": \"80\"}]}”'
2.1.5多参数
http://localhost:8080/jenkins/job/commandTest/buildWithParameters -d param1=value1¶m2=value
2.2 创建job
2.2.1 需创建目录
1).创建job目录
~/.jenkins/jobs/jobfromcmd
2).创建config.xml文件(可从其他工程中复制)
3).运行命令
curl -X POST http://localhost:8080/jenkins/createItem?name=jobfromcmd --user admin:admin --data-binary "@config.xml" -H "Content-Type: text/xml”
2.2.2 不需创建目录
1).创建config.xml文件(可从其他工程中复制)
2).运行命令(在config.xml同一目录下)
curl -X POST http://localhost:8080/jenkins/createItem?name=jobfromcmd --user admin:admin --data-binary "@config.xml" -H "Content-Type: text/xml”
2.2.3直接使用控制台,不需创建xml文件(将xml内容写入控制台中运行)
echo '<?xml version="1.0" encoding="UTF-8"?><project>…</project>' | curl -X POST -H 'Content-type:text/xml' -d @- http://localhost:8080/jenkins/createItem?name=jobfromcmd
2.3 删除job
curl -X POST http://localhost:8080/jenkins/job/jobfromcmd/doDelete
2.4 查询job的状态
curl --silent ${JENKINS_SERVER}/job/JOB_NAME/lastBuild/api/json
2.5 自动disable Project:
curl --user ${UserName}:${PASSWORD} -o /dev/null --data disable JENKINS_URL/job/JOBNAME/disable
2.6获取build的num
curl --silent ${JENKINS_SERVER}/job/JOB_NAME/lastBuild/buildNumber
2.7获取最近成功的build的num
curl --silent ${JENKINS_SERVER}/job/JOB_NAME/lastStableBuild/buildNumber
更多curl参考:
https://curl.haxx.se/docs/manpage.html
https://curl.haxx.se/docs/manual.html
终端curl调用jenkins自动化持续集成的更多相关文章
- JMeter+ant+jenkins自动化持续集成
一.ant安装配置 1.官网下载地址:http://ant.apache.org/bindownload.cgi 对应的操作系统选择对应的版本下载,本文以windows为列,下载后解压到本地 2.设置 ...
- 使用jenkins实现持续集成
一.jenkins 介绍 它是一个自动化的周期性的集成测试过程,从检出代码.编译构建.运行测试.结果记录.测试统计等都是自动完成的,无需人工干预: 它需要有专门的集成服务器来执行集成构建: 它需要有代 ...
- [转]使用jenkins实现持续集成
本文转自:https://www.cnblogs.com/zishengY/p/7170656.html 一.jenkins 介绍 它是一个自动化的周期性的集成测试过程,从检出代码.编译构建.运行测试 ...
- 自动化持续集成Jenkins
自动化持续集成Jenkins 使用Jenkins配置自动化构建http://blog.csdn.net/littlechang/article/details/8642149 Jenkins入门总结h ...
- Jmeter(二十八)_Docker+Jmeter+Gitlab+Jenkins+Ant(容器化的接口自动化持续集成平台)
这套接口自动化持续集成环境已经部署差不多了,现在说说我的设计思路 1:利用Docker容器化Gitlab,Jenkins,Jmeter,Ant,链接如下 Docker_容器化gitlab Docker ...
- Docker——Jenkins + Git + Registry构建自动化持续集成环境(CI/CD)
前言 在互联网时代,对于每一家公司,软件开发和发布的重要性不言而喻,目前已经形成一套标准的流程,最重要的组成部分就是持续集成(CI)及持续部署.交付(CD). 本文基于Jenkins+Docker+G ...
- docker+headless+robotframework+jenkins实现web自动化持续集成
在Docker环境使headless实现web自动化持续集成 一.制作镜像 原则:自动化测试基于基础制作镜像 命令:docker run --privileged --name=$1 --net=ho ...
- 用MSBuild和Jenkins搭建持续集成环境(2)
http://www.infoq.com/cn/articles/MSBuild-2 作者 Mustafa Saeed Haji Ali ,译者 李剑 发布于 2012年10月23日 | 注意: ...
- jenkins+docker持续集成实验
在互联网时代,对于每一家公司,软件开发和发布的重要性不言而喻,目前已经形成一套标准的流程,最重要的组成部分就是持续集成(CI)及持续部署.交付(CD).本文基于Jenkins+Docker+Git实现 ...
随机推荐
- js中采用词法作用域
所谓的 词法( 代码 )作用域, 就是代码在编写过程中体现出来的作用范围. 代码一旦写好, 不用执行, 作用范围就已经确定好了. 这个就是所谓词法作用域. 在 js 中词法作用域规则: 1.函数允许访 ...
- 解决eclipse中Tomcat服务器的server location选项不能修改的问题
在Eclipse菜单栏中选择window — show view — server 可以看到服务的面板,服务面板中可看到已配置的Tomcat以及Tomcat下的项目 双击tomca进入设置界面,如果看 ...
- 转:// 再说 Oracle RAC services
应用程序工作负载在Oracle 10g中可以被定为services,也称之为服务,能够在单实例中使用,也能够在RAC中单独使用和管理.因此整个数据库负载能够被分割为多个不同的services,通过管理 ...
- Plotagraph软件五分钟光速速成傻瓜教程
http://bbs.dji.com/thread-144203-1-1.html 让照片变成动态的
- python3 day01 大纲
1. 简介python 龟叔 89年 人工智能 2. 特点 优点: 简单, 明确, 优雅,跨平台 缺点: 慢 解释型编程语言 分类: 解释型: 一行一行的把代码进行翻译. 执行效率比较低 优势: 跨平 ...
- docker安装与卸载
文章转自:https://www.cnblogs.com/yufeng218/p/8370670.html (EE安装) https://blog.csdn.net/jxyzh11/article/ ...
- Qt Creator中如何选择某个子项目为启动项目
Qt Creator中的子目录项目类似于Visual Studio中的Solution(解决方案),可以用来管理多个子项目.但是在Qt Creator IDE中由不能像Visual Studio中那样 ...
- 【Luogu P1074】靶形数独
Luogu P1074 题意:给一个数独,问怎么填会使每个位置填的数乘以它的权值得到的和最大.其中每个位置的权值在题面中给出了. 思路:首先我们考虑搜索.由于我们不可能搜每个格子取太多的数,所以我们从 ...
- ubuntu下修改网卡名称
Ubuntu下把网卡eth0修改为eth1的步骤: 1.打开配置文件 /etc/udev/rules.d/70-persistent-net.rules,文件内容如下: # This file was ...
- CF1097F Alex and a TV Show 莫比乌斯反演、bitset
传送门 发现自己对mobius反演的理解比较浅显-- 首先我们只需要维护每一个数的出现次数\(\mod 2\)的值,那么实际上我们只需要使用\(bitset\)进行维护,每一次加入一个数将其对应次数异 ...