补充trigger代码块;
新增util/variable/version/wehHook模块;
task模块代码初步提交,包含子模块artifact/build/code/codescan;
调整部分service和impl位置,进行统一包路径管理,对service和impl相互关系做代码补充以及编译调试(可能影响部分原先包目录结构);
新增部分工具类/注解以及系统字段
This commit is contained in:
Hope Li 2025-05-05 21:01:32 +08:00
parent 9feee4fd45
commit 0eab7cbf4f
13 changed files with 153 additions and 12 deletions

View File

@ -1,4 +1,4 @@
package cd.casic.module.process.support.variable.model;
package cd.casic.ci.commons.bean.process.definition;
import lombok.AllArgsConstructor;
import lombok.Builder;

View File

@ -0,0 +1,22 @@
package cd.casic.module.process.core.context;
/**
* @ClassName LoginContext
* @Author hopeli
* @Date 2025/5/5 20:54
* @Version 1.0
*/
public class LoginContext {
private static String loginId;
public LoginContext() {
}
public static String getLoginId() {
return loginId;
}
public static void setLoginId(String loginId) {
LoginContext.loginId = loginId;
}
}

View File

@ -4,7 +4,7 @@ import cd.casic.ci.commons.bean.engine.execute.PipelineDetails;
import cd.casic.ci.commons.bean.engine.execute.PipelineRunMsg;
import cd.casic.ci.commons.bean.engine.postprocess.Postprocess;
import cd.casic.ci.commons.bean.process.definition.Pipeline;
import cd.casic.module.process.support.variable.model.Variable;
import cd.casic.ci.commons.bean.process.definition.Variable;
import cd.casic.ci.commons.bean.process.instance.PipelineInstance;
import cd.casic.ci.commons.bean.process.instance.PipelineInstanceQuery;
import cd.casic.ci.commons.bean.process.setting.Scm;

View File

@ -6,7 +6,7 @@ import cd.casic.ci.commons.bean.engine.execute.PipelineRunMsg;
import cd.casic.ci.commons.bean.engine.postprocess.Postprocess;
import cd.casic.ci.commons.bean.exception.SystemException;
import cd.casic.ci.commons.bean.process.definition.Pipeline;
import cd.casic.module.process.support.variable.model.Variable;
import cd.casic.ci.commons.bean.process.definition.Variable;
import cd.casic.ci.commons.bean.process.instance.PipelineInstance;
import cd.casic.ci.commons.bean.process.instance.PipelineInstanceQuery;
import cd.casic.ci.commons.bean.process.setting.Scm;

View File

@ -1,9 +1,12 @@
package cd.casic.module.process.support.trigger.dao;
import cd.casic.framework.mybatis.core.mapper.BaseMapperX;
import cd.casic.module.process.support.trigger.dateObject.TriggerTime;
import cd.casic.module.process.support.trigger.entity.TriggerTimeDo;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
/**
* @author by mianbin
* @Classname TriggerTimeDao
@ -13,4 +16,14 @@ import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface TriggerTimeDao extends BaseMapperX<TriggerTimeDo> {
String createTime(TriggerTimeDo triggerTimeEntity);
void deleteTime(String timeId);
void updateTime(TriggerTimeDo triggerTimeEntity);
TriggerTimeDo findOneTime(String timeId);
List<TriggerTime> findAllTime();
List<TriggerTime> findAllTimeList(List<String> idList);
}

View File

@ -57,4 +57,6 @@ public class TriggerTime {
*/
private String state;
private int taskType;
}

View File

@ -18,7 +18,7 @@ import org.quartz.TriggerKey;
import org.quartz.impl.StdSchedulerFactory;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.boot.autoconfigure.batch.BatchProperties.Job;
import org.springframework.boot.autoconfigure.batch.BatchProperties;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Component;
@ -37,9 +37,9 @@ import java.util.Objects;
@Component
@Scope("singleton")
public class job {
public class Job {
private static final Logger logger = LoggerFactory.getLogger(Job.class);
private static final Logger logger = LoggerFactory.getLogger(BatchProperties.Job.class);
private static final SchedulerFactory schedulerFactory = new StdSchedulerFactory();

View File

@ -0,0 +1,87 @@
package cd.casic.module.process.support.trigger.quartz;
import cd.casic.ci.commons.bean.engine.execute.PipelineRunMsg;
import cd.casic.module.process.core.context.LoginContext;
import cd.casic.module.process.engine.execute.PipelineExecService;
import cd.casic.module.process.support.trigger.service.TriggerService;
import org.quartz.JobDataMap;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
@Component
public class RunJob implements org.quartz.Job {
public static PipelineExecService execService;
public static Job job;
public static TriggerService triggerService;
private static final Logger logger = LoggerFactory.getLogger(RunJob.class);
@Autowired
public void setExecService(PipelineExecService execService) {
RunJob.execService = execService;
}
@Autowired
public void setQuartzManager(Job job) {
RunJob.job = job;
}
@Autowired
public void setTriggerConfigServer(TriggerService triggerService) {
RunJob.triggerService = triggerService;
}
@Override
public void execute(JobExecutionContext jobExecutionContext) throws JobExecutionException {
JobDataMap map = jobExecutionContext.getMergedJobDataMap();
String pipelineId = (String)map.get("pipelineId");
String group = (String)map.get("group");
String weekTime = (String)map.get("weekTime");
String cron = (String)map.get("cron");
String triggerName = jobExecutionContext.getTrigger().getKey().getName();
logger.warn("定时任务触发,组:{},流水线:{} 时间:{}",group,pipelineId,weekTime);
String loginId = LoginContext.getLoginId();
PipelineRunMsg pipelineRunMsg = new PipelineRunMsg(pipelineId,loginId,2);
execService.start(pipelineRunMsg);
triggerService.updateTrigger(triggerName.split("_")[2]);
logger.warn("组:{},流水线:{},定时任务触发完成",group,pipelineId);
job.removeJob(group,triggerName);
}
}

View File

@ -1,21 +1,26 @@
package cd.casic.module.process.support.trigger.service.impl;
import cd.casic.ci.commons.bean.exception.ApplicationException;
import cd.casic.ci.commons.rpc.annototion.Exporter;
import cd.casic.module.process.support.trigger.dao.TriggerTimeDao;
import cd.casic.module.process.support.trigger.dateObject.TriggerTime;
import cd.casic.module.process.support.trigger.entity.TriggerTimeDo;
import cd.casic.module.process.support.trigger.quartz.Job;
import cd.casic.module.process.support.trigger.quartz.RunJob;
import cd.casic.module.process.support.trigger.service.CronUtils;
import cd.casic.module.process.support.trigger.service.TriggerTimeService;
import cd.casic.module.process.toolkit.beans.BeanMapper;
import jakarta.annotation.Resource;
import org.springframework.boot.autoconfigure.batch.BatchProperties.Job;
import org.quartz.SchedulerException;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.Comparator;
import java.util.List;
import java.util.Map;
import static cd.casic.module.process.support.util.util.PipelineFinal.DEFAULT;
/**
* @ClassName TriggerTimeServiceImpl
@ -199,13 +204,13 @@ public class TriggerTimeServiceImpl implements TriggerTimeService {
}
public void updateTime(TriggerTime triggerTime) {
TriggerTimeEntity triggerTimeEntity = BeanMapper.map(triggerTime, TriggerTimeEntity.class);
TriggerTimeDo triggerTimeEntity = BeanMapper.map(triggerTime, TriggerTimeDo.class);
triggerTimeDao.updateTime(triggerTimeEntity);
}
@Override
public TriggerTime findOneTime(String timeId) {
TriggerTimeEntity timeEntity = triggerTimeDao.findOneTime(timeId);
TriggerTimeDo timeEntity = triggerTimeDao.findOneTime(timeId);
return BeanMapper.map(timeEntity, TriggerTime.class);
}

View File

@ -2,7 +2,7 @@ package cd.casic.module.process.support.variable.dao;
import cd.casic.framework.mybatis.core.mapper.BaseMapperX;
import cd.casic.module.process.support.variable.dataobject.VariableDo;
import cd.casic.module.process.support.variable.model.Variable;
import cd.casic.ci.commons.bean.process.definition.Variable;
import cd.casic.module.process.support.variable.model.VariableQuery;
import org.apache.ibatis.annotations.Mapper;

View File

@ -1,6 +1,6 @@
package cd.casic.module.process.support.variable.service;
import cd.casic.module.process.support.variable.model.Variable;
import cd.casic.ci.commons.bean.process.definition.Variable;
import cd.casic.module.process.support.variable.model.VariableQuery;
import java.util.List;

View File

@ -1,5 +1,8 @@
package cd.casic.module.process.support.variable.service.impl;
import cd.casic.module.process.support.variable.model.ExecVariable;
import cd.casic.module.process.support.variable.service.ExecVariableService;
/**
* @ClassName ExecVariableServiceImpl
* @Author hopeli
@ -7,4 +10,13 @@ package cd.casic.module.process.support.variable.service.impl;
* @Version 1.0
*/
public class ExecVariableServiceImpl implements ExecVariableService {
@Override
public void initPipelineVariable(String pipelineId, String taskId) {
}
@Override
public void addExecVariable(ExecVariable variable) {
}
}

View File

@ -3,7 +3,7 @@ package cd.casic.module.process.support.variable.service.impl;
import cd.casic.ci.commons.bean.utils.PipelineUtil;
import cd.casic.module.process.support.variable.dao.VariableDao;
import cd.casic.module.process.support.variable.dataobject.VariableDo;
import cd.casic.module.process.support.variable.model.Variable;
import cd.casic.ci.commons.bean.process.definition.Variable;
import cd.casic.module.process.support.variable.model.VariableQuery;
import cd.casic.module.process.support.variable.service.VariableService;
import cd.casic.module.process.toolkit.beans.BeanMapper;