sast接口,sastWorker修改
This commit is contained in:
parent
36174afe65
commit
a96be704e2
@ -13,6 +13,7 @@ import org.springframework.web.bind.annotation.*;
|
|||||||
import org.springframework.web.multipart.MultipartFile;
|
import org.springframework.web.multipart.MultipartFile;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
|
import java.io.FileOutputStream;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@ -28,10 +29,20 @@ public class SastController {
|
|||||||
}
|
}
|
||||||
@PostMapping("/uploadFile")
|
@PostMapping("/uploadFile")
|
||||||
public CommonResult<SastFileUploadResp> uploadFile(MultipartFile multipartFile){
|
public CommonResult<SastFileUploadResp> uploadFile(MultipartFile multipartFile){
|
||||||
|
File tempFile = null;
|
||||||
try {
|
try {
|
||||||
return CommonResult.success(sastService.uploadFile(multipartFile.getResource().getFile()));
|
byte[] bytes = multipartFile.getBytes();
|
||||||
|
String[] split = multipartFile.getOriginalFilename().split("\\.");
|
||||||
|
tempFile = File.createTempFile(split[0], "."+split[1]);
|
||||||
|
FileOutputStream fos = new FileOutputStream(tempFile);
|
||||||
|
fos.write(bytes);
|
||||||
|
return CommonResult.success(sastService.uploadFile(tempFile));
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
return CommonResult.error(GlobalErrorCodeConstants.INTERNAL_SERVER_ERROR);
|
return CommonResult.error(GlobalErrorCodeConstants.INTERNAL_SERVER_ERROR);
|
||||||
|
}finally {
|
||||||
|
if (tempFile!=null) {
|
||||||
|
tempFile.deleteOnExit();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@PostMapping("/createIdentifiedLanguageTask")
|
@PostMapping("/createIdentifiedLanguageTask")
|
||||||
|
@ -2,25 +2,49 @@ package cd.casic.ci.process.engine.worker;
|
|||||||
|
|
||||||
|
|
||||||
import cd.casic.ci.process.common.WorkAtom;
|
import cd.casic.ci.process.common.WorkAtom;
|
||||||
|
import cd.casic.ci.process.dto.req.sast.SastApplicationCreateReq;
|
||||||
|
import cd.casic.ci.process.dto.resp.sast.SastApplicationCreateResp;
|
||||||
|
import cd.casic.ci.process.dto.resp.sast.SastApplicationEchoResp;
|
||||||
import cd.casic.ci.process.engine.runContext.TaskRunContext;
|
import cd.casic.ci.process.engine.runContext.TaskRunContext;
|
||||||
import cd.casic.ci.process.engine.worker.base.BaseWorker;
|
import cd.casic.ci.process.engine.worker.base.BaseWorker;
|
||||||
|
import cd.casic.ci.process.process.converter.SastConverter;
|
||||||
import cd.casic.ci.process.process.dataObject.base.PipBaseElement;
|
import cd.casic.ci.process.process.dataObject.base.PipBaseElement;
|
||||||
|
import cd.casic.ci.process.process.dataObject.task.PipTask;
|
||||||
|
import cd.casic.ci.process.process.service.sast.SastService;
|
||||||
import com.alibaba.fastjson.JSON;
|
import com.alibaba.fastjson.JSON;
|
||||||
|
import jakarta.annotation.Resource;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* sast
|
* sast
|
||||||
* */
|
* */
|
||||||
@Slf4j
|
@Slf4j
|
||||||
@WorkAtom(taskType = "SAST")
|
@WorkAtom(taskType = "SAST")
|
||||||
public class SastWorker extends BaseWorker {
|
public class SastWorker extends BaseWorker {
|
||||||
|
@Resource
|
||||||
|
private SastService sastService;
|
||||||
|
@Resource
|
||||||
|
private SastConverter converter;
|
||||||
@Override
|
@Override
|
||||||
public void execute(TaskRunContext context) {
|
public void execute(TaskRunContext context) {
|
||||||
PipBaseElement contextDef = context.getContextDef();
|
PipBaseElement contextDef = context.getContextDef();
|
||||||
String id = contextDef.getId();
|
String id = contextDef.getId();
|
||||||
log.info("==============触发worker执行========");
|
log.info("==============触发worker执行========");
|
||||||
log.info("==========运行context:{}===========", JSON.toJSONString(context));
|
log.info("==========运行context:{}===========", JSON.toJSONString(context));
|
||||||
|
if (contextDef instanceof PipTask task) {
|
||||||
|
String applicationId = (String)task.getTaskProperties().get("applicationId");
|
||||||
|
SastApplicationEchoResp applicationEcho = sastService.getApplicationEcho(applicationId);
|
||||||
|
append(context,"获取到sast任务配置"+JSON.toJSONString(applicationEcho));
|
||||||
|
SastApplicationCreateReq sastApplicationCreateReq = converter.converter(applicationEcho);
|
||||||
|
List<String> list = applicationEcho.getLodeFiles().stream().map(SastApplicationEchoResp.LodeFile::getFileId).toList();
|
||||||
|
sastApplicationCreateReq.setFileId(list);
|
||||||
|
append(context,"开始启动SAST任务,检测文件信息:{}"+JSON.toJSONString(applicationEcho.getLodeFiles()));
|
||||||
|
log.info("SAST启动任务入参:{}",JSON.toJSONString(sastApplicationCreateReq));
|
||||||
|
SastApplicationCreateResp sastApplicationCreateResp = sastService.applicationCreate(sastApplicationCreateReq);
|
||||||
|
log.info("SAST启动任务返回值:{}",JSON.toJSONString(sastApplicationCreateResp));
|
||||||
|
append(context,"启动任务完毕");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -163,7 +163,9 @@ public class SastServiceImpl implements SastService {
|
|||||||
String uriString = UriComponentsBuilder.fromHttpUrl(baseUrl + getApplicationEcho).queryParam("applicationId", applicationId).toUriString();
|
String uriString = UriComponentsBuilder.fromHttpUrl(baseUrl + getApplicationEcho).queryParam("applicationId", applicationId).toUriString();
|
||||||
System.out.println(uriString);
|
System.out.println(uriString);
|
||||||
ResponseEntity<SastApplicationEchoResp> exchange = restTemplate.exchange(uriString, HttpMethod.GET,entity,SastApplicationEchoResp.class,new HashMap<>());
|
ResponseEntity<SastApplicationEchoResp> exchange = restTemplate.exchange(uriString, HttpMethod.GET,entity,SastApplicationEchoResp.class,new HashMap<>());
|
||||||
return exchange.getBody();
|
SastApplicationEchoResp body = exchange.getBody();
|
||||||
|
body.setApplicationId(applicationId);
|
||||||
|
return body;
|
||||||
}
|
}
|
||||||
|
|
||||||
private HttpHeaders getHeaders(){
|
private HttpHeaders getHeaders(){
|
||||||
|
@ -35,6 +35,8 @@ public class SastTest {
|
|||||||
ThreadPoolTaskExecutor workerExecutor;
|
ThreadPoolTaskExecutor workerExecutor;
|
||||||
@Resource
|
@Resource
|
||||||
RedisTemplateUtils redisTemplateUtils;
|
RedisTemplateUtils redisTemplateUtils;
|
||||||
|
@Resource
|
||||||
|
private SastConverter converter;
|
||||||
@Test
|
@Test
|
||||||
public void properties(){
|
public void properties(){
|
||||||
System.out.println(JSON.toJSONString(sastProperties));
|
System.out.println(JSON.toJSONString(sastProperties));
|
||||||
@ -117,8 +119,7 @@ public class SastTest {
|
|||||||
public void applicationEcho(){
|
public void applicationEcho(){
|
||||||
System.out.println(sastService.getApplicationEcho("98776c27-0f8b-4884-abed-26b384008968"));
|
System.out.println(sastService.getApplicationEcho("98776c27-0f8b-4884-abed-26b384008968"));
|
||||||
}
|
}
|
||||||
@Resource
|
|
||||||
private SastConverter converter;
|
|
||||||
@Test
|
@Test
|
||||||
public void applicationCreate(){
|
public void applicationCreate(){
|
||||||
SastApplicationEchoResp applicationEcho = sastService.getApplicationEcho("98776c27-0f8b-4884-abed-26b384008968");
|
SastApplicationEchoResp applicationEcho = sastService.getApplicationEcho("98776c27-0f8b-4884-abed-26b384008968");
|
||||||
|
Loading…
x
Reference in New Issue
Block a user