AFL修改
This commit is contained in:
parent
760607fe26
commit
6b457250d7
@ -1,6 +1,7 @@
|
||||
package cd.casic.ci.process.engine.worker;
|
||||
|
||||
import cd.casic.ci.process.common.WorkAtom;
|
||||
import cd.casic.ci.process.dal.resp.resource.ResourceFindResp;
|
||||
import cd.casic.ci.process.engine.constant.AFLConstant;
|
||||
import cd.casic.ci.process.engine.constant.DIYImageExecuteCommandConstant;
|
||||
import cd.casic.ci.process.engine.runContext.TaskRunContext;
|
||||
@ -9,6 +10,7 @@ import cd.casic.ci.process.engine.worker.base.SshWorker;
|
||||
import cd.casic.ci.process.process.dataObject.machine.MachineInfo;
|
||||
import cd.casic.ci.process.process.dataObject.pipeline.PipPipeline;
|
||||
import cd.casic.ci.process.process.dataObject.task.PipTask;
|
||||
import cd.casic.module.execute.docker.dataobject.dto.DockerEndpointDo;
|
||||
import cd.casic.module.execute.docker.dataobject.model.DockerEndpoint;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
@ -19,6 +21,7 @@ import java.util.Map;
|
||||
@Slf4j
|
||||
public class AFLWorker extends DockerWorker {
|
||||
|
||||
|
||||
@Override
|
||||
public void execute(TaskRunContext context) {
|
||||
int statusCode = -1;
|
||||
@ -31,12 +34,17 @@ public class AFLWorker extends DockerWorker {
|
||||
String commandScript = commandScriptObj instanceof String ? ((String) commandScriptObj) : null;
|
||||
|
||||
PipPipeline pipeline = (PipPipeline) getContextManager().getContext(taskDef.getPipelineId()).getContextDef();
|
||||
String machineId = pipeline.getMachineId();
|
||||
if (StringUtils.isEmpty(commandScript)||StringUtils.isEmpty(machineId)) {
|
||||
String resourceId = pipeline.getResourceId();
|
||||
if (StringUtils.isEmpty(commandScript)||StringUtils.isEmpty(resourceId)) {
|
||||
// 缺少参数
|
||||
toBadEnding();
|
||||
}
|
||||
|
||||
ResourceFindResp resourceById = getResourceManagerService().findResourceById(resourceId);
|
||||
DockerEndpointDo dockerEndpoint = resourceById.getDockerEndpoint();
|
||||
if (dockerEndpoint==null) {
|
||||
append(context,"当前机器不支持docker");
|
||||
return;
|
||||
}
|
||||
try {
|
||||
//将节点的配置信息反编译成对象
|
||||
log.info("构建脚本" + commandScript);
|
||||
@ -46,10 +54,6 @@ public class AFLWorker extends DockerWorker {
|
||||
//获取机器
|
||||
// MachineInfo machineInfoDO = this.getMachineInfoService().getById(machineId);
|
||||
// 获取docker 暂时先写固定值
|
||||
DockerEndpoint dockerEndpoint = new DockerEndpoint();
|
||||
dockerEndpoint.setHost("175.6.27.252");
|
||||
dockerEndpoint.setPort(22375);
|
||||
dockerEndpoint.setType(DockerEndpoint.DockerEndpointTypeEnum.REMOTE);
|
||||
// TODO dockerEndpoint替换为查询
|
||||
dockerRun(commandScript,dockerEndpoint,context);
|
||||
} catch (Exception e) {
|
||||
|
@ -17,6 +17,7 @@ import cd.casic.ci.process.process.dataObject.machine.MachineInfo;
|
||||
import cd.casic.ci.process.process.dataObject.task.PipTask;
|
||||
import cd.casic.ci.process.process.service.machine.MachineInfoService;
|
||||
|
||||
import cd.casic.ci.process.process.service.resource.ResourceManagerService;
|
||||
import cd.casic.ci.process.ssh.SshClient;
|
||||
import cd.casic.ci.process.ssh.SshClientFactory;
|
||||
import cd.casic.ci.process.ssh.WinRMHelper;
|
||||
@ -45,6 +46,8 @@ public abstract class BaseWorker implements Runnable{
|
||||
private MachineInfoService machineInfoService;
|
||||
@Resource
|
||||
private LoggerManager loggerManager;
|
||||
@Resource
|
||||
private ResourceManagerService resourceManagerService;
|
||||
|
||||
|
||||
@Override
|
||||
|
@ -2,6 +2,7 @@ package cd.casic.ci.process.engine.worker.base;
|
||||
|
||||
|
||||
import cd.casic.ci.process.engine.runContext.BaseRunContext;
|
||||
import cd.casic.module.execute.docker.dataobject.dto.DockerEndpointDo;
|
||||
import cd.casic.module.execute.docker.dataobject.model.DockerEndpoint;
|
||||
import com.github.dockerjava.api.DockerClient;
|
||||
import com.github.dockerjava.api.async.ResultCallbackTemplate;
|
||||
@ -33,7 +34,7 @@ import java.util.concurrent.TimeUnit;
|
||||
import static java.lang.String.format;
|
||||
@Slf4j
|
||||
public abstract class DockerWorker extends BaseWorker{
|
||||
public void dockerRun(String command, DockerEndpoint dockerEndpoint, BaseRunContext context){
|
||||
public void dockerRun(String command, DockerEndpointDo dockerEndpoint, BaseRunContext context){
|
||||
// 第一行必须是docker run 命令 option 支持 -it -v
|
||||
String[] split = command.split("\n");
|
||||
List<String> commandLine = new ArrayList<>(Arrays.stream(split).filter(StringUtils::isNotBlank).toList());
|
||||
@ -148,7 +149,7 @@ public abstract class DockerWorker extends BaseWorker{
|
||||
}
|
||||
|
||||
}
|
||||
public DockerExecHandler loadRunCommand(String runCommand, DockerEndpoint dockerEndpoint){
|
||||
public DockerExecHandler loadRunCommand(String runCommand, DockerEndpointDo dockerEndpoint){
|
||||
String[] split = runCommand.split("\\s+");
|
||||
List<String> keywords = new ArrayList<>(split.length);
|
||||
keywords.addAll(Lists.list(split));
|
||||
|
Loading…
x
Reference in New Issue
Block a user