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&param2=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自动化持续集成的更多相关文章

  1. JMeter+ant+jenkins自动化持续集成

    一.ant安装配置 1.官网下载地址:http://ant.apache.org/bindownload.cgi 对应的操作系统选择对应的版本下载,本文以windows为列,下载后解压到本地 2.设置 ...

  2. 使用jenkins实现持续集成

    一.jenkins 介绍 它是一个自动化的周期性的集成测试过程,从检出代码.编译构建.运行测试.结果记录.测试统计等都是自动完成的,无需人工干预: 它需要有专门的集成服务器来执行集成构建: 它需要有代 ...

  3. [转]使用jenkins实现持续集成

    本文转自:https://www.cnblogs.com/zishengY/p/7170656.html 一.jenkins 介绍 它是一个自动化的周期性的集成测试过程,从检出代码.编译构建.运行测试 ...

  4. 自动化持续集成Jenkins

    自动化持续集成Jenkins 使用Jenkins配置自动化构建http://blog.csdn.net/littlechang/article/details/8642149 Jenkins入门总结h ...

  5. Jmeter(二十八)_Docker+Jmeter+Gitlab+Jenkins+Ant(容器化的接口自动化持续集成平台)

    这套接口自动化持续集成环境已经部署差不多了,现在说说我的设计思路 1:利用Docker容器化Gitlab,Jenkins,Jmeter,Ant,链接如下 Docker_容器化gitlab Docker ...

  6. Docker——Jenkins + Git + Registry构建自动化持续集成环境(CI/CD)

    前言 在互联网时代,对于每一家公司,软件开发和发布的重要性不言而喻,目前已经形成一套标准的流程,最重要的组成部分就是持续集成(CI)及持续部署.交付(CD). 本文基于Jenkins+Docker+G ...

  7. docker+headless+robotframework+jenkins实现web自动化持续集成

    在Docker环境使headless实现web自动化持续集成 一.制作镜像 原则:自动化测试基于基础制作镜像 命令:docker run --privileged --name=$1 --net=ho ...

  8. 用MSBuild和Jenkins搭建持续集成环境(2)

    http://www.infoq.com/cn/articles/MSBuild-2   作者 Mustafa Saeed Haji Ali ,译者 李剑 发布于 2012年10月23日 | 注意:  ...

  9. jenkins+docker持续集成实验

    在互联网时代,对于每一家公司,软件开发和发布的重要性不言而喻,目前已经形成一套标准的流程,最重要的组成部分就是持续集成(CI)及持续部署.交付(CD).本文基于Jenkins+Docker+Git实现 ...

随机推荐

  1. 转载 锁机制与原子操作 <第四篇>

    一.线程同步中的一些概念 1.1临界区(共享区)的概念 在多线程的环境中,可能需要共同使用一些公共资源,这些资源可能是变量,方法逻辑段等等,这些被多个线程共用的区域统称为临界区(共享区),临界区的资源 ...

  2. day02---编程语言、python解释器以及变量

    计算机编程语言分类: 机器语言 直接用计算机能理解的二进制指令编写程序,来直接控制硬件.(用机器语言编写的程序称为目标程序) 优点:执行效率高,属于计算机最底层语言 缺点:开发效率低.跨平台性差 汇编 ...

  3. 稳压二极管&TVS二极管

    稳压二极管 稳压二极管利用的特性是:二极管被反向击穿之后,随着电流的变化,稳压二极管两端电压维持不变的特性: 普通二极管反向击穿后就坏了,但是稳压二极管却可以恢复,而且在被击穿后处在正常的工作状态: ...

  4. 人人都是产品经理<2.0>

    之前有看过<人人都是产品经理1.0>,还认真的做了笔记,看完后不久,得知作者在第一版的内容基础上,升华性的出了第二版,即<人人都是产品经理2.0>.注:第一版和第二版跨度有6年 ...

  5. Java原子类AtomicInteger实现原理的一点总结

    java原子类不多,包路径位于:java.util.concurrent.atomic,大致有如下的类: java.util.concurrent.atomic.AtomicBoolean java. ...

  6. Zephyr的Shell

    1 前言 通过Shell可以跟子系统打交道,子系统也可以提供很多接口供外部设置和读取信息. 下面就Shell的Kconfig配置.Shell的使用以及如何新建一个Shell命令展开. 可以说Shell ...

  7. 交换左Ctrl键和Caps lock键

    Windows 10 Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control ...

  8. tornado学习篇(第二部)

    执行字符串表示的函数,并为该函数提供全局变量 本篇的内容从题目中就可以看出来,就是为之后剖析tornado模板做准备,     #!usr/bin/env python #coding:utf-8 n ...

  9. Elastic 技术栈之快速入门

    Elastic 技术栈之快速入门 概念 ELK 是什么 ELK 是 elastic 公司旗下三款产品 ElasticSearch .Logstash .Kibana 的首字母组合. ElasticSe ...

  10. 如何从现有版本1.4.8升级到element UI2.0.11

    现在的项目是定死的依赖以下几个核心组件的版本: vue 2.3.3 element-ui 1.4.8 vue-template-comiler 2.3.3 将以前定死的依赖修改为 vue ^2.3.3 ...