mirror of
https://github.com/theonedev/onedev.git
synced 2025-12-08 18:26:30 +00:00
Use build spec instead of ci spec
This commit is contained in:
parent
c1c69dd801
commit
698261f2e2
@ -72,17 +72,17 @@ import io.onedev.commons.launcher.loader.ImplementationProvider;
|
||||
import io.onedev.commons.utils.StringUtils;
|
||||
import io.onedev.commons.utils.schedule.DefaultTaskScheduler;
|
||||
import io.onedev.commons.utils.schedule.TaskScheduler;
|
||||
import io.onedev.server.buildspec.job.DefaultJobManager;
|
||||
import io.onedev.server.buildspec.job.JobManager;
|
||||
import io.onedev.server.buildspec.job.log.DefaultLogManager;
|
||||
import io.onedev.server.buildspec.job.log.LogManager;
|
||||
import io.onedev.server.buildspec.job.log.instruction.LogInstruction;
|
||||
import io.onedev.server.cache.CodeCommentRelationInfoManager;
|
||||
import io.onedev.server.cache.CommitInfoManager;
|
||||
import io.onedev.server.cache.DefaultCodeCommentRelationInfoManager;
|
||||
import io.onedev.server.cache.DefaultCommitInfoManager;
|
||||
import io.onedev.server.cache.DefaultUserInfoManager;
|
||||
import io.onedev.server.cache.UserInfoManager;
|
||||
import io.onedev.server.ci.job.DefaultJobManager;
|
||||
import io.onedev.server.ci.job.JobManager;
|
||||
import io.onedev.server.ci.job.log.DefaultLogManager;
|
||||
import io.onedev.server.ci.job.log.LogManager;
|
||||
import io.onedev.server.ci.job.log.instruction.LogInstruction;
|
||||
import io.onedev.server.entitymanager.BuildDependenceManager;
|
||||
import io.onedev.server.entitymanager.BuildManager;
|
||||
import io.onedev.server.entitymanager.BuildParamManager;
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci;
|
||||
package io.onedev.server.buildspec;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.ArrayList;
|
||||
@ -20,12 +20,12 @@ import com.google.common.base.Charsets;
|
||||
import com.google.common.collect.Lists;
|
||||
|
||||
import io.onedev.commons.utils.StringUtils;
|
||||
import io.onedev.server.ci.job.Job;
|
||||
import io.onedev.server.ci.job.JobDependency;
|
||||
import io.onedev.server.ci.job.action.PostBuildAction;
|
||||
import io.onedev.server.ci.job.paramsupply.ParamSupply;
|
||||
import io.onedev.server.ci.job.retrycondition.RetryCondition;
|
||||
import io.onedev.server.ci.job.trigger.JobTrigger;
|
||||
import io.onedev.server.buildspec.job.Job;
|
||||
import io.onedev.server.buildspec.job.JobDependency;
|
||||
import io.onedev.server.buildspec.job.action.PostBuildAction;
|
||||
import io.onedev.server.buildspec.job.paramsupply.ParamSupply;
|
||||
import io.onedev.server.buildspec.job.retrycondition.RetryCondition;
|
||||
import io.onedev.server.buildspec.job.trigger.JobTrigger;
|
||||
import io.onedev.server.migration.VersionedDocument;
|
||||
import io.onedev.server.util.validation.Validatable;
|
||||
import io.onedev.server.util.validation.annotation.ClassValidating;
|
||||
@ -33,13 +33,13 @@ import io.onedev.server.web.editable.annotation.Editable;
|
||||
|
||||
@Editable
|
||||
@ClassValidating
|
||||
public class CISpec implements Serializable, Validatable {
|
||||
public class BuildSpec implements Serializable, Validatable {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
private static final Logger logger = LoggerFactory.getLogger(CISpec.class);
|
||||
private static final Logger logger = LoggerFactory.getLogger(BuildSpec.class);
|
||||
|
||||
public static final String BLOB_PATH = "onedev-ci.xml";
|
||||
public static final String BLOB_PATH = ".onedev-buildspec";
|
||||
|
||||
private List<Job> jobs = new ArrayList<>();
|
||||
|
||||
@ -183,13 +183,13 @@ public class CISpec implements Serializable, Validatable {
|
||||
}
|
||||
|
||||
@Nullable
|
||||
public static CISpec parse(byte[] bytes) {
|
||||
String ciSpecString = new String(bytes, Charsets.UTF_8);
|
||||
if (StringUtils.isNotBlank(ciSpecString)) {
|
||||
public static BuildSpec parse(byte[] bytes) {
|
||||
String buildSpecString = new String(bytes, Charsets.UTF_8);
|
||||
if (StringUtils.isNotBlank(buildSpecString)) {
|
||||
try {
|
||||
return (CISpec) VersionedDocument.fromXML(ciSpecString).toBean();
|
||||
return (BuildSpec) VersionedDocument.fromXML(buildSpecString).toBean();
|
||||
} catch (Exception e) {
|
||||
throw new InvalidCISpecException("Invalid CI spec", e);
|
||||
throw new InvalidBuildSpecException("Invalid build spec", e);
|
||||
}
|
||||
} else {
|
||||
return null;
|
||||
@ -0,0 +1,10 @@
|
||||
package io.onedev.server.buildspec;
|
||||
|
||||
import javax.annotation.Nullable;
|
||||
|
||||
public interface BuildSpecAware {
|
||||
|
||||
@Nullable
|
||||
BuildSpec getBuildSpec();
|
||||
|
||||
}
|
||||
@ -0,0 +1,13 @@
|
||||
package io.onedev.server.buildspec;
|
||||
|
||||
import io.onedev.server.OneException;
|
||||
|
||||
public class InvalidBuildSpecException extends OneException {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
public InvalidBuildSpecException(String message, Throwable cause) {
|
||||
super(message, cause);
|
||||
}
|
||||
|
||||
}
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job;
|
||||
package io.onedev.server.buildspec.job;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.List;
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job;
|
||||
package io.onedev.server.buildspec.job;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.List;
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job;
|
||||
package io.onedev.server.buildspec.job;
|
||||
|
||||
import java.util.concurrent.CancellationException;
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job;
|
||||
package io.onedev.server.buildspec.job;
|
||||
|
||||
import java.io.File;
|
||||
import java.util.ArrayList;
|
||||
@ -52,15 +52,15 @@ import io.onedev.commons.utils.MatrixRunner;
|
||||
import io.onedev.k8shelper.CacheInstance;
|
||||
import io.onedev.server.OneDev;
|
||||
import io.onedev.server.OneException;
|
||||
import io.onedev.server.ci.CISpec;
|
||||
import io.onedev.server.ci.job.action.PostBuildAction;
|
||||
import io.onedev.server.ci.job.action.condition.ActionCondition;
|
||||
import io.onedev.server.ci.job.log.LogManager;
|
||||
import io.onedev.server.ci.job.paramspec.ParamSpec;
|
||||
import io.onedev.server.ci.job.paramspec.SecretParam;
|
||||
import io.onedev.server.ci.job.paramsupply.ParamSupply;
|
||||
import io.onedev.server.ci.job.retrycondition.RetryCondition;
|
||||
import io.onedev.server.ci.job.trigger.JobTrigger;
|
||||
import io.onedev.server.buildspec.BuildSpec;
|
||||
import io.onedev.server.buildspec.job.action.PostBuildAction;
|
||||
import io.onedev.server.buildspec.job.action.condition.ActionCondition;
|
||||
import io.onedev.server.buildspec.job.log.LogManager;
|
||||
import io.onedev.server.buildspec.job.paramspec.ParamSpec;
|
||||
import io.onedev.server.buildspec.job.paramspec.SecretParam;
|
||||
import io.onedev.server.buildspec.job.paramsupply.ParamSupply;
|
||||
import io.onedev.server.buildspec.job.retrycondition.RetryCondition;
|
||||
import io.onedev.server.buildspec.job.trigger.JobTrigger;
|
||||
import io.onedev.server.entitymanager.BuildManager;
|
||||
import io.onedev.server.entitymanager.BuildParamManager;
|
||||
import io.onedev.server.entitymanager.ProjectManager;
|
||||
@ -568,9 +568,9 @@ public class DefaultJobManager implements JobManager, Runnable, CodePullAuthoriz
|
||||
if (!commitId.equals(ObjectId.zeroId())) {
|
||||
ScriptIdentity.push(new JobIdentity(event.getProject(), commitId));
|
||||
try {
|
||||
CISpec ciSpec = event.getProject().getCISpec(commitId);
|
||||
if (ciSpec != null) {
|
||||
for (Job job: ciSpec.getJobs()) {
|
||||
BuildSpec buildSpec = event.getProject().getBuildSpec(commitId);
|
||||
if (buildSpec != null) {
|
||||
for (Job job: buildSpec.getJobs()) {
|
||||
JobTrigger trigger = job.getMatchedTrigger(event);
|
||||
if (trigger != null) {
|
||||
Map<String, List<List<String>>> paramMatrix = ParamSupply.getParamMatrix(trigger.getParams());
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job;
|
||||
package io.onedev.server.buildspec.job;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.List;
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job;
|
||||
package io.onedev.server.buildspec.job;
|
||||
|
||||
import static io.onedev.server.search.entity.EntityQuery.quote;
|
||||
import static io.onedev.server.search.entity.build.BuildQuery.getRuleName;
|
||||
@ -24,12 +24,12 @@ import org.eclipse.jgit.revwalk.RevCommit;
|
||||
import org.hibernate.validator.constraints.NotEmpty;
|
||||
|
||||
import io.onedev.commons.codeassist.InputSuggestion;
|
||||
import io.onedev.server.ci.CISpec;
|
||||
import io.onedev.server.ci.CISpecAware;
|
||||
import io.onedev.server.ci.job.action.PostBuildAction;
|
||||
import io.onedev.server.ci.job.paramspec.ParamSpec;
|
||||
import io.onedev.server.ci.job.paramsupply.ParamSupply;
|
||||
import io.onedev.server.ci.job.trigger.JobTrigger;
|
||||
import io.onedev.server.buildspec.BuildSpec;
|
||||
import io.onedev.server.buildspec.BuildSpecAware;
|
||||
import io.onedev.server.buildspec.job.action.PostBuildAction;
|
||||
import io.onedev.server.buildspec.job.paramspec.ParamSpec;
|
||||
import io.onedev.server.buildspec.job.paramsupply.ParamSupply;
|
||||
import io.onedev.server.buildspec.job.trigger.JobTrigger;
|
||||
import io.onedev.server.event.ProjectEvent;
|
||||
import io.onedev.server.model.Project;
|
||||
import io.onedev.server.util.ComponentContext;
|
||||
@ -465,11 +465,11 @@ public class Job implements Serializable, Validatable {
|
||||
public static List<String> getChoices() {
|
||||
List<String> choices = new ArrayList<>();
|
||||
Component component = ComponentContext.get().getComponent();
|
||||
CISpecAware ciSpecAware = WicketUtils.findInnermost(component, CISpecAware.class);
|
||||
if (ciSpecAware != null) {
|
||||
CISpec ciSpec = ciSpecAware.getCISpec();
|
||||
if (ciSpec != null) {
|
||||
for (Job eachJob: ciSpec.getJobs()) {
|
||||
BuildSpecAware buildSpecAware = WicketUtils.findInnermost(component, BuildSpecAware.class);
|
||||
if (buildSpecAware != null) {
|
||||
BuildSpec buildSpec = buildSpecAware.getBuildSpec();
|
||||
if (buildSpec != null) {
|
||||
for (Job eachJob: buildSpec.getJobs()) {
|
||||
if (eachJob.getName() != null)
|
||||
choices.add(eachJob.getName());
|
||||
}
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job;
|
||||
package io.onedev.server.buildspec.job;
|
||||
|
||||
import javax.annotation.Nullable;
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job;
|
||||
package io.onedev.server.buildspec.job;
|
||||
|
||||
import java.io.File;
|
||||
import java.util.Collection;
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job;
|
||||
package io.onedev.server.buildspec.job;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.ArrayList;
|
||||
@ -8,10 +8,10 @@ import org.apache.wicket.Component;
|
||||
import org.hibernate.validator.constraints.NotEmpty;
|
||||
|
||||
import io.onedev.commons.codeassist.InputSuggestion;
|
||||
import io.onedev.server.ci.CISpec;
|
||||
import io.onedev.server.ci.CISpecAware;
|
||||
import io.onedev.server.ci.job.paramspec.ParamSpec;
|
||||
import io.onedev.server.ci.job.paramsupply.ParamSupply;
|
||||
import io.onedev.server.buildspec.BuildSpec;
|
||||
import io.onedev.server.buildspec.BuildSpecAware;
|
||||
import io.onedev.server.buildspec.job.paramspec.ParamSpec;
|
||||
import io.onedev.server.buildspec.job.paramsupply.ParamSupply;
|
||||
import io.onedev.server.util.ComponentContext;
|
||||
import io.onedev.server.util.EditContext;
|
||||
import io.onedev.server.web.editable.annotation.ChoiceProvider;
|
||||
@ -97,11 +97,11 @@ public class JobDependency implements Serializable {
|
||||
String jobName = (String) EditContext.get().getInputValue("jobName");
|
||||
if (jobName != null) {
|
||||
Component component = ComponentContext.get().getComponent();
|
||||
CISpecAware ciSpecAware = WicketUtils.findInnermost(component, CISpecAware.class);
|
||||
if (ciSpecAware != null) {
|
||||
CISpec ciSpec = ciSpecAware.getCISpec();
|
||||
if (ciSpec != null) {
|
||||
Job job = ciSpec.getJobMap().get(jobName);
|
||||
BuildSpecAware buildSpecAware = WicketUtils.findInnermost(component, BuildSpecAware.class);
|
||||
if (buildSpecAware != null) {
|
||||
BuildSpec buildSpec = buildSpecAware.getBuildSpec();
|
||||
if (buildSpec != null) {
|
||||
Job job = buildSpec.getJobMap().get(jobName);
|
||||
if (job != null)
|
||||
return job.getParamSpecs();
|
||||
}
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job;
|
||||
package io.onedev.server.buildspec.job;
|
||||
|
||||
import java.util.concurrent.ExecutionException;
|
||||
import java.util.concurrent.Future;
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job;
|
||||
package io.onedev.server.buildspec.job;
|
||||
|
||||
import javax.annotation.Nullable;
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job;
|
||||
package io.onedev.server.buildspec.job;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.Date;
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job;
|
||||
package io.onedev.server.buildspec.job;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.Serializable;
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job;
|
||||
package io.onedev.server.buildspec.job;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.ArrayList;
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job;
|
||||
package io.onedev.server.buildspec.job;
|
||||
|
||||
import java.util.Collection;
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job;
|
||||
package io.onedev.server.buildspec.job;
|
||||
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job;
|
||||
package io.onedev.server.buildspec.job;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.ArrayList;
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job;
|
||||
package io.onedev.server.buildspec.job;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job;
|
||||
package io.onedev.server.buildspec.job;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
@ -9,7 +9,7 @@ import java.util.function.Function;
|
||||
|
||||
import io.onedev.commons.utils.StringUtils;
|
||||
import io.onedev.server.OneException;
|
||||
import io.onedev.server.ci.job.paramspec.ParamSpec;
|
||||
import io.onedev.server.buildspec.job.paramspec.ParamSpec;
|
||||
import io.onedev.server.model.Build;
|
||||
import io.onedev.server.util.GroovyUtils;
|
||||
import io.onedev.server.util.Input;
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job.action;
|
||||
package io.onedev.server.buildspec.job.action;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collection;
|
||||
@ -14,8 +14,8 @@ import org.hibernate.validator.constraints.NotEmpty;
|
||||
|
||||
import io.onedev.commons.codeassist.InputSuggestion;
|
||||
import io.onedev.server.OneDev;
|
||||
import io.onedev.server.ci.CISpec;
|
||||
import io.onedev.server.ci.job.Job;
|
||||
import io.onedev.server.buildspec.BuildSpec;
|
||||
import io.onedev.server.buildspec.job.Job;
|
||||
import io.onedev.server.entitymanager.BuildManager;
|
||||
import io.onedev.server.entitymanager.IssueManager;
|
||||
import io.onedev.server.entitymanager.SettingManager;
|
||||
@ -139,8 +139,8 @@ public class CreateIssueAction extends PostBuildAction {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void validateWithContext(CISpec ciSpec, Job job) {
|
||||
super.validateWithContext(ciSpec, job);
|
||||
public void validateWithContext(BuildSpec buildSpec, Job job) {
|
||||
super.validateWithContext(buildSpec, job);
|
||||
|
||||
GlobalIssueSetting issueSetting = OneDev.getInstance(SettingManager.class).getIssueSetting();
|
||||
try {
|
||||
@ -1,11 +1,11 @@
|
||||
package io.onedev.server.ci.job.action;
|
||||
package io.onedev.server.buildspec.job.action;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
import org.hibernate.validator.constraints.NotEmpty;
|
||||
|
||||
import io.onedev.server.ci.CISpec;
|
||||
import io.onedev.server.ci.job.Job;
|
||||
import io.onedev.server.buildspec.BuildSpec;
|
||||
import io.onedev.server.buildspec.job.Job;
|
||||
import io.onedev.server.model.Build;
|
||||
import io.onedev.server.web.editable.annotation.ActionCondition;
|
||||
import io.onedev.server.web.editable.annotation.Editable;
|
||||
@ -32,9 +32,9 @@ public abstract class PostBuildAction implements Serializable {
|
||||
|
||||
public abstract String getDescription();
|
||||
|
||||
public void validateWithContext(CISpec ciSpec, Job job) {
|
||||
public void validateWithContext(BuildSpec buildSpec, Job job) {
|
||||
try {
|
||||
io.onedev.server.ci.job.action.condition.ActionCondition.parse(job, condition);
|
||||
io.onedev.server.buildspec.job.action.condition.ActionCondition.parse(job, condition);
|
||||
} catch (Exception e) {
|
||||
String message = "Invalid action condition";
|
||||
if (e.getMessage() != null)
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job.action;
|
||||
package io.onedev.server.buildspec.job.action;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
@ -15,12 +15,12 @@ import org.slf4j.LoggerFactory;
|
||||
|
||||
import io.onedev.commons.utils.MatrixRunner;
|
||||
import io.onedev.server.OneDev;
|
||||
import io.onedev.server.ci.CISpec;
|
||||
import io.onedev.server.ci.CISpecAware;
|
||||
import io.onedev.server.ci.job.Job;
|
||||
import io.onedev.server.ci.job.JobManager;
|
||||
import io.onedev.server.ci.job.paramspec.ParamSpec;
|
||||
import io.onedev.server.ci.job.paramsupply.ParamSupply;
|
||||
import io.onedev.server.buildspec.BuildSpec;
|
||||
import io.onedev.server.buildspec.BuildSpecAware;
|
||||
import io.onedev.server.buildspec.job.Job;
|
||||
import io.onedev.server.buildspec.job.JobManager;
|
||||
import io.onedev.server.buildspec.job.paramspec.ParamSpec;
|
||||
import io.onedev.server.buildspec.job.paramsupply.ParamSupply;
|
||||
import io.onedev.server.entitymanager.BuildManager;
|
||||
import io.onedev.server.model.Build;
|
||||
import io.onedev.server.persistence.SessionManager;
|
||||
@ -77,11 +77,11 @@ public class RunJobAction extends PostBuildAction {
|
||||
String jobName = (String) EditContext.get().getInputValue("jobName");
|
||||
if (jobName != null) {
|
||||
Component component = ComponentContext.get().getComponent();
|
||||
CISpecAware ciSpecAware = WicketUtils.findInnermost(component, CISpecAware.class);
|
||||
if (ciSpecAware != null) {
|
||||
CISpec ciSpec = ciSpecAware.getCISpec();
|
||||
if (ciSpec != null) {
|
||||
Job job = ciSpec.getJobMap().get(jobName);
|
||||
BuildSpecAware buildSpecAware = WicketUtils.findInnermost(component, BuildSpecAware.class);
|
||||
if (buildSpecAware != null) {
|
||||
BuildSpec buildSpec = buildSpecAware.getBuildSpec();
|
||||
if (buildSpec != null) {
|
||||
Job job = buildSpec.getJobMap().get(jobName);
|
||||
if (job != null)
|
||||
return job.getParamSpecs();
|
||||
}
|
||||
@ -135,10 +135,10 @@ public class RunJobAction extends PostBuildAction {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void validateWithContext(CISpec ciSpec, Job job) {
|
||||
super.validateWithContext(ciSpec, job);
|
||||
public void validateWithContext(BuildSpec buildSpec, Job job) {
|
||||
super.validateWithContext(buildSpec, job);
|
||||
|
||||
Job jobToRun = ciSpec.getJobMap().get(jobName);
|
||||
Job jobToRun = buildSpec.getJobMap().get(jobName);
|
||||
if (jobToRun != null) {
|
||||
try {
|
||||
ParamSupply.validateParams(jobToRun.getParamSpecs(), jobParams);
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job.action;
|
||||
package io.onedev.server.buildspec.job.action;
|
||||
|
||||
import org.hibernate.validator.constraints.NotEmpty;
|
||||
|
||||
@ -29,7 +29,7 @@ public class SendNotificationAction extends PostBuildAction {
|
||||
@Override
|
||||
public void execute(Build build) {
|
||||
OneDev.getInstance(BuildNotificationManager.class).notify(build,
|
||||
io.onedev.server.ci.job.action.notificationreceiver.NotificationReceiver.fromString(receivers, build).getEmails());
|
||||
io.onedev.server.buildspec.job.action.notificationreceiver.NotificationReceiver.fromString(receivers, build).getEmails());
|
||||
}
|
||||
|
||||
@Override
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job.action.condition;
|
||||
package io.onedev.server.buildspec.job.action.condition;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
@ -16,16 +16,19 @@ import io.onedev.commons.codeassist.AntlrUtils;
|
||||
import io.onedev.commons.codeassist.FenceAware;
|
||||
import io.onedev.commons.utils.StringUtils;
|
||||
import io.onedev.server.OneException;
|
||||
import io.onedev.server.ci.job.Job;
|
||||
import io.onedev.server.ci.job.action.condition.ActionConditionParser.AndCriteriaContext;
|
||||
import io.onedev.server.ci.job.action.condition.ActionConditionParser.ConditionContext;
|
||||
import io.onedev.server.ci.job.action.condition.ActionConditionParser.CriteriaContext;
|
||||
import io.onedev.server.ci.job.action.condition.ActionConditionParser.FieldOperatorValueCriteriaContext;
|
||||
import io.onedev.server.ci.job.action.condition.ActionConditionParser.NotCriteriaContext;
|
||||
import io.onedev.server.ci.job.action.condition.ActionConditionParser.OperatorCriteriaContext;
|
||||
import io.onedev.server.ci.job.action.condition.ActionConditionParser.OperatorValueCriteriaContext;
|
||||
import io.onedev.server.ci.job.action.condition.ActionConditionParser.OrCriteriaContext;
|
||||
import io.onedev.server.ci.job.action.condition.ActionConditionParser.ParensCriteriaContext;
|
||||
import io.onedev.server.buildspec.job.Job;
|
||||
import io.onedev.server.buildspec.job.action.condition.ActionConditionBaseVisitor;
|
||||
import io.onedev.server.buildspec.job.action.condition.ActionConditionLexer;
|
||||
import io.onedev.server.buildspec.job.action.condition.ActionConditionParser;
|
||||
import io.onedev.server.buildspec.job.action.condition.ActionConditionParser.AndCriteriaContext;
|
||||
import io.onedev.server.buildspec.job.action.condition.ActionConditionParser.ConditionContext;
|
||||
import io.onedev.server.buildspec.job.action.condition.ActionConditionParser.CriteriaContext;
|
||||
import io.onedev.server.buildspec.job.action.condition.ActionConditionParser.FieldOperatorValueCriteriaContext;
|
||||
import io.onedev.server.buildspec.job.action.condition.ActionConditionParser.NotCriteriaContext;
|
||||
import io.onedev.server.buildspec.job.action.condition.ActionConditionParser.OperatorCriteriaContext;
|
||||
import io.onedev.server.buildspec.job.action.condition.ActionConditionParser.OperatorValueCriteriaContext;
|
||||
import io.onedev.server.buildspec.job.action.condition.ActionConditionParser.OrCriteriaContext;
|
||||
import io.onedev.server.buildspec.job.action.condition.ActionConditionParser.ParensCriteriaContext;
|
||||
import io.onedev.server.model.Build;
|
||||
import io.onedev.server.util.BuildConstants;
|
||||
import io.onedev.server.util.criteria.AndCriteria;
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job.action.condition;
|
||||
package io.onedev.server.buildspec.job.action.condition;
|
||||
|
||||
import java.util.function.Predicate;
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job.action.condition;
|
||||
package io.onedev.server.buildspec.job.action.condition;
|
||||
|
||||
import java.util.function.Predicate;
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job.action.condition;
|
||||
package io.onedev.server.buildspec.job.action.condition;
|
||||
|
||||
import java.util.function.Predicate;
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job.retrycondition;
|
||||
package io.onedev.server.buildspec.job.action.condition;
|
||||
|
||||
import java.util.function.Predicate;
|
||||
import java.util.regex.Pattern;
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job.action.condition;
|
||||
package io.onedev.server.buildspec.job.action.condition;
|
||||
|
||||
import java.util.function.Predicate;
|
||||
|
||||
@ -1,10 +1,10 @@
|
||||
package io.onedev.server.ci.job.retrycondition;
|
||||
package io.onedev.server.buildspec.job.action.condition;
|
||||
|
||||
import java.util.function.Predicate;
|
||||
import java.util.regex.Pattern;
|
||||
|
||||
import io.onedev.server.OneDev;
|
||||
import io.onedev.server.ci.job.log.LogManager;
|
||||
import io.onedev.server.buildspec.job.log.LogManager;
|
||||
import io.onedev.server.model.Build;
|
||||
|
||||
public class LogCriteria implements Predicate<Build> {
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job.action.condition;
|
||||
package io.onedev.server.buildspec.job.action.condition;
|
||||
|
||||
import java.util.function.Predicate;
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job.retrycondition;
|
||||
package io.onedev.server.buildspec.job.action.condition;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.function.Predicate;
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job.action.condition;
|
||||
package io.onedev.server.buildspec.job.action.condition;
|
||||
|
||||
import java.util.function.Predicate;
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job.action.condition;
|
||||
package io.onedev.server.buildspec.job.action.condition;
|
||||
|
||||
import java.util.function.Predicate;
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job.action.condition;
|
||||
package io.onedev.server.buildspec.job.action.condition;
|
||||
|
||||
import java.util.function.Predicate;
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job.action.condition;
|
||||
package io.onedev.server.buildspec.job.action.condition;
|
||||
|
||||
import java.util.function.Predicate;
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job.action.condition;
|
||||
package io.onedev.server.buildspec.job.action.condition;
|
||||
|
||||
import java.util.function.Predicate;
|
||||
import io.onedev.server.model.Build;
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job.action.condition;
|
||||
package io.onedev.server.buildspec.job.action.condition;
|
||||
|
||||
import java.util.function.Predicate;
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job.action.condition;
|
||||
package io.onedev.server.buildspec.job.action.condition;
|
||||
|
||||
import java.util.function.Predicate;
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job.action.notificationreceiver;
|
||||
package io.onedev.server.buildspec.job.action.notificationreceiver;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.HashSet;
|
||||
@ -21,8 +21,10 @@ import io.onedev.commons.codeassist.FenceAware;
|
||||
import io.onedev.commons.utils.StringUtils;
|
||||
import io.onedev.server.OneDev;
|
||||
import io.onedev.server.OneException;
|
||||
import io.onedev.server.ci.job.action.notificationreceiver.NotificationReceiverParser.CriteriaContext;
|
||||
import io.onedev.server.ci.job.action.notificationreceiver.NotificationReceiverParser.ReceiverContext;
|
||||
import io.onedev.server.buildspec.job.action.notificationreceiver.NotificationReceiverLexer;
|
||||
import io.onedev.server.buildspec.job.action.notificationreceiver.NotificationReceiverParser;
|
||||
import io.onedev.server.buildspec.job.action.notificationreceiver.NotificationReceiverParser.CriteriaContext;
|
||||
import io.onedev.server.buildspec.job.action.notificationreceiver.NotificationReceiverParser.ReceiverContext;
|
||||
import io.onedev.server.entitymanager.GroupManager;
|
||||
import io.onedev.server.entitymanager.UserManager;
|
||||
import io.onedev.server.model.Build;
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job.log;
|
||||
package io.onedev.server.buildspec.job.log;
|
||||
|
||||
import java.io.BufferedInputStream;
|
||||
import java.io.BufferedOutputStream;
|
||||
@ -39,9 +39,9 @@ import io.onedev.commons.launcher.loader.Listen;
|
||||
import io.onedev.commons.utils.ExceptionUtils;
|
||||
import io.onedev.commons.utils.LockUtils;
|
||||
import io.onedev.server.OneDev;
|
||||
import io.onedev.server.ci.job.log.instruction.LogInstruction;
|
||||
import io.onedev.server.ci.job.log.instruction.LogInstructionParser.InstructionContext;
|
||||
import io.onedev.server.ci.job.log.instruction.LogInstructionParser.ParamContext;
|
||||
import io.onedev.server.buildspec.job.log.instruction.LogInstruction;
|
||||
import io.onedev.server.buildspec.job.log.instruction.LogInstructionParser.InstructionContext;
|
||||
import io.onedev.server.buildspec.job.log.instruction.LogInstructionParser.ParamContext;
|
||||
import io.onedev.server.entitymanager.BuildManager;
|
||||
import io.onedev.server.event.build.BuildFinished;
|
||||
import io.onedev.server.model.Build;
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job.log;
|
||||
package io.onedev.server.buildspec.job.log;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job.log;
|
||||
package io.onedev.server.buildspec.job.log;
|
||||
|
||||
import java.io.InputStream;
|
||||
import java.util.Collection;
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job.log;
|
||||
package io.onedev.server.buildspec.job.log;
|
||||
|
||||
import java.util.LinkedList;
|
||||
import java.util.List;
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job.log.instruction;
|
||||
package io.onedev.server.buildspec.job.log.instruction;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
@ -16,7 +16,9 @@ import io.onedev.commons.codeassist.FenceAware;
|
||||
import io.onedev.commons.launcher.loader.ExtensionPoint;
|
||||
import io.onedev.commons.utils.StringUtils;
|
||||
import io.onedev.server.OneException;
|
||||
import io.onedev.server.ci.job.log.instruction.LogInstructionParser.InstructionContext;
|
||||
import io.onedev.server.buildspec.job.log.instruction.LogInstructionLexer;
|
||||
import io.onedev.server.buildspec.job.log.instruction.LogInstructionParser;
|
||||
import io.onedev.server.buildspec.job.log.instruction.LogInstructionParser.InstructionContext;
|
||||
import io.onedev.server.model.Build;
|
||||
|
||||
@ExtensionPoint
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job.log.instruction;
|
||||
package io.onedev.server.buildspec.job.log.instruction;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job.paramspec;
|
||||
package io.onedev.server.buildspec.job.paramspec;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job.paramspec;
|
||||
package io.onedev.server.buildspec.job.paramspec;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job.paramspec;
|
||||
package io.onedev.server.buildspec.job.paramspec;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job.paramspec;
|
||||
package io.onedev.server.buildspec.job.paramspec;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job.paramspec;
|
||||
package io.onedev.server.buildspec.job.paramspec;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job.paramspec;
|
||||
package io.onedev.server.buildspec.job.paramspec;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job.paramspec;
|
||||
package io.onedev.server.buildspec.job.paramspec;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job.paramspec;
|
||||
package io.onedev.server.buildspec.job.paramspec;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job.paramspec;
|
||||
package io.onedev.server.buildspec.job.paramspec;
|
||||
|
||||
import javax.validation.Valid;
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job.paramspec;
|
||||
package io.onedev.server.buildspec.job.paramspec;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job.paramspec;
|
||||
package io.onedev.server.buildspec.job.paramspec;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job.paramspec;
|
||||
package io.onedev.server.buildspec.job.paramspec;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job.paramspec;
|
||||
package io.onedev.server.buildspec.job.paramspec;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job.paramsupply;
|
||||
package io.onedev.server.buildspec.job.paramsupply;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.ArrayList;
|
||||
@ -26,9 +26,9 @@ import org.slf4j.LoggerFactory;
|
||||
|
||||
import com.google.common.base.Preconditions;
|
||||
|
||||
import io.onedev.server.ci.job.Job;
|
||||
import io.onedev.server.ci.job.paramspec.ParamSpec;
|
||||
import io.onedev.server.ci.job.paramspec.SecretParam;
|
||||
import io.onedev.server.buildspec.job.Job;
|
||||
import io.onedev.server.buildspec.job.paramspec.ParamSpec;
|
||||
import io.onedev.server.buildspec.job.paramspec.SecretParam;
|
||||
import io.onedev.server.util.inputspec.SecretInput;
|
||||
import io.onedev.server.web.editable.BeanDescriptor;
|
||||
import io.onedev.server.web.editable.PropertyDescriptor;
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job.paramsupply;
|
||||
package io.onedev.server.buildspec.job.paramsupply;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collection;
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job.paramsupply;
|
||||
package io.onedev.server.buildspec.job.paramsupply;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job.paramsupply;
|
||||
package io.onedev.server.buildspec.job.paramsupply;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.List;
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job.retrycondition;
|
||||
package io.onedev.server.buildspec.job.retrycondition;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job.action.condition;
|
||||
package io.onedev.server.buildspec.job.retrycondition;
|
||||
|
||||
import java.util.function.Predicate;
|
||||
import java.util.regex.Pattern;
|
||||
@ -1,10 +1,10 @@
|
||||
package io.onedev.server.ci.job.action.condition;
|
||||
package io.onedev.server.buildspec.job.retrycondition;
|
||||
|
||||
import java.util.function.Predicate;
|
||||
import java.util.regex.Pattern;
|
||||
|
||||
import io.onedev.server.OneDev;
|
||||
import io.onedev.server.ci.job.log.LogManager;
|
||||
import io.onedev.server.buildspec.job.log.LogManager;
|
||||
import io.onedev.server.model.Build;
|
||||
|
||||
public class LogCriteria implements Predicate<Build> {
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job.retrycondition;
|
||||
package io.onedev.server.buildspec.job.retrycondition;
|
||||
|
||||
import java.util.function.Predicate;
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job.action.condition;
|
||||
package io.onedev.server.buildspec.job.retrycondition;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.function.Predicate;
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job.retrycondition;
|
||||
package io.onedev.server.buildspec.job.retrycondition;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
@ -16,14 +16,17 @@ import io.onedev.commons.codeassist.AntlrUtils;
|
||||
import io.onedev.commons.codeassist.FenceAware;
|
||||
import io.onedev.commons.utils.StringUtils;
|
||||
import io.onedev.server.OneException;
|
||||
import io.onedev.server.ci.job.Job;
|
||||
import io.onedev.server.ci.job.retrycondition.RetryConditionParser.AndCriteriaContext;
|
||||
import io.onedev.server.ci.job.retrycondition.RetryConditionParser.ConditionContext;
|
||||
import io.onedev.server.ci.job.retrycondition.RetryConditionParser.CriteriaContext;
|
||||
import io.onedev.server.ci.job.retrycondition.RetryConditionParser.FieldOperatorValueCriteriaContext;
|
||||
import io.onedev.server.ci.job.retrycondition.RetryConditionParser.NotCriteriaContext;
|
||||
import io.onedev.server.ci.job.retrycondition.RetryConditionParser.OrCriteriaContext;
|
||||
import io.onedev.server.ci.job.retrycondition.RetryConditionParser.ParensCriteriaContext;
|
||||
import io.onedev.server.buildspec.job.Job;
|
||||
import io.onedev.server.buildspec.job.retrycondition.RetryConditionBaseVisitor;
|
||||
import io.onedev.server.buildspec.job.retrycondition.RetryConditionLexer;
|
||||
import io.onedev.server.buildspec.job.retrycondition.RetryConditionParser;
|
||||
import io.onedev.server.buildspec.job.retrycondition.RetryConditionParser.AndCriteriaContext;
|
||||
import io.onedev.server.buildspec.job.retrycondition.RetryConditionParser.ConditionContext;
|
||||
import io.onedev.server.buildspec.job.retrycondition.RetryConditionParser.CriteriaContext;
|
||||
import io.onedev.server.buildspec.job.retrycondition.RetryConditionParser.FieldOperatorValueCriteriaContext;
|
||||
import io.onedev.server.buildspec.job.retrycondition.RetryConditionParser.NotCriteriaContext;
|
||||
import io.onedev.server.buildspec.job.retrycondition.RetryConditionParser.OrCriteriaContext;
|
||||
import io.onedev.server.buildspec.job.retrycondition.RetryConditionParser.ParensCriteriaContext;
|
||||
import io.onedev.server.model.Build;
|
||||
import io.onedev.server.util.BuildConstants;
|
||||
import io.onedev.server.util.criteria.AndCriteria;
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job.trigger;
|
||||
package io.onedev.server.buildspec.job.trigger;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
@ -8,7 +8,7 @@ import org.eclipse.jgit.lib.ObjectId;
|
||||
import io.onedev.commons.codeassist.InputSuggestion;
|
||||
import io.onedev.commons.utils.match.Matcher;
|
||||
import io.onedev.commons.utils.match.PathMatcher;
|
||||
import io.onedev.server.ci.job.Job;
|
||||
import io.onedev.server.buildspec.job.Job;
|
||||
import io.onedev.server.event.ProjectEvent;
|
||||
import io.onedev.server.event.RefUpdated;
|
||||
import io.onedev.server.git.GitUtils;
|
||||
@ -1,10 +1,10 @@
|
||||
package io.onedev.server.ci.job.trigger;
|
||||
package io.onedev.server.buildspec.job.trigger;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import io.onedev.server.ci.job.Job;
|
||||
import io.onedev.server.ci.job.JobDependency;
|
||||
import io.onedev.server.ci.job.paramsupply.ParamSupply;
|
||||
import io.onedev.server.buildspec.job.Job;
|
||||
import io.onedev.server.buildspec.job.JobDependency;
|
||||
import io.onedev.server.buildspec.job.paramsupply.ParamSupply;
|
||||
import io.onedev.server.event.ProjectEvent;
|
||||
import io.onedev.server.event.build.BuildFinished;
|
||||
import io.onedev.server.model.Build;
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job.trigger;
|
||||
package io.onedev.server.buildspec.job.trigger;
|
||||
|
||||
import java.io.Serializable;
|
||||
import java.util.ArrayList;
|
||||
@ -8,10 +8,10 @@ import javax.validation.Valid;
|
||||
|
||||
import org.apache.wicket.Component;
|
||||
|
||||
import io.onedev.server.ci.job.Job;
|
||||
import io.onedev.server.ci.job.JobAware;
|
||||
import io.onedev.server.ci.job.paramspec.ParamSpec;
|
||||
import io.onedev.server.ci.job.paramsupply.ParamSupply;
|
||||
import io.onedev.server.buildspec.job.Job;
|
||||
import io.onedev.server.buildspec.job.JobAware;
|
||||
import io.onedev.server.buildspec.job.paramspec.ParamSpec;
|
||||
import io.onedev.server.buildspec.job.paramsupply.ParamSupply;
|
||||
import io.onedev.server.event.ProjectEvent;
|
||||
import io.onedev.server.util.ComponentContext;
|
||||
import io.onedev.server.web.editable.annotation.Editable;
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job.trigger;
|
||||
package io.onedev.server.buildspec.job.trigger;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
@ -8,7 +8,7 @@ import org.eclipse.jgit.lib.ObjectId;
|
||||
import io.onedev.commons.codeassist.InputSuggestion;
|
||||
import io.onedev.commons.utils.match.Matcher;
|
||||
import io.onedev.commons.utils.match.PathMatcher;
|
||||
import io.onedev.server.ci.job.Job;
|
||||
import io.onedev.server.buildspec.job.Job;
|
||||
import io.onedev.server.event.ProjectEvent;
|
||||
import io.onedev.server.event.pullrequest.PullRequestMergePreviewCalculated;
|
||||
import io.onedev.server.git.GitUtils;
|
||||
@ -1,4 +1,4 @@
|
||||
package io.onedev.server.ci.job.trigger;
|
||||
package io.onedev.server.buildspec.job.trigger;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@ -6,7 +6,7 @@ import org.eclipse.jgit.lib.ObjectId;
|
||||
|
||||
import io.onedev.commons.codeassist.InputSuggestion;
|
||||
import io.onedev.commons.utils.match.PathMatcher;
|
||||
import io.onedev.server.ci.job.Job;
|
||||
import io.onedev.server.buildspec.job.Job;
|
||||
import io.onedev.server.event.ProjectEvent;
|
||||
import io.onedev.server.event.RefUpdated;
|
||||
import io.onedev.server.git.GitUtils;
|
||||
@ -1,10 +0,0 @@
|
||||
package io.onedev.server.ci;
|
||||
|
||||
import javax.annotation.Nullable;
|
||||
|
||||
public interface CISpecAware {
|
||||
|
||||
@Nullable
|
||||
CISpec getCISpec();
|
||||
|
||||
}
|
||||
@ -1,13 +0,0 @@
|
||||
package io.onedev.server.ci;
|
||||
|
||||
import io.onedev.server.OneException;
|
||||
|
||||
public class InvalidCISpecException extends OneException {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
public InvalidCISpecException(String message, Throwable cause) {
|
||||
super(message, cause);
|
||||
}
|
||||
|
||||
}
|
||||
@ -18,7 +18,7 @@ import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import io.onedev.commons.launcher.loader.Listen;
|
||||
import io.onedev.server.ci.job.paramspec.ParamSpec;
|
||||
import io.onedev.server.buildspec.job.paramspec.ParamSpec;
|
||||
import io.onedev.server.entitymanager.BuildParamManager;
|
||||
import io.onedev.server.event.system.SystemStarted;
|
||||
import io.onedev.server.model.Build;
|
||||
|
||||
@ -60,13 +60,13 @@ import io.onedev.commons.utils.MatrixRunner;
|
||||
import io.onedev.commons.utils.concurrent.Prioritized;
|
||||
import io.onedev.server.OneDev;
|
||||
import io.onedev.server.OneException;
|
||||
import io.onedev.server.buildspec.BuildSpec;
|
||||
import io.onedev.server.buildspec.job.Job;
|
||||
import io.onedev.server.buildspec.job.JobManager;
|
||||
import io.onedev.server.buildspec.job.paramsupply.ParamSupply;
|
||||
import io.onedev.server.buildspec.job.trigger.JobTrigger;
|
||||
import io.onedev.server.buildspec.job.trigger.PullRequestTrigger;
|
||||
import io.onedev.server.cache.CommitInfoManager;
|
||||
import io.onedev.server.ci.CISpec;
|
||||
import io.onedev.server.ci.job.Job;
|
||||
import io.onedev.server.ci.job.JobManager;
|
||||
import io.onedev.server.ci.job.paramsupply.ParamSupply;
|
||||
import io.onedev.server.ci.job.trigger.JobTrigger;
|
||||
import io.onedev.server.ci.job.trigger.PullRequestTrigger;
|
||||
import io.onedev.server.entitymanager.ProjectManager;
|
||||
import io.onedev.server.entitymanager.PullRequestBuildManager;
|
||||
import io.onedev.server.entitymanager.PullRequestChangeManager;
|
||||
@ -734,9 +734,9 @@ public class DefaultPullRequestManager extends AbstractEntityManager<PullRequest
|
||||
} else {
|
||||
requiredJobNames = new HashSet<>();
|
||||
}
|
||||
CISpec ciSpec = project.getCISpec(commitId);
|
||||
if (ciSpec != null) {
|
||||
for (Job job: ciSpec.getJobs()) {
|
||||
BuildSpec buildSpec = project.getBuildSpec(commitId);
|
||||
if (buildSpec != null) {
|
||||
for (Job job: buildSpec.getJobs()) {
|
||||
for (JobTrigger trigger: job.getTriggers()) {
|
||||
if (trigger instanceof PullRequestTrigger) {
|
||||
PullRequestTrigger pullRequestTrigger = (PullRequestTrigger) trigger;
|
||||
|
||||
@ -49,12 +49,12 @@ import io.onedev.commons.utils.LockUtils;
|
||||
import io.onedev.commons.utils.StringUtils;
|
||||
import io.onedev.server.OneDev;
|
||||
import io.onedev.server.OneException;
|
||||
import io.onedev.server.buildspec.BuildSpec;
|
||||
import io.onedev.server.buildspec.job.Job;
|
||||
import io.onedev.server.buildspec.job.VariableInterpolator;
|
||||
import io.onedev.server.buildspec.job.paramspec.ParamSpec;
|
||||
import io.onedev.server.buildspec.job.paramsupply.ParamSupply;
|
||||
import io.onedev.server.cache.CommitInfoManager;
|
||||
import io.onedev.server.ci.CISpec;
|
||||
import io.onedev.server.ci.job.Job;
|
||||
import io.onedev.server.ci.job.VariableInterpolator;
|
||||
import io.onedev.server.ci.job.paramspec.ParamSpec;
|
||||
import io.onedev.server.ci.job.paramsupply.ParamSupply;
|
||||
import io.onedev.server.entitymanager.BuildManager;
|
||||
import io.onedev.server.git.GitUtils;
|
||||
import io.onedev.server.git.RefInfo;
|
||||
@ -187,7 +187,7 @@ public class Build extends AbstractEntity implements Referenceable {
|
||||
|
||||
private transient Map<Build.Status, Collection<RevCommit>> commitsCache;
|
||||
|
||||
private transient CISpec ciSpec;
|
||||
private transient BuildSpec buildSpec;
|
||||
|
||||
private transient Job job;
|
||||
|
||||
@ -537,15 +537,15 @@ public class Build extends AbstractEntity implements Referenceable {
|
||||
return project.getSecretValue(secretName, ObjectId.fromString(getCommitHash()));
|
||||
}
|
||||
|
||||
public CISpec getCISpec() {
|
||||
if (ciSpec == null)
|
||||
ciSpec = Preconditions.checkNotNull(getProject().getCISpec(getCommitId()));
|
||||
return ciSpec;
|
||||
public BuildSpec getBuildSpec() {
|
||||
if (buildSpec == null)
|
||||
buildSpec = Preconditions.checkNotNull(getProject().getBuildSpec(getCommitId()));
|
||||
return buildSpec;
|
||||
}
|
||||
|
||||
public Job getJob() {
|
||||
if (job == null)
|
||||
job = Preconditions.checkNotNull(getCISpec().getJobMap().get(getJobName()));
|
||||
job = Preconditions.checkNotNull(getBuildSpec().getJobMap().get(getJobName()));
|
||||
return job;
|
||||
}
|
||||
|
||||
|
||||
@ -73,8 +73,8 @@ import io.onedev.commons.utils.match.Matcher;
|
||||
import io.onedev.commons.utils.match.PathMatcher;
|
||||
import io.onedev.server.OneDev;
|
||||
import io.onedev.server.OneException;
|
||||
import io.onedev.server.buildspec.BuildSpec;
|
||||
import io.onedev.server.cache.CommitInfoManager;
|
||||
import io.onedev.server.ci.CISpec;
|
||||
import io.onedev.server.entitymanager.BuildManager;
|
||||
import io.onedev.server.entitymanager.BuildQuerySettingManager;
|
||||
import io.onedev.server.entitymanager.CodeCommentQuerySettingManager;
|
||||
@ -290,7 +290,7 @@ public class Project extends AbstractEntity {
|
||||
|
||||
private transient Map<String, Optional<ObjectId>> objectIdCache;
|
||||
|
||||
private transient Map<ObjectId, Optional<CISpec>> ciSpecCache;
|
||||
private transient Map<ObjectId, Optional<BuildSpec>> buildSpecCache;
|
||||
|
||||
private transient Map<ObjectId, Map<String, Status>> commitStatusCache;
|
||||
|
||||
@ -672,36 +672,36 @@ public class Project extends AbstractEntity {
|
||||
}
|
||||
|
||||
/**
|
||||
* Get CI spec of specified commit
|
||||
* Get build spec of specified commit
|
||||
* @param commitId
|
||||
* commit id to get CI spec for
|
||||
* commit id to get build spec for
|
||||
* @return
|
||||
* CI spec of specified commit, or <tt>null</tt> if no CI spec is defined and
|
||||
* auto-detection also can not provide an appropriate CI spec
|
||||
* build spec of specified commit, or <tt>null</tt> if no build spec is defined and
|
||||
* auto-detection also can not provide an appropriate build spec
|
||||
* @throws
|
||||
* Exception when CI spec is defined but not valid
|
||||
* Exception when build spec is defined but not valid
|
||||
*/
|
||||
@Nullable
|
||||
public CISpec getCISpec(ObjectId commitId) {
|
||||
if (ciSpecCache == null)
|
||||
ciSpecCache = new HashMap<>();
|
||||
Optional<CISpec> ciSpec = ciSpecCache.get(commitId);
|
||||
if (ciSpec == null) {
|
||||
Blob blob = getBlob(new BlobIdent(commitId.name(), CISpec.BLOB_PATH, FileMode.TYPE_FILE), false);
|
||||
public BuildSpec getBuildSpec(ObjectId commitId) {
|
||||
if (buildSpecCache == null)
|
||||
buildSpecCache = new HashMap<>();
|
||||
Optional<BuildSpec> buildSpec = buildSpecCache.get(commitId);
|
||||
if (buildSpec == null) {
|
||||
Blob blob = getBlob(new BlobIdent(commitId.name(), BuildSpec.BLOB_PATH, FileMode.TYPE_FILE), false);
|
||||
if (blob != null)
|
||||
ciSpec = Optional.fromNullable(CISpec.parse(blob.getBytes()));
|
||||
buildSpec = Optional.fromNullable(BuildSpec.parse(blob.getBytes()));
|
||||
else
|
||||
ciSpec = Optional.absent();
|
||||
ciSpecCache.put(commitId, ciSpec);
|
||||
buildSpec = Optional.absent();
|
||||
buildSpecCache.put(commitId, buildSpec);
|
||||
}
|
||||
return ciSpec.orNull();
|
||||
return buildSpec.orNull();
|
||||
}
|
||||
|
||||
public List<String> getJobNames() {
|
||||
if (jobNames == null) {
|
||||
Set<String> jobNameSet = new HashSet<>();
|
||||
for (RefInfo refInfo: getBranches()) {
|
||||
Blob blob = getBlob(new BlobIdent(refInfo.getPeeledObj().name(), CISpec.BLOB_PATH, FileMode.TYPE_FILE), false);
|
||||
Blob blob = getBlob(new BlobIdent(refInfo.getPeeledObj().name(), BuildSpec.BLOB_PATH, FileMode.TYPE_FILE), false);
|
||||
if (blob != null && blob.getText() != null) {
|
||||
try {
|
||||
VersionedDocument dom = VersionedDocument.fromXML(blob.getText().getContent());
|
||||
|
||||
@ -7,13 +7,13 @@ import java.util.List;
|
||||
import edu.emory.mathcs.backport.java.util.Collections;
|
||||
import io.onedev.server.OneDev;
|
||||
import io.onedev.server.OneException;
|
||||
import io.onedev.server.ci.job.JobContext;
|
||||
import io.onedev.server.ci.job.JobExecutorDiscoverer;
|
||||
import io.onedev.server.buildspec.job.JobContext;
|
||||
import io.onedev.server.buildspec.job.JobExecutorDiscoverer;
|
||||
import io.onedev.server.web.editable.EditableUtils;
|
||||
import io.onedev.server.web.editable.annotation.Editable;
|
||||
import io.onedev.server.web.editable.annotation.Horizontal;
|
||||
|
||||
@Editable(order=10000, description="Discover appropriate job executor automatically to run CI jobs")
|
||||
@Editable(order=10000, description="Discover appropriate job executor automatically to run builds")
|
||||
@Horizontal
|
||||
public class AutoDiscoveredJobExecutor extends JobExecutor {
|
||||
|
||||
@ -38,6 +38,7 @@ public class AutoDiscoveredJobExecutor extends JobExecutor {
|
||||
|
||||
});
|
||||
JobExecutor jobExecutor = jobExecutors.iterator().next();
|
||||
jobExecutor.setName(getName());
|
||||
jobExecutor.setApplicableBranches(getApplicableBranches());
|
||||
jobExecutor.setCacheTTL(getCacheTTL());
|
||||
jobExecutor.setEnabled(isEnabled());
|
||||
|
||||
@ -13,7 +13,7 @@ import io.onedev.commons.launcher.loader.ExtensionPoint;
|
||||
import io.onedev.commons.utils.match.Matcher;
|
||||
import io.onedev.commons.utils.match.PathMatcher;
|
||||
import io.onedev.server.OneDev;
|
||||
import io.onedev.server.ci.job.JobContext;
|
||||
import io.onedev.server.buildspec.job.JobContext;
|
||||
import io.onedev.server.entitymanager.BuildManager;
|
||||
import io.onedev.server.model.Project;
|
||||
import io.onedev.server.util.Usage;
|
||||
|
||||
@ -8,7 +8,7 @@ import javax.validation.constraints.Size;
|
||||
|
||||
import io.onedev.commons.utils.match.Matcher;
|
||||
import io.onedev.commons.utils.match.PathMatcher;
|
||||
import io.onedev.server.ci.job.JobService;
|
||||
import io.onedev.server.buildspec.job.JobService;
|
||||
import io.onedev.server.util.patternset.PatternSet;
|
||||
import io.onedev.server.web.editable.annotation.Editable;
|
||||
import io.onedev.server.web.editable.annotation.NameOfEmptyValue;
|
||||
|
||||
@ -12,7 +12,7 @@ import javax.annotation.Nullable;
|
||||
import javax.validation.ConstraintValidatorContext;
|
||||
import javax.validation.constraints.Size;
|
||||
|
||||
import io.onedev.server.ci.job.paramspec.ChoiceParam;
|
||||
import io.onedev.server.buildspec.job.paramspec.ChoiceParam;
|
||||
import io.onedev.server.issue.fieldspec.ChoiceField;
|
||||
import io.onedev.server.util.inputspec.InputSpec;
|
||||
import io.onedev.server.util.validation.Validatable;
|
||||
|
||||
@ -33,13 +33,16 @@ public class UrlProcessor implements MarkdownProcessor {
|
||||
public void process(Project project, Document rendered, Object context) {
|
||||
if (context instanceof BlobRenderContext && project != null) {
|
||||
BlobRenderContext blobRenderContext = (BlobRenderContext) context;
|
||||
|
||||
Repository repository = project.getRepository();
|
||||
RevCommit commit;
|
||||
try (RevWalk revWalk = new RevWalk(repository)) {
|
||||
commit = revWalk.parseCommit(repository.resolve(blobRenderContext.getBlobIdent().revision));
|
||||
} catch (IOException e) {
|
||||
throw new RuntimeException(e);
|
||||
if (blobRenderContext.getBlobIdent().revision != null) {
|
||||
try (RevWalk revWalk = new RevWalk(repository)) {
|
||||
commit = revWalk.parseCommit(repository.resolve(blobRenderContext.getBlobIdent().revision));
|
||||
} catch (IOException e) {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
} else {
|
||||
commit = null;
|
||||
}
|
||||
|
||||
new NodeTraversor(new NodeVisitor() {
|
||||
@ -62,25 +65,25 @@ public class UrlProcessor implements MarkdownProcessor {
|
||||
String directory = blobRenderContext.getDirectory();
|
||||
String referencedPath = PathUtils.resolve(directory, path);
|
||||
referencedPath = GitUtils.normalizePath(referencedPath);
|
||||
if (referencedPath != null && TreeWalk.forPath(repository, referencedPath, commit.getTree()) == null) {
|
||||
element.after("<span class='missing'>!!missing!!</span>");
|
||||
Element missingElement = element.nextElementSibling();
|
||||
BlobIdent blobIdent = blobRenderContext.getBlobIdent();
|
||||
Mode mode = blobRenderContext.getMode();
|
||||
if (mode != Mode.ADD && mode != Mode.EDIT
|
||||
&& SecurityUtils.canModify(project, blobIdent.revision, referencedPath)) {
|
||||
ProjectBlobPage.State state = new ProjectBlobPage.State();
|
||||
state.blobIdent = blobRenderContext.getBlobIdent();
|
||||
state.mode = Mode.ADD;
|
||||
state.initialNewPath = path;
|
||||
CharSequence urlToAddFile = RequestCycle.get().urlFor(ProjectBlobPage.class,
|
||||
ProjectBlobPage.paramsOf(project, state));
|
||||
String htmlToAddFile = String.format(
|
||||
"<a href='%s' title='Add this file' class='add-missing'><i class='fa fa-plus'></i></a>",
|
||||
urlToAddFile.toString());
|
||||
missingElement.after(htmlToAddFile);
|
||||
}
|
||||
if (referencedPath != null && (commit == null || TreeWalk.forPath(repository, referencedPath, commit.getTree()) == null)) {
|
||||
element.after("<span class='missing'>!!missing!!</span>");
|
||||
Element missingElement = element.nextElementSibling();
|
||||
BlobIdent blobIdent = blobRenderContext.getBlobIdent();
|
||||
Mode mode = blobRenderContext.getMode();
|
||||
if (mode != Mode.ADD && mode != Mode.EDIT
|
||||
&& SecurityUtils.canModify(project, blobIdent.revision, referencedPath)) {
|
||||
ProjectBlobPage.State state = new ProjectBlobPage.State();
|
||||
state.blobIdent = blobRenderContext.getBlobIdent();
|
||||
state.mode = Mode.ADD;
|
||||
state.initialNewPath = path;
|
||||
CharSequence urlToAddFile = RequestCycle.get().urlFor(ProjectBlobPage.class,
|
||||
ProjectBlobPage.paramsOf(project, state));
|
||||
String htmlToAddFile = String.format(
|
||||
"<a href='%s' title='Add this file' class='add-missing'><i class='fa fa-plus'></i></a>",
|
||||
urlToAddFile.toString());
|
||||
missingElement.after(htmlToAddFile);
|
||||
}
|
||||
}
|
||||
} catch (IOException e) {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
@ -97,7 +100,7 @@ public class UrlProcessor implements MarkdownProcessor {
|
||||
String basePath = blobRenderContext.getDirectory();
|
||||
String referencedPath = PathUtils.resolve(basePath, UrlUtils.trimHashAndQuery(URLDecoder.decode(url, Charsets.UTF_8.name())));
|
||||
referencedPath = GitUtils.normalizePath(referencedPath);
|
||||
if (referencedPath != null && TreeWalk.forPath(repository, referencedPath, commit.getTree()) == null) {
|
||||
if (referencedPath != null && (commit == null || TreeWalk.forPath(repository, referencedPath, commit.getTree()) == null)) {
|
||||
element.after("<span class='missing'>!!missing!!</span>");
|
||||
}
|
||||
} catch (IOException e) {
|
||||
@ -108,7 +111,6 @@ public class UrlProcessor implements MarkdownProcessor {
|
||||
}
|
||||
}
|
||||
}).traverse(rendered);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -22,7 +22,7 @@ public class NotificationReceiverValidator implements ConstraintValidator<Notifi
|
||||
return true;
|
||||
} else {
|
||||
try {
|
||||
io.onedev.server.ci.job.action.notificationreceiver.NotificationReceiver.fromString(value, null);
|
||||
io.onedev.server.buildspec.job.action.notificationreceiver.NotificationReceiver.fromString(value, null);
|
||||
return true;
|
||||
} catch (Exception e) {
|
||||
constraintContext.disableDefaultConstraintViolation();
|
||||
|
||||
@ -33,9 +33,15 @@ onedev.server.codemirror = {
|
||||
onedev.server.codemirror.setMode(cm, modeInfo);
|
||||
},
|
||||
setModeByFileName: function(cm, fileName) {
|
||||
var modeInfo = CodeMirror.findModeByFileName(fileName);
|
||||
if (modeInfo)
|
||||
onedev.server.codemirror.setMode(cm, modeInfo);
|
||||
if (fileName.endsWith(".cbl") || fileName.endsWith(".pco")) {
|
||||
onedev.server.codemirror.setModeByName(cm, "cobol");
|
||||
} else if (fileName == ".onedev-buildspec") {
|
||||
onedev.server.codemirror.setModeByName(cm, "xml");
|
||||
} else {
|
||||
var modeInfo = CodeMirror.findModeByFileName(fileName);
|
||||
if (modeInfo)
|
||||
onedev.server.codemirror.setMode(cm, modeInfo);
|
||||
}
|
||||
},
|
||||
setMode: function(cm, modeInfo) {
|
||||
// specify mode via mime does not work for gfm (github flavored markdown)
|
||||
|
||||
@ -17,12 +17,12 @@ import io.onedev.commons.codeassist.parser.Element;
|
||||
import io.onedev.commons.codeassist.parser.ParseExpect;
|
||||
import io.onedev.commons.codeassist.parser.TerminalExpect;
|
||||
import io.onedev.server.OneException;
|
||||
import io.onedev.server.ci.job.Job;
|
||||
import io.onedev.server.ci.job.JobAware;
|
||||
import io.onedev.server.ci.job.action.condition.ActionCondition;
|
||||
import io.onedev.server.ci.job.action.condition.ActionConditionLexer;
|
||||
import io.onedev.server.ci.job.action.condition.ActionConditionParser;
|
||||
import io.onedev.server.ci.job.paramspec.ParamSpec;
|
||||
import io.onedev.server.buildspec.job.Job;
|
||||
import io.onedev.server.buildspec.job.JobAware;
|
||||
import io.onedev.server.buildspec.job.action.condition.ActionCondition;
|
||||
import io.onedev.server.buildspec.job.paramspec.ParamSpec;
|
||||
import io.onedev.server.buildspec.job.action.condition.ActionConditionLexer;
|
||||
import io.onedev.server.buildspec.job.action.condition.ActionConditionParser;
|
||||
import io.onedev.server.git.GitUtils;
|
||||
import io.onedev.server.git.RefInfo;
|
||||
import io.onedev.server.model.Project;
|
||||
|
||||
@ -12,7 +12,7 @@ import io.onedev.commons.codeassist.InputSuggestion;
|
||||
import io.onedev.commons.codeassist.grammar.LexerRuleRefElementSpec;
|
||||
import io.onedev.commons.codeassist.parser.ParseExpect;
|
||||
import io.onedev.commons.codeassist.parser.TerminalExpect;
|
||||
import io.onedev.server.ci.job.action.notificationreceiver.NotificationReceiverParser;
|
||||
import io.onedev.server.buildspec.job.action.notificationreceiver.NotificationReceiverParser;
|
||||
import io.onedev.server.model.Project;
|
||||
import io.onedev.server.web.behavior.inputassist.ANTLRAssistBehavior;
|
||||
import io.onedev.server.web.util.SuggestionUtils;
|
||||
|
||||
@ -17,12 +17,12 @@ import io.onedev.commons.codeassist.parser.Element;
|
||||
import io.onedev.commons.codeassist.parser.ParseExpect;
|
||||
import io.onedev.commons.codeassist.parser.TerminalExpect;
|
||||
import io.onedev.server.OneException;
|
||||
import io.onedev.server.ci.job.Job;
|
||||
import io.onedev.server.ci.job.JobAware;
|
||||
import io.onedev.server.ci.job.paramspec.ParamSpec;
|
||||
import io.onedev.server.ci.job.retrycondition.RetryCondition;
|
||||
import io.onedev.server.ci.job.retrycondition.RetryConditionLexer;
|
||||
import io.onedev.server.ci.job.retrycondition.RetryConditionParser;
|
||||
import io.onedev.server.buildspec.job.Job;
|
||||
import io.onedev.server.buildspec.job.JobAware;
|
||||
import io.onedev.server.buildspec.job.paramspec.ParamSpec;
|
||||
import io.onedev.server.buildspec.job.retrycondition.RetryCondition;
|
||||
import io.onedev.server.buildspec.job.retrycondition.RetryConditionLexer;
|
||||
import io.onedev.server.buildspec.job.retrycondition.RetryConditionParser;
|
||||
import io.onedev.server.util.BuildConstants;
|
||||
import io.onedev.server.web.behavior.inputassist.ANTLRAssistBehavior;
|
||||
import io.onedev.server.web.util.SuggestionUtils;
|
||||
|
||||
@ -1,9 +1,12 @@
|
||||
package io.onedev.server.web.component.blob;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Iterator;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
import javax.annotation.Nullable;
|
||||
|
||||
import org.apache.wicket.Component;
|
||||
import org.apache.wicket.ajax.AjaxRequestTarget;
|
||||
import org.apache.wicket.ajax.markup.html.AjaxLink;
|
||||
@ -31,7 +34,7 @@ public abstract class BlobPicker extends Panel {
|
||||
|
||||
private final ObjectId commitId;
|
||||
|
||||
public BlobPicker(String id, ObjectId commitId) {
|
||||
public BlobPicker(String id, @Nullable ObjectId commitId) {
|
||||
super(id);
|
||||
|
||||
this.commitId = commitId;
|
||||
@ -49,7 +52,10 @@ public abstract class BlobPicker extends Panel {
|
||||
|
||||
@Override
|
||||
public Iterator<? extends BlobIdent> getRoots() {
|
||||
return getChildren(new BlobIdent(commitId.name(), null, FileMode.TYPE_TREE));
|
||||
if (commitId != null)
|
||||
return getChildren(new BlobIdent(commitId.name(), null, FileMode.TYPE_TREE));
|
||||
else
|
||||
return new ArrayList<BlobIdent>().iterator();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@ -15,9 +15,9 @@ import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
import com.google.common.collect.Sets;
|
||||
|
||||
import io.onedev.server.OneDev;
|
||||
import io.onedev.server.ci.job.log.JobLogEntry;
|
||||
import io.onedev.server.ci.job.log.LogManager;
|
||||
import io.onedev.server.ci.job.log.LogSnippet;
|
||||
import io.onedev.server.buildspec.job.log.JobLogEntry;
|
||||
import io.onedev.server.buildspec.job.log.LogManager;
|
||||
import io.onedev.server.buildspec.job.log.LogSnippet;
|
||||
import io.onedev.server.model.Build;
|
||||
import io.onedev.server.web.behavior.WebSocketObserver;
|
||||
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user