Jenkins API curl创建job、执行构建

1、通过configxml创建job

每个job均有一个config.xml,包含了关于这个job的配置信息,如SVN、pom.xml位置等。在界面上也就是操作这一步所产生的文件

Jenkins API curl创建job、执行构建_第1张图片


通过config.xml来创建job时

首先在$jenkins_home/jobs文件夹下创建以你所要创建的job的名字命名的文件夹,如我要创建一个名称为111的job

Jenkins API curl创建job、执行构建_第2张图片

其次,进入111文件夹创建config.xml,并编写该文件。关于该文件的格式参考通过界面新建的job中该文件的配置,两者并无任何区别,我暂时拷贝一份过来。

Jenkins API curl创建job、执行构建_第3张图片

最后,开始curl创建job,命令curl -vvv -X POST -d @config.xml -H "Content-Type: text/xml" "http://localhost:8080/createItem?name=新建的job名称"

Jenkins API curl创建job、执行构建_第4张图片

注意点:一定要在$jenkins_home/jobs/要新建的job下执行该命令,才会成功。

若是不在该目录下执行则会报错

Caused by: java.io.EOFException: input contained no data
        at org.xmlpull.mxp1.MXParser.fillBuf(MXParser.java:3003)
        at org.xmlpull.mxp1.MXParser.more(MXParser.java:3046)
        at org.xmlpull.mxp1.MXParser.parseProlog(MXParser.java:1410)
        at org.xmlpull.mxp1.MXParser.nextImpl(MXParser.java:1395)
        at org.xmlpull.mxp1.MXParser.next(MXParser.java:1093)
        at com.thoughtworks.xstream.io.xml.XppReader.pullNextEvent(XppReader.java:109)

实际就是因为路径不对无法读取到config.xml这个文件。


2.构建job

curl -X POST http://127.0.0.1:8888/jenkins/job/aa/build --user admin:admin


执行完后就可以在该job的构建历史中看到有一个新的构建在执行。




你可能感兴趣的:(jenkins,api,jenkins,config.xml,jenkins)