java调用Jenkins接口api

                 一直听说jenkins是自动发布部署的工具,一直没有尝试过!不知道怎么用使用,今天就自己尝试了一把!使用jenkins就萌生了自己想用java代码直接调用,创建job,然后build,这样的话,如果自己想搭建自动化构建平台也很方便啊!废话就不多不说了,直接上代码!

package com.jenkins;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.URI;
import java.util.HashMap;
import java.util.Map;
import java.util.UUID;

import com.offbytwo.jenkins.JenkinsServer;

/**
 * @author zhangjinyang
 *
 */
public class App {
    static String url = "http://localhost:8080/jenkins";
    static JenkinsServer server;
    static StringBuilder build = new StringBuilder();
    static String name = "admin";
    static String password = "admin";
    static {
        try {

            server = new JenkinsServer(new URI(url), name, password);
            InputStream in = App.class.getResourceAsStream("config.xml");
            InputStreamReader read = new InputStreamReader(in);
            BufferedReader bufferedReader = new BufferedReader(read);
            String lineTxt = null;
            while ((lineTxt = bufferedReader.readLine()) != null) {
                build.append(lineTxt);
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    public static void main(String[] args) {
        String jobName = "test-job-" + UUID.randomUUID().toString();
        try {
            //创建job
            server.createJob(jobName, build.toString(), false);
            //自定义属性
            Map map = new HashMap();
            map.put("qq", "11111111");
            //开始build
            server.getJob(jobName).build(map);
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
}
对了,还有一个config.xml模板,如果自己做自动发布平台的话,模板就用freemarker自己生成自己想要的!目前我这边只是做测试!具体的还需要你们自己写!

config.xml



 
 
  false
    
       
         
           
              qq
              qqq
              qqq
           

         

       

     

 
    2
   
     
        https://github.com/bingyue/easy-springmvc-maven.git
     

   

   
     
        */master
     

   

    false
   
   
 

  true
  false
  false
  false
 
  false
 
   
     
          echo "hello world!";
        M3_HOME=/Users/admin/Documents/tool/maven
        PATH=$PATH:$M3_HOME/bin
        JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk/Contents/Home
        export M3_HOME;
        export PATH;
        export JAVA_HOME;
        echo ${qq};
        mvn clean install -U;
    

   

 

 
 
              

你可能感兴趣的:(Java)