diff --git a/jenkins-exec/src/main/java/com/educoder/jenkins/controller/BuildThread.java b/jenkins-exec/src/main/java/com/educoder/jenkins/controller/BuildThread.java index 096c0dc..3589a3d 100644 --- a/jenkins-exec/src/main/java/com/educoder/jenkins/controller/BuildThread.java +++ b/jenkins-exec/src/main/java/com/educoder/jenkins/controller/BuildThread.java @@ -130,5 +130,9 @@ public class BuildThread implements Runnable{ logger.debug("job:" + this.jobName + "线程退出"); } + private int delJob() + { + return 0; + } } diff --git a/jenkins-exec/src/main/java/com/educoder/jenkins/controller/GameController.java b/jenkins-exec/src/main/java/com/educoder/jenkins/controller/GameController.java index affbc1a..63ec08f 100644 --- a/jenkins-exec/src/main/java/com/educoder/jenkins/controller/GameController.java +++ b/jenkins-exec/src/main/java/com/educoder/jenkins/controller/GameController.java @@ -60,7 +60,6 @@ import com.educoder.jenkins.settings.Configure; public class GameController extends BaseController { @Autowired JenkinsController jenkinsController; - @Autowired JenkinsApi jenkinsApi; @@ -69,22 +68,6 @@ public class GameController extends BaseController { @Autowired PipeLineConfig pipeLineConfig; - // 定义对应于不同运行环境的编译命令 - public final static Map compileCMD = new HashMap() { - { - put("java", "javac -encoding UTF-8 -Djava.ext.dirs=./lib/ -sourcepath src/ -d target/ "); - put("mysql-java", "javac -encoding UTF-8 -Djava.ext.dirs=./lib/ -sourcepath src/ -d target/ "); - put("python", "python "); - } - }; - // 定义对应于不同运行环境的运行命令 - public final static Map runCMD = new HashMap() { - { - put("java", "java -Dfile.encoding=UTF-8 -Djava.ext.dirs=./lib/ -cp target/ "); - put("mysql-java", "java -Dfile.encoding=UTF-8 -Djava.ext.dirs=./lib/ -cp target/ "); - put("python", "python "); - } - }; private final static Logger logger = LoggerFactory.getLogger(GameController.class); @@ -317,34 +300,6 @@ public class GameController extends BaseController { * @return: 0 删除成功 * -1 删除失败 * */ -@ApiOperation(value = "删除Job及工作目录下的文件", httpMethod = "POST", produces = MediaType.APPLICATION_FORM_URLENCODED_VALUE) -@RequestMapping(path = "/deleteJob") -public JSONObject deleteJob( - @ApiParam(name = "jobName", required = true, value = "要删除的job的名字") @RequestParam String jobName) - throws Exception { - - JSONObject info = JSONObject.parseObject(jobName); - String job = info.getString("jobName"); - - JSONObject response = new JSONObject(); - response.put("status", -1); - // 调用Jenkins API删除job - int result = jenkinsApi.deleteJob(job); - - /* - * -1:删除之前job 存在,删除未成功 - * 1;要删除的job不存在(此时不用删除Jenkins工作目录下的文件) - * 0:删除成功 - * */ - if (-1 == result) { - response.put("status", -1); - return response; - } - - if (1 == result || 0 == result) { - response.put("status", 0); - return response; - } @ApiOperation(value = "删除Job及工作目录下的文件", httpMethod = "POST", produces = MediaType.APPLICATION_FORM_URLENCODED_VALUE) @RequestMapping(path = "/deleteJob") public JSONObject deleteJob(@ApiParam(name = "jobName", required = true, value = "要删除的job的名字") @RequestParam String jobName) throws Exception { diff --git a/jenkins-exec/src/main/java/com/educoder/jenkins/controller/JenkinsController.java b/jenkins-exec/src/main/java/com/educoder/jenkins/controller/JenkinsController.java index c573d94..064b2d1 100644 --- a/jenkins-exec/src/main/java/com/educoder/jenkins/controller/JenkinsController.java +++ b/jenkins-exec/src/main/java/com/educoder/jenkins/controller/JenkinsController.java @@ -109,21 +109,14 @@ public class JenkinsController extends BaseController { instanceGitURL = Base64Helper.decode(instanceGitURL); //为新来的job生成一个线程 - //BuildThread buildThread = (BuildThread)AppContext.appContext.getBean("BuildThread"); - TestCallable testCallable = (TestCallable)AppContext.appContext.getBean("TestCallable"); + BuildThread buildThread = (BuildThread)AppContext.appContext.getBean("BuildThread"); Map buildParams = new HashMap(); buildParams.put("buildID", buildID); buildParams.put("instanceChallenge", instanceChallenge); buildParams.put("instanceGitURL", instanceGitURL); buildParams.put("resubmit", resubmit); - /* buildThread.setBuildInfo(jobNameForInstance,buildParams); - pool.execute(buildThread);*/ - testCallable.setBuildInfo(jobNameForInstance,buildParams); - Future testObj = pool.submit(testCallable); - String obj = testObj.get(30,TimeUnit.SECONDS); - if(obj.equals("success")) - logger.debug("构建成功"); - else logger.debug("构建失败或超时"); + buildThread.setBuildInfo(jobNameForInstance,buildParams); + pool.execute(buildThread); /* * 先获取阻塞队列,然后获取阻塞队列的大小即可得前方还有多少job在等待构建 diff --git a/jenkins-exec/src/test/java/cn/lili/test/MyTest.java b/jenkins-exec/src/test/java/cn/lili/test/MyTest.java index 0612398..403dd34 100644 --- a/jenkins-exec/src/test/java/cn/lili/test/MyTest.java +++ b/jenkins-exec/src/test/java/cn/lili/test/MyTest.java @@ -11,6 +11,7 @@ import java.io.IOException; import java.io.PrintStream; import java.net.URI; import java.net.URISyntaxException; +import java.net.URL; import java.text.SimpleDateFormat; import java.util.Date; import java.util.HashMap; @@ -60,14 +61,19 @@ public class MyTest { public String filePath=System.getProperty("user.dir")+"\\"+fileName2; public static void main(String[] args) { + MyTest test = new MyTest(); try { - JenkinsServer jenkins = new JenkinsServer(new URI("http://106.75.33.219:30001"), "root", "root"); - Map jobs = jenkins.getJobs(); - JobWithDetails job = jobs.get("test").details(); -// job.build(); - System.out.println(job.getName()); - System.out.println(System.getProperty("user.dir")); + test.createOneJob("lqk"); +// JenkinsServer jenkins = new JenkinsServer(new URI(url), "root", "root"); +// Map jobs = jenkins.getJobs(); +// JobWithDetails job = jobs.get("test").details(); +// job.build(); +// System.out.println(job.getName()); +// +// System.out.println(System.getProperty("user.dir")); +// MyTest test = new MyTest(); +// test.createOneJobFromPipelineScript("lqk"); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace();