afl回调

This commit is contained in:
even 2025-07-30 17:58:56 +08:00
parent f940d68ba5
commit 7749abdabd
2 changed files with 15 additions and 7 deletions

View File

@ -9,11 +9,6 @@ public class LocalAflCrashesSaveReq {
*/
private String pipelineId;
/**
* 流水线历史记录id
*/
private String pipelineHistoryId;
/**
* 任务节点id
*/

View File

@ -2,6 +2,7 @@ package cd.casic.ci.process.engine.worker.afl;
import cd.casic.ci.process.common.WorkAtom;
import cd.casic.ci.process.dto.req.aflManager.AflManagerReq;
import cd.casic.ci.process.dto.req.localAflCrashes.LocalAflCrashesSaveReq;
import cd.casic.ci.process.dto.req.resource.ResourceQueryReq;
import cd.casic.ci.process.dto.resp.resource.ResourceDetailResp;
import cd.casic.ci.process.engine.constant.DIYImageExecuteCommandConstant;
@ -16,6 +17,7 @@ import cd.casic.ci.process.process.dataObject.task.PipTask;
import cd.casic.ci.process.process.service.aflManager.AflInfoService;
import cd.casic.ci.process.process.service.aflManager.AflPlotInfoService;
import cd.casic.ci.process.process.service.aflManager.AflSeedInfoService;
import cd.casic.ci.process.process.service.localAflCrashes.LocalAflCrashesService;
import cd.casic.ci.process.process.service.target.TargetVersionService;
import cd.casic.ci.process.util.SftpUploadUtil;
import com.alibaba.fastjson.JSON;
@ -45,7 +47,8 @@ public class AFLWorker extends DockerWorker {
private AflSeedInfoService aflSeedInfoService;
@Resource
private AflPlotInfoService aflPlotInfoService;
@Resource
private LocalAflCrashesService localAflCrashesService;
@Override
public void execute(TaskRunContext context) {
int statusCode = -1;
@ -154,7 +157,7 @@ public class AFLWorker extends DockerWorker {
log.error("保存afl信息失败,入参{}", JSON.toJSONString(req),e);
}
}
private void afterPipelineExecute(TaskRunContext context){
private void afterPipelineExecute(TaskRunContext context,PipPipeline pipeline){
append(context,"开始拉取afl输出信息");
PipTask contextDef = (PipTask)context.getContextDef();
String pipelineId =contextDef.getPipelineId();
@ -162,6 +165,7 @@ public class AFLWorker extends DockerWorker {
AflManagerReq req = new AflManagerReq();
req.setTaskId(taskId);
req.setPipelineId(pipelineId);
TargetVersion targetVersion = targetVersionService.getById(pipeline.getTargetVersionId());
postHandlerManager.registerPostHandler(new ExecuteTaskPostHandler(taskId,pipelineId) {
@Override
public void executeAfterDone(PipPipelineHisInstance pipPipelineHisInstance) {
@ -172,6 +176,15 @@ public class AFLWorker extends DockerWorker {
aflInfoService.updateHistoryPipelineIdByAflInfo(req);
aflSeedInfoService.updateHistoryPipelineIdByAflSeedInfo(req);
aflPlotInfoService.updateHistoryPipelineIdByAflPlotInfo(req);
LocalAflCrashesSaveReq crashesSaveReq = new LocalAflCrashesSaveReq();
crashesSaveReq.setPipelineId(pipelineId);
crashesSaveReq.setInstanceId(pipPipelineHisInstance.getId());
crashesSaveReq.setTaskId(taskId);
crashesSaveReq.setTaskType("AFL");
crashesSaveReq.setCity("长沙");// 暂时空置
crashesSaveReq.setTargetType(pipeline.getTargetType());
crashesSaveReq.setTargetName(targetVersion.getFileName());
localAflCrashesService.saveLocalAflCrashesInfo(crashesSaveReq);
}
});
}