JenkinsApi.java 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. package seecoder.devcloud.api.jenkins;
  2. import com.offbytwo.jenkins.model.QueueItem;
  3. import seecoder.devcloud.api.jenkins.model.BuildDetails;
  4. import java.io.IOException;
  5. import java.util.Map;
  6. public interface JenkinsApi {
  7. /**
  8. * 创建一个Job,加载配置模板
  9. *
  10. * @param id Job的Id,其实是Result的Id,也就是repo的Id,参照{@link com.moekr.moocoder.logic.service.impl.exam.ExamServiceImpl#join(int, int)}
  11. * @throws IOException
  12. */
  13. void createJob(int id) throws IOException;
  14. /**
  15. * 通知构建
  16. *
  17. * @param id Job的Id,其实是Result的Id,也就是repo的Id,参照{@link com.moekr.moocoder.logic.service.impl.exam.ExamServiceImpl#join(int, int)}
  18. * @param paramMap 需要填写的各项参数
  19. * @return
  20. * @throws IOException
  21. */
  22. QueueItem invokeBuild(int id, Map<String, String> paramMap) throws IOException;
  23. /**
  24. * 通知构建
  25. *
  26. * @param jobName JobName
  27. * @param paramMap 需要填写的各项参数
  28. * @return
  29. * @throws IOException
  30. */
  31. QueueItem invokeBuild(String jobName, Map<String, String> paramMap) throws IOException;
  32. /**
  33. * 删除Job
  34. *
  35. * @param id Job的Id,其实是Result的Id,也就是repo的Id,参照{@link com.moekr.moocoder.logic.service.impl.exam.ExamServiceImpl#join(int, int)}
  36. * @throws IOException
  37. */
  38. void deleteJob(int id) throws IOException;
  39. // waitFinished: 是否等待直到构建完全完成
  40. BuildDetails fetchBuildDetails(int id, int buildNumber, String target, boolean waitFinished) throws IOException;
  41. BuildDetails fetchBuildDetails(String jobName, int buildNumber, String target, boolean waitFinished) throws IOException;
  42. void createBuildJob(String jobName) throws IOException;
  43. void createTestJob(String jobName) throws IOException;
  44. void createFunctionTestJob(String jobName) throws IOException;
  45. /**
  46. * 创建深度学习需要的Job
  47. *
  48. * @param jobName Job名称
  49. */
  50. void createDLJob(String jobName) throws IOException;
  51. void deleteJob(String jobName) throws IOException;
  52. }